我必须在Spring的配置类中有条件地导入类。因此,有3个带有@Configuration注释的配置类:
@Configuration
public SubClass1 {
...
}
@Configuration
public SubClass2 {
...
}
@Configuration
// something like this: @Import(if (flag) 'SubClass1.class' else 'SubClass2.class')
public MainClass1 {
...
}可以通过@import注解有条件地导入类吗?或者我必须导入所有的类?
发布于 2014-04-21 15:59:16
根据javadoc,@Import注释的value元素必须是Class对象的数组。
value
public abstract Class<?>[] value
The @Configuration, ImportSelector
and/or ImportBeanDefinitionRegistrar classes to import.因此,您不能使用@Import注释创建SpEL语句来有条件地导入资源。
最接近有条件导入资源的方法是使用Profiles。
https://stackoverflow.com/questions/23193243
复制相似问题