web.xml 配置中classpath: 与classpath*:的区别

本文详细解析了在web.xml配置文件中,classpath与classpath*两种写法的区别。classpath仅指向WEB-INF/classes路径下的资源,而classpath*还包含了在类路径下jar文件中的资源。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

web.xml 配置中classpath: 与classpath*:的区别 - Felixyao的日志 - 网易博客 http://blog.163.com/ygplpr@126/blog/static/389691162012116102750608/

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

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

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

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

classpath 和 classpath* 区别:

classpath:只会到你的class路径中查找找文件;
classpath*:不仅包含class路径,还包括jar文件中(class路径)进行查找.
 
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

web.xml 中 classpath 写法说明  

web.xml 中 classpath 写法说明 - 骑着企鹅去北极的日志 - 网易博客 http://blog.163.com/lby67224262@126/blog/static/171415341201343093943525/

简单理解,classpath就是代表  /WEB-INF /classes/  这个路径(如果不理解该路径,就把一个web工程发布为war包,然后用winrar查看其包内路径就理解啦)

 

常用的场景:

在SSH架构中,配置Spring的上下文环境:

<!-- Spring Configures -->
    <context-param>
        <param-name>contextConfigLocation</param-name>
        <param-value>
            classpath:applicationContext.xml
        </param-value>
    </context-param>

 

里面的

classpath:applicationContext.xml  

也可以使用  /WEB-INF /classes/ applicationContext.xml  代替

 

注意:

classpath 和 classpath* 区别:

classpath:只会到你的class路径中查找找文件;
classpath*:不仅包含class路径,还包括jar文件中(class路径)进行查找 ---- 够深入的吧

转载于:https://www.cnblogs.com/ganymede/p/4205333.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值