web.xml中classpath:和classpath*:  有什么区别?

classpath:只会到你的class路径中查找找文件; 
classpath*:不仅包含class路径,还包括jar文件中(class路径)进行查找.

有时候会用模糊匹配的方式配置多配置文件。

但是如果配置文件是在jar包里,模糊匹配就找不到了。可以用逗号隔开的方式配置多个配置文件。

如:

[html] view plaincopy
  1. <context-param>
  2. <param-name>contextConfigLocation</param-name>
  3. <param-value>classpath*:applicationContext.xml,
  4. classpath*:app-datasource.xml,
  5. classpath*:app-memcached.xml,
  6. classpath*:app-ibatis.xml,
  7. classpath*:app-rest.xml
  8. </param-value>
  9. </context-param>

存放位置:
1:src下面
需要在web.xml中定义如下:

[html] view plaincopy
  1. <context-param>
  2. <param-name>contextConfigLocation</param-name>
  3. <param-value>classpath:applicationContext.xml</param-value>
  4. < /context-param>

2:WEB-INF下面
需要在web.xml中定义如下:

[html] view plaincopy
  1. <context-param>
  2. <param-name>contextConfigLocation</param-name>
  3. <param-value>WEB-INF/applicationContext*.xml</param-value>
  4. </context-param>

web.xml 通过contextConfigLocation配置spring 的方式 
SSI框架配置文件路径问题:

struts2的 1个+N个 路径:src+src(可配置) 名称: struts.xml + N 
spring 的 1个 路径: src 名称: applicationContext.xml
ibatis 的 1个+N个 路径: src+src(可配置) 名称: SqlMapConfig.xml + N

部署到tomcat后,src目录下的配置文件会和class文件一样,自动copy到应用的 classes目录下

spring的 配置文件在启动时,加载的是web-info目录下的applicationContext.xml, 
运行时使用的是web-info/classes目录下的applicationContext.xml。

配置web.xml使这2个路径一致:

[html] view plaincopy
  1. <context-param>
  2. <param-name>contextConfigLocation</param-name>
  3. <param-value>/WEB-INF/classes/applicationContext.xml</param-value>
  4. </context-param>

多个配置文件的加载

[html] view plaincopy
  1. <context-param>
  2. <param-name>contextConfigLocation</param-name>
  3. <param-value>
  4. classpath*:conf/spring/applicationContext_core*.xml,
  5. classpath*:conf/spring/applicationContext_dict*.xml,
  6. classpath*:conf/spring/applicationContext_hibernate.xml,
  7. classpath*:conf/spring/applicationContext_staff*.xml,
  8. classpath*:conf/spring/applicationContext_security.xml
  9. classpath*:conf/spring/applicationContext_modules*.xml
  10. classpath*:conf/spring/applicationContext_cti*.xml
  11. classpath*:conf/spring/applicationContext_apm*.xml
  12. </param-value>
  13. </context-param>

contextConfigLocation 参数定义了要装入的 Spring 配置文件。

首先与Spring相关的配置文件必须要以"applicationContext-"开头,要符合约定优于配置的思想,这样在效率上和出错率上都要好很多。 
还有最好把所有Spring配置文件都放在一个统一的目录下,如果项目大了还可以在该目录下分模块建目录。这样程序看起来不会很乱。 
在web.xml中的配置如下: 
Xml代码

[html] view plaincopy
  1. <context-param>
  2. <param-name>contextConfigLocation</param-name>
  3. <param-value>classpath*:**/applicationContext-*.xml</param-value>
  4. </context-param>

"**/"表示的是任意目录; 
"**/applicationContext-*.xml"表示任意目录下的以"applicationContext-"开头的XML文件。 
你自己可以根据需要修改。最好把所有Spring配置文件都放在一个统一的目录下,如:

<!-- Spring 的配置 -->

[html] view plaincopy
  1. <context-param>
  2. <param-name>contextConfigLocation</param-name>
  3. <param-value>classpath:/spring/applicationContext-*.xml</param-value>
  4. </context-param>

web.xml 配置 contextConfigLocation相关推荐

  1. 160329(二)、web.xml配置详解

    1.启动一个WEB项目的时候,WEB容器会去读取它的配置文件web.xml,读取<listener>和<context-param>两个结点. 2.紧急着,容创建一个Servl ...

  2. 基于注解的Spring MVC(所需jar包,web.xml配置,Spring文件配置,@Controller,@RequestMapping,@RequestParam,model填参,EL取值)

    1.添加jar 2.web.xml配置: <?xml version="1.0" encoding="UTF-8"?> <web-app ve ...

  3. 基于XML配置的Spring MVC(所需jar包,web.xml配置,处理器配置,视图解析器配置)

    1.添加jar 2.web.xml配置 <?xml version="1.0" encoding="UTF-8"?> <web-app ver ...

  4. Spring MVC的web.xml配置详解(转)

    出处http://blog.csdn.net/u010796790 1.spring 框架解决字符串编码问题:过滤器 CharacterEncodingFilter(filter-name)  2.在 ...

  5. Servlet容器中web.xml配置context-param与init-param

    Servlet容器中web.xml配置<context-param>与<init-param>的区别与作用 <context-param>的作用: web.xml的 ...

  6. JavaWeb——web.xml配置详细解读

    这篇文章主要是综合网上关于web.xml的一些介绍,希望对大家有所帮助,也欢迎大家一起讨论. ---题记 Web.xml详解: 1.web.xml加载过程(步骤) 首先简单讲一下,web.xml的加载 ...

  7. web.xml的contextConfigLocation作用及自动加载applicationContext.xml

    web.xml的contextConfigLocation作用及自动加载applicationContext.xml 转自:http://blog.csdn.net/sapphire_aling/ar ...

  8. java web工程web.xml配置详解

    转载自:http://blog.csdn.net/believejava/article/details/43229361 这篇文章主要是综合网上关于web.xml的一些介绍,希望对大家有所帮助,也欢 ...

  9. javaweb:web.xml配置详解

    Web.xml详解: 1.web.xml加载过程(步骤) 首先简单讲一下,web.xml的加载过程.当启动一个WEB项目时,容器包括(JBoss.Tomcat等)首先会读取项目web.xml配置文件里 ...

最新文章

  1. 网络流Dinic cur当前弧优化
  2. Oracle的自定义函数浅析
  3. ubuntu 16.04安装visual studio code 提示libnss3版本低:NSS = 3.26 is required
  4. 如何成为自己所在领域内前1%的顶尖人才? 凤凰科技 09-29 07:42 原标题:如何成为自己所在领域内前1%的顶尖人才? 有时你会觉得,可能你永远也实现自己的梦想。你清楚地知道自己想做什么,但有
  5. Spring——Filter过滤器注入Bean时注入失败[NULL]
  6. spring security原理
  7. html之字符数字引用
  8. 感悟:web前端工程师该如何定位
  9. 综述之我的十年本硕博生活
  10. js this指向问题,同级this指向同级,非同级this指向全局
  11. pythoon介绍、安装环境、基础知识、练习题
  12. 编程大讲坛 坛坛是佳酿--编程大讲坛:C语言核心开发技术从入门到精通
  13. 简明 Python 教程   第15章 更多Python的内容   上一页 在函数中接收元组和列表 注解...
  14. VIIRS和DMSP夜间灯光数据(1992-2020)
  15. Android 音乐APP(五)音乐通知栏、后台播放音乐
  16. 惠普HP Deskjet Ink Advantage 3540 打印机驱动
  17. 一节双曲型方程基于MATLAB的求解,双曲方程基于matlab的数值解法
  18. pytorch 定义torch类型数据_PyTorch 使用TorchText进行文本分类
  19. TCP time_wait 的存在意义
  20. Swift - iOS应用的国际化与本地化

热门文章

  1. Codeforces-462C. A Twisty Movement
  2. 23.3. 操作系统监控需求
  3. 物尽其用-让推荐系统成为你学习的助手
  4. 离线抓取域登录缓存hash(mscash)
  5. HBase 管理,性能调优
  6. 修复群集无法切换磁盘问题
  7. Tomcat下使用Log4j 接管 catalina.out 日志文件生成方式
  8. 创新工场面试题——输出螺旋矩阵
  9. 《信息处理技术员考试考前冲刺预测卷及考点解析》下午案例复习重点
  10. 开源服务器 Jenkins 曝漏洞,可用于发动 DDoS 攻击