首页 > 编程语言 > 详细

0007SpringBoot配置不同环境内容及指定启动哪个环境

时间:2019-11-20 11:48:56      阅读:86      评论:0      收藏:0      [点我收藏+]

1、多profiles的形式

分别新增application-dev.properties和application-prod.properties配置文件,

其中application-dev.properties中配置端口为:server.port=8081    

其中application-prod.properties中配置端口为:server.port=8082

而原application.properties中配置的端口为:server.port=8080; 

测试:启动引导类,发现启动的端口为8080;

在application.properties中增加 spring.profiles.active=dev,指定加载dev环境的profile文件,即application-dev.properties,重新启动,发现启动端口为8081;

在application.properties中增加 spring.profiles.active=prod,指定加载prod环境的profile文件,即application-prod.properties,重新启动,发现启动端口为8082;

如果将spring.profiles.active=prod1,而没有prod1对应的配置文件,则默认使用application.properties中的配置,即8080端口

2、在yml中以文档块的形式配置

在application.yml中以3各横线“---”的形式进行文档块分隔

第一种情况:

server:
port: 8083
#spring:
# profiles:
# active: dev
---
server:
port: 8084
#spring:
# profiles: dev
---
server:
port: 8085
#spring:
# profiles: lt

3个文档块,但是没有指定属于哪种环境,所以最下边的内容会覆盖上边的内容,即启动端口为8085

第二种情况:

  

server:
port: 8083
#spring:
# profiles:
# active: dev
---
server:
port: 8084
spring:
profiles: dev
---
server:
port: 8085
spring:
profiles: lt

指定了每个文档块所属环境,但是没有指定具体启用哪个文档块,则启用默认的文档块,即端口8083

第三种情况:

server:
port: 8083
spring:
profiles:
active: dev
---
server:
port: 8084
spring:
profiles: dev
---
server:
port: 8085
spring:
profiles: lt

通过标红部分指定启用dev环境,即启动端口号为8084

3、通过配置启动应用的参数或者虚拟机参数的形式来启动,则以此为准,yml中指定的启用的哪个环境不再生效

技术分享图片

 

 技术分享图片

或者通过配置VM options指定:

技术分享图片

 

 

 

虽然配置文件指定使用dev,应该为8084,但是此处通过参数的形式指定启用lt环境,所以真正启用的端口为8085 

4、通过命令行的方式给定参数来指定启用哪个环境

通过IntelliJ IDEA工中的maven -- package将项目打包,将jar包拷贝到指定目录,打开cmd窗口,cd 到指定目录,在该目录下运行如下命令:

java -jar  springboot_test-0.0.1-SNAPSHOT.jar --spring.profiles.active=lt

即可启动lt文档块对应 8085

 

若有理解不到位之处,望指正!

0007SpringBoot配置不同环境内容及指定启动哪个环境

原文:https://www.cnblogs.com/xiao1572662/p/11896099.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!