关于javaWeb项目中的classpath的几点疑惑?

”Spring可以通过指定classpath*:与classpath:前缀加路径的方式从classpath加载文件,如bean的定义文件.classpath*:的出现是为... ”Spring可以通过指定classpath*:与classpath:前缀加路径的方式从classpath加载文件,如bean的定义文件.classpath*:的出现是为了从多个jar文件中加载相同的文件.classpath:只能加载找到的第一个文件.
比如 resource1.jar中的package 'com.test.rs' 有一个 'jarAppcontext.xml' 文件,内容如下:
<bean name="ProcessorImplA" class="com.test.spring.di.ProcessorImplA" />
resource2.jar中的package 'com.test.rs' 也有一个 'jarAppcontext.xml' 文件,内容如下:
<bean id="ProcessorImplB" class="com.test.spring.di.ProcessorImplB" />
通过使用下面的代码则可以将两个jar包中的文件都加载进来。
ApplicationContext ctx = new ClassPathXmlApplicationContext( "classpath*:com/test/rs/jarAppcontext.xml");
而如果写成下面的代码,就只能找到其中的一个xml文件(顺序取决于jar包的加载顺序)。“

上面这段话是在网上找到的,说的应该没错,但是这句话我理解不了 :”.classpath*:的出现是为了从多个jar文件中加载相同的文件.classpath:只能加载找到的第一个文件.“
多个jar文件加载相同的文件是什么意思啊,看不懂啊???
jar包不就给项目引入一些类或者资源的吗?为什么”多个jar文件中加载相同的文件“????
谁能解释一下,谢谢了!!!
展开
 我来答
老唐100
2013-02-08 · TA获得超过308个赞
知道小有建树答主
回答量:180
采纳率:0%
帮助的人:151万
展开全部
上边不是说的挺明白的吗?
A.jar里有个文件context.xml,B.jar里面也有文件context.xml,用.classpath只能加载第一次出现的context.xml,如果使用.classpath*,两个context.xml都加载,这样主要是为了重名的xml也可以被加载。
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式