Spring Boot 配置属性中的连字符解析
2023-12-22 19:52:38
配置属性命名规则
? 在Spring Boot中,配置文件(如application.properties
或application.yml
)中的属性通常使用连字符(-
)来分隔单词。这是为了遵循常见的配置命名约定,使得配置文件更易于阅读。
属性解析和松散绑定
? Spring Boot支持所谓的松散绑定(Loose Binding),这意味着配置属性名称可以使用不同的格式,但最终都会映射到相同的Bean属性。例如,以下各种属性名格式都可以映射到同一个Bean属性:
outer.inner.anotherProperty
outer.inner.another-property
outer.inner.another_property
OUTER_INNER_ANOTHERPROPERTY
Spring Boot会自动处理这些不同格式的属性名,并将它们正确解析到对应的Bean属性上。
连字符的默认解析
? 当配置属性中包含连字符时,Spring Boot会自动解析这些连字符,并将其转换为相应的驼峰命名规则。这意味着,如果你有一个配置属性名为outer.inner.another-property
,Spring Boot会将其解析为outer.inner.anotherProperty
,并尝试将其值绑定到一个名为anotherProperty
的Bean属性上。
示例
假设你有一个配置类如下:
@ConfigurationProperties(prefix = "outer.inner")
public class MyProperties {
private String anotherProperty;
// Getter and setter methods
public String getAnotherProperty() {
return anotherProperty;
}
public void setAnotherProperty(String anotherProperty) {
this.anotherProperty = anotherProperty;
}
}
在application.properties
中,你可以这样配置:
outer.inner.another-property=SomeValue
Spring Boot将会自动将another-property
的值绑定到MyProperties
类的anotherProperty
属性上。这个过程是自动的,无需进行额外的配置或注解。
文章来源:https://blog.csdn.net/u014745465/article/details/135159084
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!