首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >8-SpringBoot配置-profile

8-SpringBoot配置-profile

作者头像
Devops海洋的渔夫
发布2022-03-23 15:45:02
发布2022-03-23 15:45:02
1.5K0
举报
文章被收录于专栏:Devops专栏Devops专栏

8-SpringBoot配置-profile

SpringBoot配置-profile

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

profile配置方式

多profile文件方式:提供多个配置文件,每个代表一种环境

1.创建一个演示项目 springboot-profile
2.创建多个环节的配置文件,并在每个配置文件设置不同的 server.port 端口号
代码语言:javascript
复制
- application-dev.properties/yml 开发环境
- application-test.properties/yml 测试环境
- application-pro.properties/yml 生产环境

这里我们选择后缀 .properties 的配置文件进行验证。

三个配置文件分别设置端口号:

application-dev.properties

代码语言:javascript
复制
server.port=8081

application-pro.properties

代码语言:javascript
复制
server.port=8082

application-test.properties

代码语言:javascript
复制
server.port=8083

在 application.properties 配置文件激活使用哪个环境的配置文件:

代码语言:javascript
复制
# 激活使用哪个环节的配置文件
spring.profiles.active=dev

其他环境的切换可以自行验证。

yml多文档方式:

“在yml中使用 --- 分隔不同配置 ”

1.为了不影响验证,我们首先将项目上面写的配置信息全部注释

好了,现在没有配置文件干扰之后,我们来新建一个 yml 配置。

2.创建 application.yml,添加各个环境的配置
代码语言:javascript
复制
---
# 开发环境的参数
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.切换环境,确认启动的环境参数

在这里我们可以切换不同的环境参数进行启动。

profile激活方式

  • 配置文件:再配置文件中配置: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.确认启动效果

命令行参数:

代码语言:javascript
复制
java –jar xxx.jar  --spring.profiles.active=dev
1.配置启动的命令
代码语言:javascript
复制
--spring.profiles.active=dev
2.确认启动的效果
3.Jar包使用命令行参数

首先打一个jar包,使用命令行启动如下:

“注意:打包的时候将其他没有用的配置文件删除,不然打包会报错。 ”

代码语言:javascript
复制
java -jar springboot-profile-0.0.1-SNAPSHOT.jar

首先默认启动,确认基于配置文件的启动环境:

当前使用的是 test 环境,下面我们用命令行切换为 dev 环境,如下:

代码语言:javascript
复制
java -jar springboot-profile-0.0.1-SNAPSHOT.jar --spring.profiles.active=dev
本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2022-03-06,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 海洋的渔夫 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 8-SpringBoot配置-profile
    • SpringBoot配置-profile
    • profile配置方式
      • 多profile文件方式:提供多个配置文件,每个代表一种环境
      • yml多文档方式:
    • profile激活方式
      • 虚拟机参数:
      • 命令行参数:
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档