sping 配置文件的 路径 classpath

昨天晚上开始到现在一直纠结于classpath路径配置。  web.xml内,相关路径配置一直出问题,看了好多资料终于理出头绪了。


首先,web.xml文件内配置的路径是指  编译 后的文件路径,不是工程文件内代码的位置,比如 src/main/resource 下的config文件夹内xml文件,事实上发布时候用的不是这个文件,而是build后生成的文件,一般工程属性内,可以看到build path ,  src/main/resource   src/main/j'ava 等都是默认打包到  target/classes内的。所以我们xml配置文件里要写的路径就是build后编译到classes文件夹下的路径。

target/classes也就是classpath所指向的路径。    当你执行 tomcat:run后就可以去查看以下target文件夹下的classes文件夹就会比较清楚了。


对此,classpath  可以直接理解为src/main/resource或者 src/main/java的根目录,因为两者都是默认打包进去的,然后写上子文件夹就行。对于根目录下的文件,切记!!classpath:冒号后面不要有空格!!!!不然死活找不到文件的,瞎搞了一个小时才发现。。。。


总结:

1 wen.xml等配置文件,需要的是编译 发布 后的路径(想想也是,发布的是war包,而不是你的工程源代码,所以build后xml等资源文件都会copy到发布的文件夹内去),所以不要纠结与项目工程结构,而是要关注buildpath内的配置

2 eclipse 建立的maven 项目,src/main/resource   src/main/java 已经默认build到  target/classes内了,所以项目build后直接去文件夹下就能找到文件,没有的话肯定配置有问题

3 比如 src/main/resource 下有config文件夹,里面有 applicationContext.xml。   默认发布到target/classes内,所以web.xml的上下文配置文件路径只要写 classpath:config/applicationContext.xml 就可以。    针对直接放在src/main/resource根目录下的文件,千万注意classpath:后不要有空格。


暂时写到这边,以后继续补充

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值