转载

Spring的 classpath 通配符加载配置文件

classpath:app-Beans.xml

说明:无通配符,必须完全匹配

classpath:App?-Beans.xml

说明:匹配一个字符,例如 App1-Beans.xml 、 App2-Beans.xml

classpath:user/*/Base-Beans.xml

说明:匹配零个或多个字符串(只针对名称,不匹配目录分隔符等),例如:user/a/Base-Beans.xml 、 user/b/Base-Beans.xml ,但是不匹配 user/Base-Beans.xml

classpath:user/**/Base-Beans.xml

说明:匹配路径中的零个或多个目录,例如:user/a/ab/abc/Base-Beans.xml,同时也能匹配 user/Base-Beans.xml

classpath:**/*-Beans.xml

说明:表示在所有的类路径中查找和加载文件名以“-Beans.xml”结尾的配置文件,但重复的文件名只加载其中一个,视加载顺序决定

classpath*:user/**/*-Beans.xml

classpath*:**/*-Beans.xml

说明:“classpath*:”表示加载多个资源文件,即使重名也会被加载,比如app1.jar中有一个config-Beans.xml,app2.jar中也有一个config-Beans.xml,这个时候,两个都会加载。

====上面是内容,下面是使用问题。

在idea中的module依赖时,有时候需要依赖的module输出源码。此时就出现问题了。每个单独的module都有各自的配置文件,在单独jar依赖时没有问题,但module源码依赖会出现配置文件被覆盖的问题。

jar依赖不会出现配置文件重名被覆盖的问题,但module依赖中的源码输出,就出覆盖问题了。

参考: http://www.cnblogs.com/taven/archive/2012/10/24/2737556.html

原文  http://fantaxy025025.iteye.com/blog/2280866
正文到此结束
Loading...