SpringBoot + application.properties

1.多个同名配置文件 application.properties 读取顺序

  • config/application.properties(项目根目录中config目录下)
  • application.properties(项目根目录下)
  • resources/config/application.properties(项目resources目录中config目录下)
  • resources/application.properties(项目的resources目录下)

优先级由高到底,高优先级的配置会覆盖低优先级的配置。

Spring Boot 会从这四个位置全部加载主配置文件,就算高优先级的目录下已经有了配置文件,低优先级的目录下的配置文件也会加载,也就是互补配置

2.运行war/jar包时指定配置文件位置

默认加载和war包同级目录的application.properties

nohup java -jar  /home/testweb.war 

指定其它位置的配置文件

nohup java -jar -Dspring.config.location=/home/application.properties /home/testweb.war

 

3.多个环境多个配置文件application.properties

1.创建默认的配置文件 和 不同环境配置文件application

  • application.properties
  • application-dev.properties
  • application-uat.properties
  • application-prd.properties

2.在默认配置文件application.properties中指定运行环境

spring.profiles.active=dev

3.运行时指定配置文件

3.1.在eclipse等编译器中运行时,会加载application.properties中指定的运行环境即dev

3.2 通过spring-boot的maven插件spring-boot-maven-plugin方式启动

mvn spring-boot:run -Dspring-boot.run.profiles=uat

3.3.通过可执行jar/war包方式启动
打包

mvn clean package

运行 jar 的时候指定 prd

java -jar xxx.jar --spring.profiles.active=prd

如果运行时没有指定,就默认用application.properties中指定的运行环境dev

java -jar xxx.jar

 

4.@Profile注解

@Profile注解可以用在方法或者类上,用来指定哪个环境时执行

posted on 2022-08-30 14:21  dreamstar  阅读(141)  评论(0编辑  收藏  举报