是否可以将逻辑应用于Spring配置的@Import注释?我想根据某些条件导入某些子弹簧类。只会导入一个类,但根据某些条件,它可能是几个不同类中的一个。
@Configuration
@Import(getChildClass())
public Class<? extends SpringConfiguration> getChildClass { return FooSpringConfiguration }
是我试图让它发挥作用。编译器抱怨说import的值必须是类文字。
有什么想法吗?
答案 0 :(得分:1)
正如在其他StackOverflow帖子Import classes conditionally with Spring Annotation中所说的那样,@ Immort注释要求一个类数组,所以你无法实现这个功能。
如果需要根据某些逻辑创建bean,可以使用FactoryBeans使用Prototype范围实例化bean,因此每次实例化它们都可以在Factory bean方法中应用该控件。这有一些限制。
实现此目的的其他可能方法是使用配置文件(但这也有一些限制)。
希望这可以提供帮助。