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运行命令,略显高端,相对应的微软 ...
随机推荐
- 乐字节Java反射之一:反射概念与获取反射源头class
一.Java反射机制概念 “程序运行时,允许改变程序结构或变量类型,这种语言称为动态语言”,如Python, Ruby是动态语言:显然C++,Java,C#不是动态语言,但是JAVA有着一个非常突出 ...
- [转帖]如何禁止VirtualBox虚拟机和物理机之间的时间同步
如何禁止VirtualBox虚拟机和物理机之间的时间同步 乐者为王 2014-11-02 706 阅读 http://ju.outofmemory.cn/entry/97301 验证了下 修改注册 ...
- Spring boot+Websocket实例1
简单的demo https://github.com/callicoder/spring-boot-websocket-chat-demo
- ${__setProperty 等常见jmeter参数相关博客汇总
jmeter 控制线程组执行顺序 这个要配合全局变量.if和while来实现BeanShell取样器,全局变量:${__setProperty(newswitch,${switch1},)}if条 ...
- Java面试笔记整理4
一.Java内存溢出的产生原因和解决办法? java.lang.OutOfMemoryError这个错误我相信大部分开发人员都有遇到过,产生该错误的原因大都出于以下原因:JVM内存过小.程序不严密,产 ...
- 新浪sae对storage的文档进行读写操作
有的人喜欢将一些数据写在服务器的文件里面,并不喜欢存在mysql里,但新浪sae却不支持对本地文件进行操作. 不过sae拓展了一个storage的服务,可以将一些静态文件放在上面.本文不介绍文件的上传 ...
- System函数的使用说明
#inlcude<stdlib.h> int system(const char* command) 功能:在已经运行的程序中调用另一个外部程序 参数:外部可执行程序的名字 返回值:不同系 ...
- 01 HTTP协议_servlet基础
一.定义 http(Hyper Text Transfer Protocol):超文本传输协议 二.作用 数据传输 三.概念 HTTP消息: 1.客户端发向服务器的请求消息 2.服务器回给客户端的响应 ...
- CentOS7离线安装Mysql(详细安装过程)
Mysql安装 下载mysql离线安装包 https://cdn.mysql.com//Downloads/MySQL-5.7/mysql-5.7.27-1.el7.x86_64.rpm-bundle ...
- MySQL中的索引详讲(转)
https://www.cnblogs.com/whgk/p/6179612.html