如何定义春季非强制性属性?
我正在使用Spring 3和PropertyPlaceholderConfigurator。
我的属性代码如下所示:
@Configuration
public class MyProps {
@Value("${prop1}")
public String prop1;
...
}
如果我的.properties文件中没有prop1,则spring无法初始化其上下文。
问题是我如何定义此属性不是必需的?一些注释,配置?
我正在使用Spring 3和PropertyPlaceholderConfigurator。
我的属性代码如下所示:
@Configuration
public class MyProps {
@Value("${prop1}")
public String prop1;
...
}
如果我的.properties文件中没有prop1,则spring无法初始化其上下文。
问题是我如何定义此属性不是必需的?一些注释,配置?
您可以使用默认值:
@Value("${prop1:}")
public String prop1;
和 spring 将注入一个空字符串,如果未定义该属性。语法为 。${property:defaultValue}
我不确定是否可以使单个属性成为可选属性,但可以肯定的是,您可以强制属性占位符忽略未解析的属性:
<context:property-placeholder ignore-unresolvable="true" ... />