0007SpringBoot配置不同环境内容及指定启动哪个环境
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配置不同环境内容及指定启动哪个环境的更多相关文章
- Linux本地yum源配置以及使用yum源安装gcc编译环境
本文档是图文安装本地yum源的教程,以安装gcc编译环境为例. 适用范围:所有的cetos,红帽,fedroa版本 适用人群:有一点linux基础的小白 范例系统版本:CentOS Linux rel ...
- IDEA指定启动JDK版本
使用场景: 开发人员在自己的机器上可能装了多个版本的JDK,但是在环境变量中只能配置一个 JAVA_HOME ,so你的IDEA Eclipse 可能因为你在 JAVA_HOME 配置JDK1.8 以 ...
- UNIX高级环境编程(8)进程环境(Process Environment)- 进程的启动和退出、内存布局、环境变量列表
在学习进程控制相关知识之前,我们需要了解一个单进程的运行环境. 本章我们将了解一下的内容: 程序运行时,main函数是如何被调用的: 命令行参数是如何被传入到程序中的: 一个典型的内存布局是怎样的: ...
- (三)配置Hadoop1.2.1+eclipse(Juno版)开发环境,并运行WordCount程序
配置Hadoop1.2.1+eclipse(Juno版)开发环境,并运行WordCount程序 一. 需求部分 在ubuntu上用Eclipse IDE进行hadoop相关的开发,需要在Eclip ...
- Web环境中Spring的启动过程
1.spring不但可以在JavaSE环境中应用,在Web环境中也可以广泛应用,Spring在web环境中应用时,需要在应用的web.xml文件中添加如下的配置: …… <context-par ...
- Qemu搭建ARM vexpress开发环境(二)----通过u-boot启动Linux内核
Qemu搭建ARM vexpress开发环境(二)----通过u-boot启动Linux内核 标签(空格分隔): Qemu ARM Linux 在上文<Qemu搭建ARM vexpress开发环 ...
- STS Eclipse IDEA 指定启动JDK版本
使用场景: 开发人员在自己的机器上可能装了多个版本的JDK,但是在环境变量中只能配置一个 JAVA_HOME ,so你的IDEA Eclipse 可能因为你在 JAVA_HOME 配置JDK1.8 以 ...
- 更优雅的配置:docker/运维/业务中的环境变量
目录 docker-compose 环境变量 .env 文件 env_file docker stack 不支持基于文件的环境变量 envsubst envsubst.py 1. 使用行内键值对 2. ...
- Win8.1系统下配置搭建IIS8.5+PHP5.5.4运行环境
原文 Win8.1系统下配置搭建IIS8.5+PHP5.5.4运行环境 很多人喜欢用linux搭建php网页语言运行环境,但由于linux高度自定义化,经常需要root运行命令,略显高端,相对应的微软 ...
随机推荐
- Dapper操作Sql Server和MySql数据库
1. 在配置文件web.config中添加连接字符串 <connectionStrings> <add name="sqlconnectionString" co ...
- CEC、ARC功能介绍
众所周知,HDMI作为一个数字化视频音频的接收标准,是可以同时传输视频和音频的,当然随着HDMI版本的提升,它的功能也一直在增强.事实上HDMI升级到1.3时,人们就发现了HDMI多了一个CEC功能. ...
- 洛谷 题解 UVA1395 【苗条的生成树 Slim Span】
[题意] 给出一个\(n(n<=100)\)个节点的的图,求最大边减最小边尽量小的生成树. [算法] \(Kruskal\) [分析] 首先把边按边权从小到大进行排序.对于一个连续的边集区间\( ...
- 2019春《C语言程序设计》课程设计的安排
课程设计的安排 课前准备: 要求同学们注册码云,并登陆: 要求组长加入由老师创建的一级组织:"2019春C语言": 要求组长建立二级组织,给自己的小组取个好听的名字,并邀请本组成员 ...
- 第一个web 程序(servlet 和 jsp )&
开发工具是便于程序员的编写,真正运行的代码不是编写的代码,而是tomcat服务器中部署好的代码.tomcat 会根据请求自动调用对应的代码进行请求处理. 可能遇到的问题: 1. 没有classes文件 ...
- Java基础---JavaJShell脚本工具
JShell脚本工具是JDK9的新特性 什么时候会用到 JShell 工具呢,当我们编写的代码非常少的时候,而又不愿意编写类,main方法,也不愿意去编译和运行,这个时候可以使用JShell工具. 启 ...
- java用POI导出Excel
架构SSM + Maven 一.添加依赖: <dependency> <groupId>org.apache.poi</groupId> <artifactI ...
- aPlugForUNIX(POJ-1087)【最大流】
题目链接:https://vjudge.net/problem/POJ-1087 题意:有N个插座,M个电器,K种转换头(每种转换头有无限多个),求最多能同时给多少台设备供电 思路: 首先,建立源点和 ...
- 洛谷 P1019单词接龙
看吧,多简单啊,没有人受伤的世界完成了. ...
- 个人整理Python代码实例
1.四位数字字母验证码的生成实例 import random if __name__ =="__main__": #四位数字字母验证码的生成 checkcode="&qu ...