Spring容器
Spring容器的作用是啥?
Spring中的对象Bean生存在Spirng容器(container)中。Spring容器负责创建对象,装配对象,配置对象并管理它们的整个生命周期,从生到死。即容纳管理对象的容器。
如何理解Spirng容器
Spring容器是Spring框架的核心,它利用DI管理构成应用的组件,并创建它们之间的关联。
Spring容器有哪些?
Spring有两种Spring容器的实现。
- Bean工厂,最简单的Spring容器实现,提供基础的DI支持。
- 应用上下文(applicationContext),在beanFactory的基础上构建,并提供了框架级应用服务,例如从属性文件中解析信息,并发布应用事件给感兴趣的事件监听者。
Bean工厂太低级,我们只看applicationContext实现。
Spring提供了多种ApplicationContext的实现,下面介绍最常用的5种:
- AnnotationConfigApplicationContext:从一个或多个java配置类中加载Spring应用上下文。
- AnnotationConfigWebApplicationContext:从一个或多个java配置类中加载Spring web应用上下文。
- FileSystemXmlapplicationContext:从文件系统下的xml文件中加载Spring应用上下文,将xml文件作为类资源
- ClassPathXmlapplicationContext:从类路径下的xml文件中加载Spring应用上下文。
- XmlWebApplicationContext:从Web应用下的一个或多个Xml文件中加载Spring应用上下文
Bean在Spring容器中的生命周期是怎样的?如何创建如何销毁的呢?
Bean在java中的生命周期很简单,创建从new开始,销毁由垃圾回收机制完成。
但Spring容器中的bean很复杂。
为什么要了解Spring容器的生命周期
Spring容器的生命周期是很重要的,我们或许可以利用Spring容器的生命周期扩展点来自定义bean的创建过程。例如,在创建时修改某个属性,自定义初始化,自定义销毁等等。
网友评论