2016-10-19 53 views
0

是否可以將邏輯應用於Spring配置的@Import註解?我想根據某些條件導入某些孩子的春季班。只會導入一個類,但根據某些條件,它可能是幾個不同的類之一。將邏輯應用於Spring @Import註釋

@Configuration 
@Import(getChildClass()) 

public Class<? extends SpringConfiguration> getChildClass { return FooSpringConfiguration } 

是我試圖讓它工作。編譯器抱怨說,導入的值必須是類文字。

有什麼想法?

+0

哪種情況?屬性值? – Pau

+0

是的,屬性值。 – user3722194

回答

1

正如在這個其他的StackOverflow後Import classes conditionally with Spring Annotation所說的@Import註釋要求一個類數組,所以你不能實現這個功能。

如果您需要基於某種邏輯創建bean,則可以使用FactoryBeans以Prototype作用域實例化bean,因此每次它們被實例化時都可以在Factory bean方法中應用該控件。這有一些限制。

其他可能的實現方式是使用配置文件(但這也有一些限制)。

希望這可以幫助。

+0

謝謝,我會看看這些選項。 – user3722194