我的项目结构如下:
src/main/java -> contains java classes
src/main/resources/spring/context/application-context.xml
src/test/java -> contains J-unit test
我想使用@ContextConfiguration批注来加载我的application-context.xml
如何加载此文件以及如何确保加载所有bean? 我尝试使用classpath和file。但没有什么对我有用。 我很困惑何时使用classpath和文件。有人请帮助我。
提前致谢。
答案 0 :(得分:0)
@ContextConfiguration("classpath:/spring/context/application-context.xml")
应该有用。
在传统的Maven项目布局中,src/main/resources
包含类路径资源,因此您应该使用classpath:
或根本不使用前缀,因为在这种情况下classpath:
应该是默认值。
如果它仍然无法正常工作,那么您的项目配置可能出现问题,src/main/resources
中的文件不会出现在类路径中。
如果上下文成功加载,其中的所有bean也应加载,否则上下文将无法加载。
答案 1 :(得分:0)
尝试:
ApplicationContext APPLICATION_CONTEXT = new ClassPathXmlApplicationContext("/spring/context/application-context.xml");
如果不起作用,请尝试将application-context.xml
直接放在src/main/resources
中,然后加载
ApplicationContext APPLICATION_CONTEXT = new ClassPathXmlApplicationContext("application-context.xml");