(四)Spring Boot—profile(多环境的配置)

xiaoxiao2021-02-28  42

多Profile文件

我们在主配置文件编写的时候,文件名可以是 application-{profile}.properties/yml

默认使用application.properties的配置;

①properties文件的多环境支持(yml文件与此相同)

    application.properties

server.port=8080 spring.profiles.active=pro //此处为pro时 打包后启动jar包 默认就是pro配置(除非指定环境启动 java -jar ***.jar --spring.profiles.test)

    application-dev.properties

server.port=8081

    application-test.properties

server.port=8082

    application-forecast.properties

server.port=8083

    application-pro.properties

server.port=8084

②yml单文件多文档块方式的多环境(我试了试不行,最好还是用properties多文件 和 yml多文件的形式

server: port: 8080 spring: profiles: active: pro --- #开发环境 server: port: 8081 spring: profiles: dev --- #测试环境 server: port: 8082 spring: profiles: test --- #准生产环境 server: port: 8083 spring: profiles: forecast --- #生产环境 server: port: 8084 spring: profiles: pro

激活指定Profile的方式

①在配置文件中指定 spring.profiles.active=dev (maven打包的时候是按照此处的配置来打的)

#properties配置文件 spring.profiles.active=pro #yml配置文件 server: port: 8080 spring: profiles: active: pro

②idea命令行参数或虚拟机参数

 

③启动jar包时指定环境

    java -jar ***.jar --spring.profiles.active=pro

配置文件加载位置

springboot 启动会扫描以下位置的application.properties或者application.yml文件作为Spring boot的默认配置文件

–file:./config/

–file:./

–classpath:/config/

–classpath:/

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

SpringBoot会从这四个位置全部加载主配置文件;互补配置;

==我们还可以通过spring.config.location来改变默认的配置文件位置==

项目打包好以后,我们可以使用命令行参数的形式,启动项目的时候来指定配置文件的新位置;指定配置文件和默认加载的这些配置文件共同起作用形成互补配置;

java -jar ***.jar --spring.config.location=G:/application.properties

这种方法:如果项目已经打包运行,但是需要改某个值的情况下,可以不用重新打包发布,可以在外部新加一个配置文件,然后再命令行指定文件位置来加载,从而修改配置

转载请注明原文地址: https://www.6miu.com/read-2627987.html

最新回复(0)