Spring配置中的条件语句

bro*_*oun 20 spring

如何在spring配置文件中包含条件语句

我有String bean(b),其值取决于属性(a)的值.a根据其运行的环境动态设置.

if (a)
 b="yes"
else
 b="no"
Run Code Online (Sandbox Code Playgroud)

我如何在spring配置中编码?

den*_*nko 28

正如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>
Run Code Online (Sandbox Code Playgroud)