专栏首页Spring Cloud 微服务spring.profiles.active 和 spring.profiles.include 的区别
原创

spring.profiles.active 和 spring.profiles.include 的区别

spring.profiles.activespring.profiles.include 有什么区别呢?笔者认为主要是语意上的区别,实际使用效果相同。假设,项目有 2 种环境:dev、prod,我们选择激活其中一种;其中涉及到 3 种组件:https、mysql、log,我们根据环境选择包含一个或多个。active 的构件被认为是与环境有关的,include 的构件被认为是与环境无关的。使用示例如下:

#每种环境都使用 mysql
spring.profiles.include: mysql
db.schema: db
---
#开发环境
spring.profiles: dev

db:
  hostname: localhost
  username: dev
  password: dev
  
---
#生产环境
spring.profiles: prod

spring.profiles.include: https,log

db:
  hostname: company.com
  username: prod
  password: prod
  
---
spring.profiles: mysql
spring:
  datasource:
    driver-class-name: com.mysql.jdbc.Driver
    url: jdbc:mysql://${db.hostname}:3306/${db.schema}
    username: ${db.username}
    password: ${db.password}

---
#默认使用 http 协议,包含此项使用 https 协议
spring.profiles: https

server:
  ssl:
    key-store: file://${user.home}/peacetrue.cn.jks
    key-alias: peacetrue.cn
    key-store-password: password

---
#默认输出到控制台,包含此项输出到文件
spring.profiles: log

logging.file.name: logs/root.log

在实际启动项目时,执行 java -jar app.jar --spring.profiles.active=dev 或者 java -jar app.jar --spring.profiles.include=dev 是等效的,可以在控制台看到输出的日志都是:The following profiles are active: dev

原创声明,本文系作者授权云+社区发表,未经许可,不得转载。

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

我来说两句

0 条评论
登录 后参与评论

相关文章

  • spring gateway 取代 nginx

    最近学了 spring gateway,之前都是使用 nginx 作为反向代理服务器,但 nginx 比较生疏,现在有了 spring gateway,也可以进...

    安宁
  • spring-cloud-config:配置同步原理

    以下通过一个实际案例展开分析,案例为:修改 Github 远程仓库路由配置后,路由转发功能实时生效。该案例构建于 peacetrue-microservice-...

    安宁
  • Spring NettyWebServer 启动运行机制

    在运行 Spring Boot Reactive 应用时,需要在应用内启动一个 WebServer,那么 WebServer 的启动过程是怎样的呢?通过以下源码...

    安宁
  • Spring boot应用踩坑集锦

    用户1141560
  • RN刷新回调

    提莫队长
  • python编辑器,作为小白该如何抉择?

    刚开始接触编程,有一个好的编辑器上手,那学习起来肯定是事半功倍的!本篇就给大家介绍适合零基础小白学习Python的四种编辑器,希望大家受用!

    一墨编程学习
  • Python利用random生成一个列表内的随机数

    其权重值表示该数或该范围内的数输出概率大,输出结果为列表 随机取1-33之间的6个随机数,不重复:

    崔笑颜
  • GitHub敏感信息扫描工具

    功能设计说明 GitPrey是根据企业关键词进行项目检索以及相应敏感文件和敏感文件内容扫描的工具,其设计思路如下: 根据关键词在GitHub中进行全局代码内容和...

    用户1467662
  • python技术面试题(十一)

    When you wake up in the morning you have two choices: go back to sleep, or wake ...

    小闫同学啊
  • Linux性能优化篇-了解CPU上下文切换

    所以我们会比较好了解CPU密集型,需要大量计算资源,会非常消耗cpu,I/O密集型需要等待I/O,会有大量的不可中断进程,

    程序员小王

扫码关注云+社区

领取腾讯云代金券