2011-08-02 73 views
20

如何在Spring配置文件條件語句配置

內具有條件語句我的小豆子(B),其價值取決於一個屬性(一)的值。 a是根據運行環境動態設置的。

if (a) 
b="yes" 
else 
b="no" 

我如何在春季配置代碼?

+0

jeejava.com/conditional-statement-in-spring-config/傳遞 – user3470953

回答

25

正如Ryan說SpEL可以提供幫助。你應該能夠做這樣的事情在Spring XML:

<bean id="flag" class="java.lang.Boolean"> 
    <constructor-arg value="#{ systemProperties['system.propery.flag'] ?: false }" /> 
</bean> 

<bean id="bean" class="com.my.MyBean"> 
    <property name="property" value="#{ flag ? 'yes' : 'no' }"/> 
</bean> 
1

嘗試......它的工作原理..鑑於卷,地點,名稱爲屬性文件和我讀它上面這條線。

<bean id="Student" class="beans.Student"> <property name="name" value="#{ ${Roll}== 1 ? '${Location}' : '${name}' }"/> </bean>

0
下面

爲我工作。 系統屬性如Java -Dflag =真-jar project.jar

<bean id="flag" class="java.lang.Boolean"> 
    <constructor-arg value="#{ systemProperties['flag'] ?: false }" /> 
    </bean> 

    <bean id="bean" class="com.my.MyBean"> 
    <property name="property" value="#{ flag ? 'yes' : 'no' }"/> 
</bean>