我在 Spring bean 中有以下内容:
@Value("${myValue}")
private String value;
该值已正确注入。但是,该变量必须是可选的,它作为命令行参数传入(然后使用SimpleCommandLinePropertySource添加到 Spring 上下文中),并且该参数并不总是存在。
为了提供默认值,我尝试了以下两种方法:
@Value("${myValue:}")
@Value("${myValue:DEFAULT}")
但在每种情况下,即使存在实际值,冒号后的默认参数也会被注入 - 这似乎会覆盖 Spring 应该注入的内容。
指定不需要 @Value的正确方法是什么?
谢谢