2016-10-07 106 views
0

我有要求,動態地創建豆,我想要做類似下面動態創建豆

CONTEXT1在外部文件系統

<bean id="env" class="java.lang.String"> 
     <constructor-arg value="dev"/> 
</bean> 
<import resource="classpath:context2/>" 

上下文2在類路徑如下:

<bean id="#{env}_config" value="some value here"/> 

在java當我嘗試通過context1應用程序上下文引用bean dev_config時,它給出了dev_config bean未找到的異常。我怎樣才能做到這一點?

回答

0

你需要添加上下文命名空間(必須有彈簧context.jar),並指定掃描屬性,並指定要掃描新豆

<context:component-scan base-package="{quulified name for your package}"> 
</context:component-scan> 

每個類的包要生成一個bean因爲需要用@Component註解

 @Component 
     public class MyClass 
+0

這不會解決我的問題。如果有人在context1中修改了應用程序上下文並將env設置爲uat,那麼java代碼應該能夠在應用程序上下文中找到uat_config bean而不做任何更改。 –