Sle*_*led 15 java spring classpath
我工作的一些Spring XML配置文件,有时他们使用"classpath:/datasource.xml",有时"classpath:datasource.xml".这两者之间是否存在差异,或者是主要的/可选/隐含/冗余?
mur*_*uga 18
我认为这两者之间没有任何区别.您将看到的最大区别是相对路径和类路径位置上的*
以下是Spring Resources的摘录,请参阅第4.7.2.2节
类路径*:
"classpath*:"前缀也可以与位置路径的其余部分中的PathMatcher模式组合,例如"classpath*:META-INF/* - beans.xml".在这种情况下,解析策略非常简单:在最后一个非通配符路径段上使用ClassLoader.getResources()调用来获取类加载器层次结构中的所有匹配资源,然后关闭每个资源相同的PathMatcher解析策略上面描述的用于通配符子路径.
这意味着像"classpath*:*.xml"这样的模式不会从jar文件的根目录中检索文件,而只能从扩展目录的根目录中检索文件.这源于JDK的ClassLoader.getResources()方法中的限制,该方法仅返回传入的空字符串的文件系统位置(指示搜索的潜在根).
| 归档时间: |
|
| 查看次数: |
17381 次 |
| 最近记录: |