由Java之父讲解的SpringBoot中的profile,太详细了吧

写在前面

SpringBoot开发是目前Java后端的主流框架了,但是当我们去真正在生产环境上使用时,难免会存在和开发、测试环境不同的一些配置文件,或者是配置变量值等等的情况。

当遇到这种情况,我们又要如何更好的解决这个问题呢。所以我们要开始补充新的知识了。

profile

SpringBoot中的配置文件,一般都是使用application.yml或者是application.properties文件来实现配置文件的设置。

那么如何实现不同环境下的配置文件不同的情况呢,这个springboot给出了一些方案,我们今天就着重看单文件的形式,大家可以自行参考。

单文件方式

单文件操作,是可以通过---分隔符来进行区分的,比如我们有一些统一的配置,那么就放置在yml文件的头部,比如下面的示例:

server:
  port: 8080

随后我们创建开发环境中的,那么就首先来使用---分隔符进行隔离,然后我们来进行开发环境的特殊配置。如下图示例:

server:
  port: 8080
---
spring:
  profiles: dev
server:
  servlet:
    context-path: /dev

再然后,我们开始创建测试环境中的特殊配置,接着看下图示例:

server:
  port: 8080
---
spring:
  profiles: dev
server:
  servlet:
    context-path: /dev
---
spring:
  profiles: test
server:
  servlet:
    context-path: /test

最后创建一个生产配置,如下图示例:

server:
  port: 8080
---
spring:
  profiles: dev
server:
  servlet:
    context-path: /dev
---
spring:
  profiles: test
server:
  servlet:
    context-path: /test
---
spring:
  profiles: pro
server:
  servlet:
    context-path: /pro
    

如何进行切换各环境的配置呢?那就要使用spring.profiles.active配置了,如下图示例所示:

server:
  port: 8080
spring:
  profiles:
    active: test
---
spring:
  profiles: dev
server:
  servlet:
    context-path: /dev
---
spring:
  profiles: test
server:
  servlet:
    context-path: /test
---
spring:
  profiles: pro
server:
  servlet:
    context-path: /pro

总结

我们经常在生产环境进行一些JVM的调优,数据库的不同,所以我们才会针对不同环境下进行一些区分。

  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值