spring 学习02

2018-09-09  本文已影响9人  咸鱼佬

Spring 容器

在Spring 应用中,你的应用对象生存在Spring容器中,Spring 容器负责创建对象,装配他们,配置并且管理他们的生命周期。
Spring 容器可以归类为两种不同的类型:

  1. bean工厂BeanFactory,最简单的容器,提供基本的DI。
  2. 应用上下文ApplicationContext,基于BeanFactory构建,并提供应用框架级别服务。

使用应用上下文

bean的生命周期

Spring的生命周期相对于传统的Java对象复杂多,我们可以通过Spring 提供的扩展点来自定义bean的创建过程


image
  1. Spring对Bean进行实例化
  2. Spring 将值和引用注入到Bean对应的属性中
  3. 如果bean实现了BeanNameAware接口,spring将调用setBeanName方法将BeanId作为参数传入
  4. 如果bean实现了BeanFactoryAware接口,spring将调用setBeanFactory方法将beanfactory方法传入
  5. 如果bean实现了ApplicationContextAware接口,spring将调用setApplicationContext方法将applicationContext传入
  6. 如果bean实现了BeanPostProcessor接口,spring将会调用她的postProcessBeforeInitialization 方法
  7. 如果bean实现了InitializingBean接口,那么就会去条用其afterPropertiesSet方法,同理,如果bean使用了init-method声明了初识方法,该方法被调用
  8. 如果bean实现了BeanPostProcessor接口,spring将会调用她的postProcessAfterInitialization 方法
  9. 此时,bean已经准备就绪,可以被应用程序使用了,它们将一直驻留在应用上下文中,直到该应用上下文被销毁
  10. 如果bean实现了DisposableBean接口,Spring将调用它的destroy()接口方法。同样,如果bean使用destroy-method声明了销毁方法,该方法也会被调用
上一篇下一篇

猜你喜欢

热点阅读