时间:2021-05-19
spring.profiles.active=环境变量
配置两个环境的,可根据实际需要增加环境模式(开发环境dev,测试环境test,回归坏境retu,预生产环境pre,生产环境prod,等等)
dev代表开发环境:
prod代表生产环境
pom.xml里面配置profiles:
<profiles> <profile> <id>dev</id> <activation> <!-- 默认激活--> <activeByDefault>true</activeByDefault> </activation> <properties> <spring.profiles.active>dev</spring.profiles.active> </properties> </profile> <profile> <id>prod</id> <properties> <spring.profiles.active>prod</spring.profiles.active> </properties> </profile></profiles>系统环境变量配置:
在本地,如果在这些文件里面配置端口和路径:
appilacton.yml:
server: port: 8087 servlet: context-path: /miserviceapplication-dev.yml:
server: port: 8088 servlet: context-path: /miservice-devapplication-prod.yml:
server: port: 8087 servlet: context-path: /miservice有效的是:8088那个配置。
在本地,如果分环境没有配置,就以主环境为主:
appilacton.yml:
server: port: 8087 servlet: context-path: /miserviceapplication-prod.yml:
server: port: 8089 servlet: context-path: /miservice-prod则是8087这个是有效的。
小结1:
application.yml引入配置为:
spring: profiles: active: ${env}即:配置读取顺序为:application.yml>>application-dev.yml
如果想多个模块的配置文件都起作用,可将application.yml文件配置到具体的模块去:
spring: profiles: active: miservice, ${env}在application.yml和application-miservice.yml和application-dev.yml三个文件中:如果都有端口或路径配置,则读取application-dev.yml里面的配置,关闭application-dev.yml里面的配置则读取application-miservice.yml里面的配置,最后读取application.yml
里面的配置。
application.yml引入配置为:
spring: profiles: active: miservice, ${env}即:配置读取顺序为:application-dev.yml>>application-miservice.yml>>application.yml
修订一下:上面的结论是刚开始总结的,后面发现读取顺序是按文件的顺序从下到上读取的。即按结构顺序
到此这篇关于springboot多模块多环境配置文件问题(动态配置生产和开发环境)的文章就介绍到这了,更多相关springboot多模块多环境内容请搜索以前的文章或继续浏览下面的相关文章希望大家以后多多支持!
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
开发项目时会遇到这个问题:开发环境,测试环境,生产环境的配置文件不同,打包时经常要手动更改配置文件,更改的少还可以接受,但是如果需要更多个配置文件,手动的方法就
一前言本篇文章的主题是在springboot中写多个配置文件,指定让个配置文件生效,以便于达到在开发环境,测试环境,线上环境根据不同的配置灵活应用;读完本篇你将
spring多文件配置:1、properties文件2、YAML文件一、properties文件在SpringBoot中,多环境配置的文件名需要满足applic
配置多环境是日常开发经常需要用到的操作,实现多环境配置后可以规避生产测试环境混合带来的麻烦和风险,减少项目风险,并且也可以通过多环境来保证生产环境上密钥的安全。
spring中@profile与maven中的profile很相似,通过配置来改变参数。例如在开发环境与生产环境使用不同的参数,可以配置两套配置文件,通过@pr