スプリングコンフィグレーションファイル内に条件文を入れる方法Springコンフィグレーション内の条件文
値がプロパティ(a)の値に依存するString bean(b)があります。 aは実行される環境に基づいて動的に設定されます。
if (a)
b="yes"
else
b="no"
これを春設定でどのようにコードするのですか?
スプリングコンフィグレーションファイル内に条件文を入れる方法Springコンフィグレーション内の条件文
値がプロパティ(a)の値に依存するString bean(b)があります。 aは実行される環境に基づいて動的に設定されます。
if (a)
b="yes"
else
b="no"
これを春設定でどのようにコードするのですか?
Ryanが言ったようにSpELが助けます。あなたは春の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>
Spring 3+のSpring Expression Languageを参照してください。そうでなければ、あなたはおそらくFactoryBeanかそれに類するものを書き留めているでしょう。
は名前がプロパティファイルであると私は、この行の上にそれを読んでいます、場所、ロールを考えると...それが動作する...これを試してみてください。以下
<bean id="Student" class="beans.Student"> <property name="name" value="#{ ${Roll}== 1 ? '${Location}' : '${name}' }"/> </bean>
私のために働いています。 システムプロパティの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>
jeejava.com/conditional-statement-in-spring-config/として渡さ – user3470953