配置管理与多环境 Profile 规范
# 配置管理与多环境 Profile 规范
# 配置文件组织
- 使用
application.yml作为通用基础配置 - 使用
application-dev.yml、application-test.yml、application-prod.yml表示不同环境配置 - 环境配置文件中只覆盖差异配置,不重复基础配置
# Profile 使用
- 通过
spring.profiles.active指定当前激活的环境 - 本地开发可以通过 JVM 参数或本地配置文件覆盖激活的 profile
- 不在代码中硬编码 profile 名称
# 配置项命名与分组
- 使用以系统或业务域为前缀的分组方式,例如:
user:
service:
base-url: https://user.example.com
1
2
3
2
3
- 避免在配置项中直接使用拼音缩写
- 对相同业务含义的配置保持一致命名
# 配置绑定规范
- 使用
@ConfigurationProperties进行批量配置绑定 - 避免在业务代码中大量使用
@Value
@ConfigurationProperties(prefix = "user.service")
public class UserServiceProperties {
private String baseUrl;
}
1
2
3
4
2
3
4
# 敏感配置管理
- 数据库密码、密钥等敏感信息不提交到代码仓库
- 使用环境变量、密钥管理服务或专用配置中心管理敏感配置
- 本地开发使用单独的本地配置文件并加入忽略列表