找不到“applicationContext.xml”怎么办?
初学Spring在用Resource rs=new ClassPathResource("applicationContext.xml"),出现文件找不到的问题,或者你在new ClassPathResource("F://...//applicationContext.xml"),一样会出现找不到的情况。
原因:
ClassPathResource中找不到applicationContext.xml是因为这个xml文件在建工程的时候默认放在了 WebContent/WEB-INF/下面,但是用ClassPathResource是在当前目录也就是这个java文件所在的目下进行寻找。
解决方法:
方法一:把这个xml文件移动到src目录下面就ok了。
方法二:如果用FileSystemXmlApplicationContext呢,它是根据指定的路径来进行寻找,所以要把路径写完整。现在xml路径在 src文件夹下。那就要写:
ApplicationContext ctx=new FileSystemXmlApplicationContext("src/applicationContext.xml");
这是比较直接简单的写法。对于FileSystemXmlApplicationContext也可以采用:
1.加上classpath:前缀(这个时候xml要放在当前目录也就是src下)
ApplicationContext ctx=new FileSystemXmlApplicationContext("classpath:applicationContext.xml");
2.加上file:把路径写全(用这个方法xml可以放任意地方)
ApplicationContext ctx=new ClassPathXmlApplicationContext("ApplicationContext ctx=new ClassPathXmlApplicationContext("file:F:/workspace/SpringExercis/src/applicationContext.xml");