web项目的classpath的疑惑

如下所示:
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>classpath:/applicationContext.xml</param-value>
</context-param>


是web.xml中一段加载初始化文件的的语句,但是对于classpath的路径我还不是很明白。


1.是不是包括了web-inf文件夹下所有的资源,其中有各级文件夹下的xml、properties文件以及这些文件夹下jar包中的这些文件,还是说还可能包含在inf文件夹外的文件?


2.对于包含在jar中的xml文件,为什么我们为什么可以将其加载?

是在某些容器下可以这样做还是说可以支持所有的容器。

因为我觉得不经过解压直接引用会有问题,但是项目发布的时候比并没有发生任何问题,是否在容器启动项目时会自动解压?

但是在网上看到有些文章却说无法访问其中的文件。


3.上面的classpath默认是inf文件夹,但是有没有方法使得我们可以自己去制定一个目录成成为classpath?

 

 

 

 

 

 

首先  classpath是指 WEB-INF文件夹下的classes目录

解释classes含义:
1.存放各种资源配置文件 eg.init.properties log4j.properties struts.xml
2.存放模板文件         eg.actionerror.ftl
3.存放class文件       对应的是项目开发时的src目录编译文件
总结:这是一个定位资源的入口

如果你知道开发过程中有这么一句话:惯例大于配置 那么也许你会改变你的想法

对于第二个问题 
这个涉及的是lib和classes下文件访问优先级的问题:  lib>classes
对于性能的影响应该不在这个范畴

解释完毕

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值