org.springframework.core.io.supportClassPathMatchingResourcePatternResolver
org.springframework.utilClass AntPathMatcher
所有的配置官方说明请参照这两个类
在web.xml配置spring的配置文件
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>这里写路劲</param-value>
</context-param>
首先上几种写法(这个是spring的api复制的)
1. /WEB-INF/*-context.xml
2. com/mycompany/**/applicationContext.xml
3. file:C:/some/path/*-context.xml
4. classpath:com/mycompany/**/applicationContext.xml
这些路径看起来很乱有木有
这里要说明一点,不要以为路径中的匹配符号是正则表达式(开始我是这样想的),这些符号的完整定义
----------------------------------------------------------------------
? 匹配一个任意字符 aa? 可以匹配 aa1 aab 但是不能匹配aa
* 匹配零个或者多个字符 aa* 可以匹配 aa1 aab aa aaa
** 两个**不要以为是上面那个* 写两个的意思。 它的意思是匹配任意个路径 aa/**/bb 可以匹配aa/b/c/bb aa/bb
aa 和bb之间可以个任意目录
----------------------------------------------------------------------
1.会查找到WEB-INF目录下的以"-context.xml"结尾的文件 在WEB-INF下的 a-context.xml b-context.xml都会被找到
2.com/mycompany/目录下所有的applicationContext.xml都会被找到
3.file 表示会根据文件系统的路径查找 这个条会找到 c盘下的/some/path目录以"-context.xml"的文件都会被找到
4.查找classpath下的com/mycompany/包中所有子包的applicationContext.xml文件
这个东西却是搞的有点复杂了。
完了吗 ? 还没有 还有 classpath*
classpath*:applicationContext.xml classpath:applicationContext.xml
区别是神马?classpath还有classpathaa或者classpathbb 不会呀,java只有classpath,那,那个*是神马意思。。。。
好吧我告诉你
classpath*中的*并非 匹配零或者多个字符的那个* (太乱了有木有)
classpath*是一种特殊的表示方法 ,它告诉spring找配置文件的时候WEB-INF/LIB中的jar文件也要找
classpath*:applicationContext.xml会找到所有jar文件根目录的applicationContext.xml文件,当然也包括classpath中的applicationContext.xml
这里有一点要注意 classpath*如果要在jar文件的根目录查找 就不能使用上面的那种模糊匹配,比如
classpath*:app*.xml 这样只能找到classpath下的app开头*.xml结尾的配置文件 效果和classpath:app*.xml一样,jar中的会被忽略
如果想查找jar中的配置文件就把配置文件放在jar文件的根目录下级下的目录(包括下级) 例如
jar文件中springConfig/applicationContext.xml springConfig/applicationAA.xml
可以使用 classpath*:springConfig/app*.xml找到这两个配置文件,总之要找到jar文件中的配置文件,还要使用模糊匹配,配置文件就应该在jar文件根目录除外的其他任何地方,然后根据路径名称模糊匹配即可找到
分享到:
相关推荐
spring配置文件详解,Spring的applicationContext.xml文件代码:
spring配置文件详解,交你如何理解spring,熟练运用spring
spring 配置 文件
本word详细介绍了spring各种配置文件,相信对于初学spring的各位大侠是个很好的阶梯、
Spring 配置文件详解.doc Spring 配置文件详解.doc
Spring之AOP配置文件详解.txt Spring之AOP配置文件详解.txt 帮助你更快张握Java的学习!
Spring配置文件详解1
spring 配置文件详解.txt 附加详细说明,易于理解,看了就知道,csdn 好东西!
spring boot配置文件参数详解,spring boot配置文件参数详解,spring boot配置文件参数详解,spring boot配置文件参数详解,
详解Spring的配置文件. 以后再配置个ssh配置文件整合。
简单的描述了spring mvc的配置示例,不包括注解方法和示例代码
Spring是当前常用Java框架,现在Spring全家桶共能依然很全,掌握Spring常用的使用方式是很重要的。本文就是分享一下Spring配置文件的相关知识。希望对大家有所帮助。
spring配置文件是用于指导Spring工厂进行Bean生产、依赖关系注入(装配)及Bean实例分发的"图纸"。Java EE程序员必须学会并灵活应用这份"图纸"准确地表达自己的"生产意图"。Spring配置文件是一个或多个标准的XML文档...
spring用到的所有jar包,以及spring在项目中的配置文件详解
spring事务配置详解 spring事务配置详解
struts2+spring+hibernate配置文件详解 struts2+spring+hibernate配置文件详解
我们使用Spring Boot编写多个模块开发时,我们希望各个模块使用各自的配置文件,避免将整个项目的配置文件都写在一起,从而降低各个模块之间的耦合度。
关于spring的详细配置整合