Spring容器最基本的的接口是BeanFactory,负责配置、创建、管理Bean,称为Spring上下文。它有一个比较重要的子接口:ApplicationContext,大部分时候,我们都采用ApplicationContext实例作为Spring容器,所以这里主要讲通过ApplicationContext获取Spring容器。
ApplicationContext主要的实现类有:
- FileSystemXmlApplicationContext
- ClassPathXmlApplicationContext
- AnnotationConfigApplicationContext
- XmlWebApplicationContext
FileSystemXmlApplicationContext是从文件绝对路径加载配置文件
ClassPathXmlApplicationContext是从classpath下加载配置文件(适合于相对路径方式加载)
XmlWebApplicationContext在Web应用中使用Spring容器
AnnotationConfigApplicationContext实现基于Java的配置类加载Spring的应用上下文.避免使用application.xml进行配置
具体使用方法可参考:
http://blog.youkuaiyun.com/souichiro/article/details/6068552
http://blog.youkuaiyun.com/lzx1037922850/article/details/53694951
ApplicationContext主要额外功能:
- 默认预初始化所有的singleton Bean,可通过为
<bean>元素指定lazy-init="true"属性取消预初始化 - 继承MessageSource接口,提供国际化支持
- 资源访问,比如访问URL和文件
- 事件机制,容器事件(ApplicationEvent)和监听器(ApplicationListener)
- 同时加载多个配置文件
- 以声明式方式启动并创建Spring容器
主程序只需要一行代码
//ApplicationContext会自动预初始化容器中singleton Bean————包括调用无参数构造器
ApplicationContext ctx=new ClassPathXmlApplicationContext("beans.xml");
本文介绍了Spring容器的重要接口ApplicationContext,及其主要实现类,包括从文件路径和类路径加载配置文件的方式,以及在Web应用中的使用。此外,还强调了基于Java配置的便利性和ApplicationContext的额外功能,如预初始化singleton Bean、国际化支持、事件机制和资源访问等。
1336

被折叠的 条评论
为什么被折叠?



