web.xml的加载过程配置详解

栏目: Java · 发布时间: 7年前

内容简介:web.xml加载spring配置文件的方式主要依据该配置文件的名称和存放的位置不同来区别,目前主要有两种方式。1.如果spring配置文件的名称为applicationContext.xml,并且存放在WEB-INF/目录下,那么只需要在web.xml中加入以下代码即可该监听器会自动扫描WEB-INF/ 下的applicationContext.xrnl 文件,这种方式多数用在只有一个配置文件的情况下。

web.xml加载spring配置文件的方式主要依据该配置文件的名称和存放的位置不同来区别,目前主要有两种方式。

1.如果spring配置文件的名称为applicationContext.xml,并且存放在WEB-INF/目录下,那么只需要在web.xml中加入以下代码即可

<listener>
  <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
</listener>

该监听器会自动扫描WEB-INF/ 下的applicationContext.xrnl 文件,这种方式多数用在只有一个配置文件的情况下。

还可以使用Spring的ContextLoaderServlet的这个特殊Servlet,实现代码如下:

<!--spring3.0之后不再支持此种方式,所以推荐使用上面那种方式-->
<servlet>
  <servlet-name>context</servlet-name>
  <servlet-class>org.springframework.web.context.ContextLoaderServlet</servlet-name>
  <load-on-startup>1(比较小的数字就可以)</load-on-startup>
</servlet>

上面的两种方式都可以,不过二者有一些区别。

2.如果spring配置文件的名称是自定义的其他名称,比如为applicationContext-test.xml,也还是存放在WEB-INF/目录下,那么还需要配置contextConfigLocation这个参数,该参数是一个字符串,监听器或者Servlet会自定将该字符串按照特定的字符(比如空格、逗号、分号)解析成多个文件。需要添加如下代码:

<context-param>
  <param-name>contextConfigLocation</param-name>
  <param-value>/WEB-INF/application-testA.xml,/WEB-INF/application-testB.xml,/WEB-INF/application-testB.xml</param-value>
</context-param>

如果上面嫌得麻烦,可以使用通配符对上面进行简写如下

<context-param>
  <param-name>contextConfigLocation</param-name>
  <param-value>/WEB-INF/application*.xml</param-value>
</context-param>

然后再加入以上的监听器或者servlet代码就可以。

3.如果既没有applicationContext.xml 文件,也没有使用contextConfigLocation参数确定配置文件,或者contextConfigLocation确定的配置文件不存在。都将导致Spring 无法加载配置文件或无法正常创建ApplicationContext 实例.


以上所述就是小编给大家介绍的《web.xml的加载过程配置详解》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

Ruby on Rails社区网站开发

Ruby on Rails社区网站开发

布拉德伯纳 / 柳靖 / 2008-10 / 55.00元

《Ruby on Rails社区网站开发》全面探讨创建完整社区网站的开发过程。首先介绍开发一个内容简单的管理系统,之后逐渐添加新特性,以创建更完整的、使用Ruby on Rails 的Web 2.0 社区网站。还给出了开发和测试中的一些建议和提示,同时指导如何使网站更生动以及维护得更好。《Ruby on Rails社区网站开发》也探讨了如何与Flickr 、Google Maps 等其他平台集成,......一起来看看 《Ruby on Rails社区网站开发》 这本书的介绍吧!

随机密码生成器
随机密码生成器

多种字符组合密码

正则表达式在线测试
正则表达式在线测试

正则表达式在线测试

HEX HSV 转换工具
HEX HSV 转换工具

HEX HSV 互换工具