首页>>后端>>Spring->bean生命周期面试简单回答(bean的生命周期面试题)

bean生命周期面试简单回答(bean的生命周期面试题)

时间:2023-12-02 本站 点击:0

bean 实例的生命周期是什么?

bean 实例的生命周期如下:

为了演示spring的生命周期,首先必须要加入spring的相关包。

新建一个SpringBoy类 实现BeanNameAware,      BeanFactoryAware,      InitializingBean,      DisposableBean

要注意加入相关的包。新建一个processor类,用于处理bean,叫作bean处理器,在xml中作如下配置:bean class="zpx.life.Processor"/

分别实现它们的方法。并在方法中加入必须的信息,以便后面理解与观察。

在配置文件中配置springboy。指定初使化方法与销毁方法。

新建一个测试类,并指定要加载的xml文件。

运行测试类,得到运行结果如下。

bean的生命周期

Bean的生命周期指的是从一个普通的Java类变成Bean的过程。

对prototype bean来说,当用户getBean获得prototype bean的实例后,IOC容器就不再对当前实例进行管理,而是把管理权交由用户,此后再getBean生成的是新的实例。

常用接口说明:

1、BeanNameAware该接口只有一个方法setBeanName(String name),用来获取bean的 id或者name。

2、BeanFactoryAware该接口只有一个方法setBeanFactory(BeanFactory beanFactory),用来获取 当前环境中的BeanFactory。

3、ApplicationContextAware该接口只有一个方法setApplicationContext(ApplicationContext applicationContext),用来获取,当前环境中的ApplicationContext获取到IOC容器之后,可以对beans进行修改等操作。

EJB的简答题:请简要说明会话bean的生命周期。

客户会话(Client Session)的持续期决定了使用中的会话Bean的存活期,会话Bean仅仅是内存对象,一旦其生存的周边环境遭到破坏,会话Bean也将不复存在。会话Bean实例并不能够在多客户间共享,而且它不表示数据库中的数据。

粗略地看,它同会话(Session)或调用其客户的生命周期类似,供参考

spring中bean的生命周期是怎么样的

spring中bean完整的生命周期:

1,实例化(当我们加载beans.xml文件)实例化到内存。证明:它会调用bean里面的无参构造。

2,设置属性值(调用set方法设置属性)。

3,如果实现了BeanNameAware则调用BeanNameAware接口的setbeanFatroy()方法,获取Bean的id

4,如果实现了BaneFactoryAware则可以获取BeanFactory。,

5,如果实现了ApplicationAware则可以获取ApplicationAware。

6,如果bean和一个后置处理器关联(实现BeanPostProcessor接口),则会自动去调用 postProcessBeforeInitialization

7,如果实现了InitializingBean则会调用afterPropertiesSet方法。

8,如果在配置了bean init-method="init" /就可以在bean中定义自己的初始化方法。

9,如果bean和一个后置处理器关联(实现BeanPostProcessor接口),则会自动去调用 postProcessAfterInitialization

10,使用我们的bean。

11,容器关闭。

12,可以通过实现DisposableBean接口来调用destroy()的销毁方法。

13,可以在配置中,bean destroy-method="destroy",在bean中写销毁方法。

bean的生命周期是什么?

Bean的生命周期是一个很复杂的执行过程,是利用Spring提供的方法定制Bean的创建过程,当一个 Bean被加载到Spring容器时,它就具有了生命,而Spring容器在保证一个Bean能够使用之前,会进行很多工作。

Bean的生命周期主要由容器进行管理,我们可以自定义bean的初始化和销毁方法,容器在bean进行到生命周期的特定时间点,来调用自定义的初始化和销毁方法。

Spring Bean的生命周期只有四个阶段。把这四个阶段和每个阶段对应的扩展点糅合在一起虽然没有问题,但是这样非常凌乱,难以记忆。要彻底搞清楚Spring的生命周期,首先要把这四个阶段牢牢记住。实例化和属性赋值对应构造方法和setter方法的注入,初始化和销毁是用户能自定义扩展的两个阶段。

Bean的生命周期演示注意事项:

一个简单的Spring Bean,调用Bean自身的方法和Bean级生命周期接口方法,为了方便演示,它实现了BeanNameAware、BeanFactoryAware、InitializingBean和DiposableBean这4个接口,同时有2个方法,对应配置文件中bean的init-method和destroy-method。

BeanPostProcessor接口包括2个方法postProcessAfterInitialization和postProcessBeforeInitialization,这两个方法的第一个参数都是要处理的Bean对象,第二个参数都是Bean的name。返回值也都是要处理的Bean对象。这里要注意。


本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:/Spring/10006.html