美文网首页
bean的生命周期详细流程

bean的生命周期详细流程

作者: 装完逼立马跑 | 来源:发表于2018-08-08 20:41 被阅读0次

    传统应用当中,bean的生命周期就很简单,使用java关键字new进行bean的实例化,然后使用该bean,一旦bean不再被使用,则有java自动进行垃圾回收。
    在spring中就相对复杂多了:
    1.spring对bean进行实例化;
    2.spring将值和bean的引用注入到bean对应的属性中;
    3.如果bean实现了BeanNameAware接口,spring将bean的ID传递给setBean-name()方法;
    4.如果bean实现了BeanFactoryAware接口,spring将调用setBeanFactory()方法,将BeanFacoty容器实例化传入;
    5.如果bean实现了ApplicationContextAware接口,spring将调用setApplicationContext()方法,将bean所在的应用上下文的引用传入进去;
    6.如果bean实现了BeanPostProcessor接口,spring将调用它们的post-ProcessBeforeInitialization()方法;
    7.如果bean实现了InitializingBean接口,spring将调用它们的after-PropertiesSet()方法。类似的,如果bean使用init-method()声明了初始化方法,该方法也会被调用;
    8.如果bean实现了BeanPostProcessor接口,spring将调用它们的post-PorcessAfterInitialization()方法;
    9.此时bean已经准备就绪了,可以被应用程序使用了,它们将一直驻留在应用上下文中,知道该应用上下文被注销;
    10.如果bean实现了DisposableBean接口,spring将调用它的destory()接口方法。同样的,如果bean使用destory-method声明了销毁方法,该方法也会被调用。


    相关文章

      网友评论

          本文标题:bean的生命周期详细流程

          本文链接:https://www.haomeiwen.com/subject/aytfbftx.html