🔥码云GVP开源项目 12k star Uniapp+ElementUI 功能强大 支持多语言、二开方便! 广告
Spring Boot使用一些宽松的规则将`Environment`属性绑定到`@ConfigurationProperties` bean,因此不需要在`Environment`属性名和bean属性名之间进行精确匹配。 这有用的常见示例包括破折号分隔的环境属性(例如,`context-path`绑定到`contextPath`)和大写环境属性(例如,`PORT`绑定到`port`)。 例如,下面的`@ConfigurationProperties`类 ~~~ @ConfigurationProperties(prefix="acme.my-project.person") public class OwnerProperties { private String firstName; public String getFirstName() { return this.firstName; } public void setFirstName(String firstName) { this.firstName = firstName; } } ~~~ 上面类的属性,下表都可以使用 **Table 24.1. relaxed binding** | 属性 | 说明 | | --- | --- | | acme.my-project.person.first-name | Kebab案例,建议在.properties和.yml文件中使用。 | | acme.myProject.person.firstName | 标准的驼峰案例语法。 | | acme.my_project.person.first_name | 下划线表示法,它是在.properties和.yml文件中可选格式 | | ACME_MYPROJECT_PERSON_FIRSTNAME | 大写格式,使用系统环境变量时建议使用。 | >注释的`prefix`值必须是kebab大小写(小写并用 `- `分隔,例如`acme.my-project.person`)。 > **Table 24.2. relaxed binding rules per property source** | 属性源 | 简单 | 集合 | | --- | --- | --- | | Properties Files | 驼峰式,小写并用-分割,下划线 | 使用`[ ]`或逗号分割 | | YAML Files | 驼峰式,小写并用-分割,下划线 | 标志的YAML 集合或逗号分割 | | Environment Variables | 大写,使用下划线分割,属性名称本身不能包含下划线 | 下划线包围的数字值,例如`MY_ACME_1_OTHER = my.acme [1] .other `| | System properties | 驼峰式,小写并用-分割,下划线 | 使用`[ ]`或逗号分割 | >建议,都使用小写和`-`分割,如`my.property-name=acme`