springboot 多环境配置和切换
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了springboot 多环境配置和切换相关的知识,希望对你有一定的参考价值。
参考技术A 在实际开发中,我们往往需要用到开发,测试,生产等环境,为了方便环境的切换,springboot提供了profile功能.profile是spring对不同坏境提供不同配置功能的支持,可以通过激活,指定参数等方式快速切换.
一共有三种方式,各位可以根据项目使用最适合自己的那一种.
第一种:配置文件激活: spring.profiles.active=dev
1,多profile文件形式----使用properties配置文件
在主配置文件编写的时候,文件名可以是 application-profile.properties,如图所示
2,多profile文档快模式----使用yml做配置文件
可以使用yml文档块方法配置不同环境,比properties更简洁方便,三条杠(---)作为分割,自定义profiles,active对应就可以了.请看具体实现.
结果是启动项目8082端口
第二种:使用命令行激活
1,命令行 --spring.profiles.active=dev
命令行方式有两种,一种是在IDEA中配置(eclipse中同样位置),一种在打包后使用cmd配置
2,打包,打包过程很多同学都熟悉,这里简单说一下,请看图
打包成功会出现两个以项目名开头的文件, 右键其中一个文件-show in Explorer,进入文件所在目录,在地址栏中输入cmd,进入命令行
输入以上命令 并Enter,就可以运行springboot,查看启动端口号,可以看到启动了8081.
其中spring-boot-0.0.1-SNAPSHOT.jar是你自己项目打包后的文件名,记得替换一下.
第三种:jvm参数方式激活 -Dspring.profiles.active=dev
和命令行的第一种配置在同一个地方,虚拟机配置也很简单,请看图片
点击apply-ok,启动后,使用的8081端口.
大致就是这三种激活方式,一般情况下都是使用的第一种配置文件激活,方便还不容易出错.
SpringBoot配置切换
切换需求
有时候在本地测试是使用8080端口,可是上线使用的又是80端口。 此时就可以通过多配置文件实现多配置支持与灵活切换。
多配置文件
3个配置文件:
核心配置文件:application.properties
开发环境用的配置文件:application-dev.properties
生产环境用的配置文件:application-pro.properties
这样就可以通过application.properties里的spring.profiles.active 灵活地来切换使用哪个环境了
其他类同。
spring.mvc.view.prefix=/WEB-INF/jsp/
spring.mvc.view.suffix=.jsp
spring.profiles.active=pro
server.port=8080
server.context-path=/test
server.port=80
server.context-path=/
部署
不仅可以通过修改application.properties文件进行切换,还可以在部署环境下,指定不同的参数来确保生产环境总是使用的希望的那套配置。
cd C:\Users\X7TI\Downloads\springboot
mvn install
java -jar target/springboot-0.0.1-SNAPSHOT.jar --spring.profiles.active=pro
或者
java -jar target/springboot-0.0.1-SNAPSHOT.jar --spring.profiles.active=dev
这样就可以保证在开发环境总是用的8080端口,而到了生产环境总是用的80端口,免去了每次上线还要修改端口号的麻烦。
以上是关于springboot 多环境配置和切换的主要内容,如果未能解决你的问题,请参考以下文章