我试图用属性填充Custom类。以下是我的自定义属性类:
@Configuration
@ConfigurationProperties(prefix = "foo.bar")
public class CustomProperties{
private String PROPERTY_ONE;
private String propertyTwo;
//setters
//getters
}
和我在application.properties
中的属性是:
foo.bar.PROPERTY_ONE=some text
foo.bar.PROPERTY_TWO=some other text
当我尝试使用CustomProperties
中的值时,这就是我得到的:
customProperties.getPROPERTY_ONE() = null
customProperties.getPopertyTwo() = some other text
所以我观察到,如果我的变量名中带有下划线(_),则不会填充属性值。
有什么方法可以获取带有下划线的变量的值?
答案 0 :(得分:1)
是的,有可能100%获得您的配置值。
所有关于外壳!在CustomProperties
内,只需命名您的第一个属性propertyOne
...并适当地重构您的吸气剂/设置剂...您会很高兴!
当将配置字段转换为配置类/属性时,Spring的骆驼外壳将继续运行。因此,请遵循与在配置文件中找到的属性名称等效的驼峰式大小写,而不是匹配属性的大小写。
示例:PROPERTY_ONE
转换为propertyOne