Spring SpEL - 仅当值不为null时才设置属性

时间:2015-11-26 16:32:07

标签: java spring spring-el

我使用Spring并且只想在传递的值不为null时才设置属性?

我试过这个例子,但它没有用。 我想只在它不为null时添加属性,否则不添加它。 我不想添加默认值。 谢谢你的帮助

<util:properties id="mailProperties" location="classpath:mail.properties"/>
  <property name="javaMailProperties">
        <props>
            <prop key="mail.smtp.starttls.enable">#{mailProperties['mail.smtp.starttls.enable']:''}</prop>             
           </props>
    </property>

2 个答案:

答案 0 :(得分:1)

#{mailProperties['mail.smtp.starttls.enable']==null ? false: mailProperties['mail.smtp.starttls.enable']}

这是一个示例要设置默认值:如果value为null,我将其设置为false,否则我将其设置为其值。

答案 1 :(得分:0)

我相信你想要这样的东西

${mail.smtp.starttls.enable:defaultValue}

了解更多详情: Is there a way to specify a default property value in Spring XML?

https://jira.spring.io/browse/SPR-4785