以前学习Spring的时候没有遇到过的知识点:
Spring 3.0 支持基于注解的配置方式,主要功能来自于Spring的一个名为JavaConfig的子项目,目前JavaConfig已经升级为Spring 核心框架的一部分。一个标注@Configuration的POJO即可提供Spring所需的Bean配置信息:
和基于XML文件配置方式相比,基于类注解的配置方式可以很容易的让开发者控制Bean的初始化过程,比基于XML配置更加灵活。Spring为基于类注解的的配置提供了一个专门的ApplicationCOntex实现类:
AnnotationConfigApplicationContext。来看一个如花使用AnnotationConfigApplicationContext 启动Spring容器的实例:
WebApplicationContext 的初始化方式和BeanFactory、ApplicationContext的初始化方式有所区别,以为WebApplicationContext需要ServletContext实例,也就是说他必须在拥有Web荣请求的前提下才能完成启动的工作。Spring 分别提供了用于启动WebApplicationContext的Servlet和Web容器的监听器:
orgspringframework.web.context.COntextLoaderServlet
org.springframeword.web.context.ContextLoaderListener
两种的内部都实现了启动WebApplicationContext实例的逻辑,用户只要根据Web容器的具体情况选择两种之一,并在web.xml中完成配置就可以了。
下面介绍两种启动Spring Web 应用上下文的方式。
1.ContextLoaderListener方式:
ContextLoaderListener通过Web容器上下文参数contextConfigLocation获取Spring配置文件的位置。用户可以指定多个配置文件,用逗号、空格、或者分好分割都可以。
2、在不支持容器监听器的低版本的web容器中,可以采用ContextLoaderServlet来完成相同的工作: