是否可以将 null 设置为春季@Value的默认值?

2022-08-31 07:53:35

我目前正在使用@Value Spring 3.1.x注释,如下所示:

@Value("${stuff.value:}")
private String value;

如果属性不存在,这会将空字符串放入变量中。我希望将null作为默认值,而不是空字符串。当然,我也想避免在未设置属性 stuff.value 时出错。


答案 1

这真的很旧,但你现在可以使用Spring EL,例如

@Value("${stuff.value:#{null}}")

请参阅此问题


答案 2

感谢@vorburger:

@Value("${email.protocol:#{null}}")
String protocol;

将字符串值设置为 null,而无需任何其他配置。


推荐