关于maven管理下的spring工程路径的问题

来源:互联网 发布:淘宝店铺怎么写标题 编辑:程序博客网 时间:2024/05/16 07:02

暂时还不明白究竟是maven的原因还是spring的原因,先留个坑,回头来看。
重点应该还是理解classpath,就目前所看到的,spring读取的classpath应该是编译后WEB-INF/classes/目录,改目录下最后形成的样子差不多是这样
classes下的目录

对于maven工程而言,src/main/java和src/main/resources编译后都会以该目录为根目录,spring读取该目录下的配置文件的时候不是用的常规的java.io去读取,需要用spring自带的上下文去读取,比如以下代码:
ApplicationContext factory = new ClassPathXmlApplicationContext("applicationContext.xml");

spring以该目录为classpath根目录,读取该目录下的文件可以直接写文件名。

而java.io方法读取文件的时候是以项目的根目录来读取的,两者并不一样。

所以在applicationContext.xml中引用你放置在src/main/resources目录下的配置文件的时候,只需要直接写文件名即可,而若是用java.io去读取时,需要从项目根目录读起,比如src/main/resources/db.properties。

当然如果使用了spring,一般是希望通过注入的方式来读取配置文件的,这里只是我绕了弯弯,记录一下。

另外,properties文件中写路径的时候不支持’\’,只支持’/’
比如‘D:/upload’就是对的,而‘D:\upload’就会报错

0 0