2010-11-01 12 views
2

我們有一套常見的spring應用程序上下文配置文件。根據部署(我們部署一個模塊或多個模塊),bean注入類將會改變,例如,如果類別不可用,則忽略spring bean injection

<bean id="tagService" class="com.ekaplus.service.tag.TagService" > 

    <property name="mdmTagService" ref="mdmTagService" /> 

     <property name="physicalTagService" ref="physicalTagService" /> 
    </bean> 

physcialTagService bean將在物理模塊部署時可用,否則它將不可用。我不想更改每個部署的通用配置。有沒有什麼方法可以在彈簧中忽略某些bean注入,如果沒有可用的類。

回答

1

那麼,如果你只是通過名稱或類型使用自動裝配,春天不會自動裝配任何它找不到:

<bean class="foo.bar.Phleem" autowire="byType" /> 
1

您還可以通過使用「抽象」使用父子實施,即

<bean id="tagServiceParent" class="com.ekaplus.service.tag.TagService" abstract="true"> 
<property name="implementedTagService" ref="defaultTagService" /> 
..other common properties here... 
</bean> 

<bean id="tagService" parent="tagServiceParent"> 
<property name="implementedTagService" ref="mdmTagService" /> 
</bean> 

但我不知道你是如何執行,所以它可能不適合你的需要。

相關問題