-
JavaEE Bean生命周期
发布:51Code 时间: 2017-04-26 10:01
-
一个Bean从创建到销毁,如果是用BeanFactory来生成,管理Bean的话,会经历几个执行阶段,也就是说它的生命周期是怎样的。首先我们来看一张图: 在spring bean生命周期执行的过程如下: 1...
-
一个Bean从创建到销毁,如果是用BeanFactory来生成,管理Bean的话,会经历几个执行阶段,也就是说它的生命周期是怎样的。首先我们来看一张图:
在spring bean生命周期执行的过程如下:
1)spring对bean进行实例化,默认bean是单例
2)spring对bean进行依赖注入
3)如果bean实现了BeanNameAware接口,spring将bean的id传给setBeanName()方法
4)如果bean实现了BeanFactoryAware接口,spring将调用setBeanFactory方法,将BeanFactory实例传进来
5)如果bean实现了ApplicationContextAware()接口,spring将调用setApplicationContext()方法将设置应用上下文对象的引用
6) 如果bean实现了BeanPostProcessor接口,spring将调用它的postProcessBeforeInitialization接口方法
7) 如果bean实现了InitializingBean接口,spring将调用它们的afterPropertiesSet接口方法
8)如果bean使用了init-method属性声明了初始化方法,该方法会被调用
9)如果bean实现了BeanPostProcessor接口,spring将调用它们的postProcessAfterInitialization接口方法
10)此时bean已经准备就绪,可以被应用程序使用了,他们将一直驻留在应用上下文中,直到该应用上下文被销毁
11)若bean实现了DisposableBean接口,spring将调用它的distroy()接口方法
12)如果bean使用了destroy-method属性声明了销毁方法,则该方法被调用了解51Code- Java 性能优化的 45 个细节 04月02日
- 10年Java老鸟忠告:技术人这4个错别再 04月02日
- 从华为的P40发布会看基于HTML5的web前端 03月27日
- Spring Boot 注解大全,真是太全了! 01月21日
- 代码对比工具,我就用这6个 01月19日
- 了解java的这些功能可以让你少走很多 12月10日
- JavaEE技术:MyBatis Provider之@SelectProvi 08月15日
- 跟小博老师一起学Servlet-Servlet生命周 07月21日
- Java技术-JavaEE初识Hibernate II 07月19日
- Java技术-JavaEE初识HibernateⅠ 07月19日
- Java技术:JavaEE Hibernate HQL条件查询 07月13日
- Java技术:JavaEE Hibernate HQL对象查询 07月13日
- JavaEE技术:MyBatis Mapper TypeHandler 07月06日
- 博为峰成立十五周年记02月15日
- 博为峰51Code推出“ACE计划”12月12日
- 博为峰51Code“全栈Java工程师”课程再03月01日
