zoukankan      html  css  js  c++  java
  • bean的生命周期

    • 在传统的Java应用中,bean的生命周期很简单。使用Java关键字new进行bean实例化,然后该bean就可以使用了。一旦该bean不再被使用,则由Java自动进行垃圾回收。
    • 正确理解Spring bean的生命周期非常重要,因为你或许要利用Spring提供的扩展点来自定义bean的创建过程。
    • 下图展示了bean装载到Spring应用上下文中的一个典型的生命周期过程。
    • bean在Spring容器中从创建到销毁经历了若干阶段,每一阶段都可以针对Spring如何管理bean进行个性化定制
    正如你所见,在bean准备就绪之前,bean工厂执行了若干启动步骤。
    • 1、Spring对bean进行实例化;
    • 2、Spring将值和bean的引用注入到bean对应的属性中;
    • 3、如果bean实现了BeanNameAware接口,Spring将bean的ID传递给setBeanName()方法;
    • 4、如果bean实现了BeanFactoryAware接口,Spring将调用setBeanFactory()方法,将BeanFactory容器实例传入;
    • 5、如果bean实现了ApplicationContextAware接口,Spring将调用setApplicationContext()方法,将bean所在的应用上下文的引用传入进来;
    • 6、如果bean实现了BeanPostProcessor接口,Spring将调用它们的afterProcessBeforeInitialization()方法;
    • 7、如果bean实现了InitializingBean接口,Spring将调用它们的afterPropertiesSet()方法。类似地,如果bean使用init-method声明了初始化方法,该方法也会被调用;
    • 8、如果bean实现了BeanPostProcessor接口,Spring将调用它们的postProcessAfterInitialization()方法;
    • 9、此时,bean已经准备就绪,可以被应用程序使用了,它们将一直驻留在应用上下文中,直到该应用上下文被销毁;
    • 10、如果bean实现了DisposableBean接口,Spring将调用它的destroy()接口方法。同样,如果bean使用destroy-method声明了销毁方法,该方法也会被调用。
  • 相关阅读:
    Azure 虚拟机安全加固整理
    AzureARM 使用 powershell 扩容系统磁盘大小
    Azure Linux 云主机使用Root超级用户登录
    Open edX 配置 O365 SMTP
    powershell 根据错误GUID查寻错误详情
    azure 创建redhat镜像帮助
    Azure Powershell blob中指定的vhd创建虚拟机
    Azure Powershell 获取可用镜像 PublisherName,Offer,Skus,Version
    Power BI 连接到 Azure 账单,自动生成报表,可刷新
    Azure powershell 获取 vmSize 可用列表的命令
  • 原文地址:https://www.cnblogs.com/sanjun/p/9966155.html
Copyright © 2011-2022 走看看