ZKX's LAB

Spring生命周期中那些Bean级容器级生命周期到底都有什么用 bean的生命周期有哪些

2021-04-26知识4

Spring中Bean的生命周期是怎样的? 对于普通的Java对象,当new的时候创建对象,当它没有任何引用的时候被垃圾回收机制回收。而由Spring IoC…

spring中bean的生命周期是怎么样的 1.Spring对Bean进行实例化(相当于程序中的new Xx())。2.Spring将值和Bean的引用注入进Bean对应的属性中3.如果Bean实现了BeanNameAware接口,Spring将Bean的ID传递给setBeanName()方法。(实现BeanNameAware清主要是为了通过Bean的引用来获得Bean的ID,一般业务中是很少有用到Bean的ID的)。4.如果Bean实现了BeanFactoryAware接口,Spring将调用setBeanDactory(BeanFactory bf)方法并把BeanFactory容器实例作为参数传入。(实现BeanFactoryAware 主要目的是为了获取Spring容器,如Bean通过Spring容器发布事件等)。在spring2.0之前bean只有2种作用域即:singleton(单例)、non-singleton(也称prototype),Spring2.0以后,增加了session、request、global session三种专用于Web应用程序上下文的Bean。因此,默认情况下Spring2.0现在有五种类型的Bean.当一个bean的作用域设置为singleton,那么Spring IOC容器中只会存在一个共享的bean实例,并且所有对bean的请求,只要id与该bean定义相匹配,则只会返回bean的同一实例。换言之,当把一个bean定义设置为singleton作用域时,Spring IOC容器只会创建该bean定义的唯一实例。

bean 实例的生命周期是什么? bean 实例的生命周期如下:为了演示spring的生命周期,首先必须要加入spring的相关包。新建一个SpringBoy类 实现BeanNameAware,BeanFactoryAware,InitializingBean,DisposableBean要注意加入相关的包。新建一个processor类,用于处理bean,叫作bean处理器,在xml中作如下配置:分别实现它们的方法。并在方法中加入必须的信息,以便后面理解与观察。在配置文件中配置springboy。指定初使化方法与销毁方法。新建一个测试类,并指定要加载的xml文件。运行测试类,得到运行结果如下。

随机阅读

qrcode
访问手机版