赞
踩
1. profile是用来完成不同环境下,配置动态切换功能的。
我们在开发Spring Boot 应用时,通常同一套程序会被安装到不同环境,例如:开发、测试、生产等。其中数据库地址、服务器端口等等配置都不同,如果每次打包时,都要修改配置文件,那么非常麻烦。profile 功能就是来进行动态配置切换的。
2.profile配置方式
多profile文件方式:提供多个配置文件,每个代表一种环境。
application-dev.properties/yml 开发环境
application-test.properties/yml 测试环境
application-pro.properties/yml 生产环境
yml多文档方式:
在yml中使用 --- 分隔不同配置
3. profile激活方式
配置文件:再配置文件中配置:spring.profiles.active=dev
虚拟机参数:在VM options 指定:-Dspring.profiles.active=dev
命令行参数:java –jar xxx.jar --spring.profiles.active=dev
1.创建一个演示项目 springboot-profile
2.创建多个环节的配置文件,并在每个配置文件设置不同的 server.port 端口号
- - application-dev.properties/yml 开发环境
- - application-test.properties/yml 测试环境
- - application-pro.properties/yml 生产环境
-
- 这里我们选择后缀 .properties 的配置文件进行验证。
三个配置文件分别设置端口号:
application-dev.properties
server.port=8081
application-pro.properties
server.port=8082
application-test.properties
server.port=8083
在 application.properties 配置文件激活使用哪个环境的配置文件:
- # 激活使用哪个环节的配置文件
- spring.profiles.active=dev
其他环境的切换可以自行验证。
“在yml中使用 --- 分隔不同配置
”
1.为了不影响验证,我们首先将项目上面写的配置信息全部注释
好了,现在没有配置文件干扰之后,我们来新建一个 yml 配置。
2.创建 application.yml,添加各个环境的配置
- ---
- # 开发环境的参数
- server:
- port: 8081
-
- # 定义开发环境
- spring:
- config:
- activate:
- on-profile: dev
-
- ---
- # 测试环境的参数
- server:
- port: 8082
-
- # 定义测试环境
- spring:
- config:
- activate:
- on-profile: test
-
- ---
- # 生产环境的参数
- server:
- port: 8083
-
- # 定义生产环境
- spring:
- config:
- activate:
- on-profile: pro
-
- ---
- # 配置使用哪个环境的参数
- spring:
- profiles:
- active: test
3.切换环境,确认启动的环境参数
在这里我们可以切换不同的环境参数进行启动。
配置文件:再配置文件中配置:spring.profiles.active=dev
虚拟机参数:在VM options 指定:-Dspring.profiles.active=dev
命令行参数:java –jar xxx.jar --spring.profiles.active=dev
在上面我们在配置文件编写的过程中,切换环境都是使用配置文件。那么还有另外两种方式可以试一下。
在VM options 指定:-Dspring.profiles.active=dev
1.配置启动的命令
2.确认启动效果
java –jar xxx.jar --spring.profiles.active=dev
1.配置启动的命令
--spring.profiles.active=dev
2.确认启动的效果
3.Jar包使用命令行参数
首先打一个jar包,使用命令行启动如下:
“注意:打包的时候将其他没有用的配置文件删除,不然打包会报错。
”
java -jar springboot-profile-0.0.1-SNAPSHOT.jar
首先默认启动,确认基于配置文件的启动环境:
当前使用的是 test 环境,下面我们用命令行切换为 dev 环境,如下:
java -jar springboot-profile-0.0.1-SNAPSHOT.jar --spring.profiles.active=dev
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。