Skip to content
  • 读取配置内容
  1. @Value
  2. Environment
  3. @ConfigurationProperties
  • profile 我们在开发Spring Boot应用时,通常同一套程序会被安装到不同环境,比如:开发、测试、生产等。其中数据库地址、服务 器端口等等配置都不同,如果每次打包时,都要修改配置文件,那么非常麻烦。profile功能就是来进行动态配置切换的。
  1. profile配置方式 ⚫ 多profile文件方式 ⚫ yml多文档方式 2) profile激活方式 ⚫ 配置文件 ⚫ 虚拟机参数 ⚫ 命令行参数

Profile-小结

  1. profile是用来完成不同环境下,配置动态切换功能的。 2) profile配置方式 ⚫ 多profile文件方式:提供多个配置文件,每个代表一种环境。 • application-dev.properties/yml 开发环境 • application-test.properties/yml 测试环境 • application-pro.properties/yml 生产环境 ⚫ yml多文档方式: • 在yml中使用 --- 分隔不同配置
  2. profile激活方式 ⚫ 配置文件: 再配置文件中配置:spring.profiles.active=dev ⚫ 虚拟机参数:在VM options 指定:-Dspring.profiles.active=dev ⚫命令行参数:java–jarxxx.jar --spring.profiles.active=dev

内部配置加载顺序 Springboot程序启动时,会从以下位置加载配置文件: 1. file:./config/:当前项目下的/config目录下 2. file:./ :当前项目的根目录 3. classpath:/config/:classpath的/config目录 4. classpath:/ :classpath的根目录 加载顺序为上文的排列顺序,高优先级配置的属性会生效

外部配置加载顺序 通过官网查看外部属性加载顺序: https://docs.spring.io/spring-boot/docs/current/reference/html/boot-features-external-config.html