我正在使用SpringJUnit4编写集成测试。我有疑问如何在@ContextConfiguration中同时使用基于XML的配置和基于Java的配置。据我所知,我无法做到,但也许存在后门? 提前谢谢!
答案 0 :(得分:10)
您可以在测试类中创建静态内部@Configuration
类,并在类上使用@ContextConfiguration
注释,而不使用任何参数。如下文所述,如果没有将XML位置或配置类传递给注释,Spring将自动查找静态内部@Configuration
类。
然后,您可以使用@Import
和@ImportResource
注释导入XML配置和Java配置类。所以你的Spring测试的基类看起来像这样:
@ContextConfiguration
@RunWith(SpringJUnit4ClassRunner.class)
public class BaseSpringTest {
@Configuration
@Import(BaseConfig.class)
@ImportResource({ "classpath:applicationContext-hibernate.xml" })
public static class ContextConfig {}
}
<强>来源强>
答案 1 :(得分:0)
在@Configuration
类上使用@ImportResource
导入基于XML的配置。