当我们使用以下创建语句调用xml文件时
ApplicationContext context = new ClassPathXmlApplicationContext("XXX.xml");
可能会出现以下报错语句:class path resource [XXX.xml] cannot be opened because it does not exist.
这种spring报错表示没有找到你所需要xml类。
如果遇到此类问题,我们需要注意的是,当我们在运行程序的时候,运行的不是.java文件,而是.class文件。
如果你将xml文件放在Java文件夹中,你会发现你在经编译后的classes文件夹下找不到你的xml文件,而由于程序运行时所取的资源就是来自于classes文件夹中经编译后的文件,自然就找不到你所需的xml文件了,所以就会报错。
那么如何将xml文件同步到classes文件夹呢,只需要将xml文件放到resources文件夹(需将其标记为Resources Root)中即可,重新编译后,IDE就会自动将其放到classes文件夹中。
然后使用以下代码调用xml文件
ApplicationContext context = new ClassPathXmlApplicationContext("classpath:XXX.xml");
报错即可解决