一 pom.xml配置如下:

<profiles><profile><id>dev</id><properties><spring.profiles.active>dev</spring.profiles.active></properties><activation><activeByDefault>true</activeByDefault></activation></profile><profile><id>prd</id><properties><spring.profiles.active>prd</spring.profiles.active></properties></profile></profiles>

二 配置application.yml

application.yml中先配置一些公共的部分。然后配置需要分开的部分。

spring:profiles:active: dev

三 创建不同的配置文件

现在profile环境有dev和prd。
需要创建文件 application-dev.yml、application-prd.yml和日志配置文件logback-dev.xml、logback-prd.xml
springboot的配置我需要分开的有mysql、redis还有端口。
所有application-dev.yml如下:

server:port: 8092spring:datasource:type: com.alibaba.druid.pool.DruidDataSourcedruid:username: rootpassword: 1234567890url: jdbc:mysql://localhost:3306/fake_tjise?useUnicode=true&characterEncoding=UTF-8&serverTimezone=Asia/Shanghaidriver-class-name: com.mysql.cj.jdbc.Driver# 初始化时建立物理连接的个数initial-size: 5# 最大连接池数量max-active: 30# 最小连接池数量min-idle: 5time-between-eviction-runs-millis: 60000# 配置间隔多久才进行一次检测,检测需要关闭的空闲连接,单位是毫秒# 连接保持空闲而不被驱逐的最小时间min-evictable-idle-time-millis: 300000# 获取连接时最大等待时间,单位毫秒max-wait: 60000# 用来检测连接是否有效的sql,要求是一个查询语句validation-query: SELECT 1 FROM DUALtestWhileIdle: truetestOnBorrow: falsetestOnReturn: falsewebStatFilter:enabled: truestatViewServlet:enabled: true# 设置白名单,不填则允许所有访问allow:url-pattern: /druid/*# 控制台管理用户名和密码login-username: adminlogin-password: 123456789filter:stat:enabled: true# 慢SQL记录log-slow-sql: trueslow-sql-millis: 1000merge-sql: truewall:config:multi-statement-allow: truejackson:time-zone: GMT+8date-format: yyyy-MM-dd HH:mm:ssthymeleaf:cache: falseredis:host: 127.0.0.1port: 6379swagger:enable: truemybatis-plus:mapper-locations: classpath*:/mapper/api/*.xmlglobal-config:db-config:id-type: autologic-delete-value: 0logic-not-delete-value: 1logging:level:cn.com.codingce: info

至于application-prd.yml 根据自己的环境进行更换配置。
日志配置文件同理。

四 打包

1 打包的时候只需要进行如下图勾选 dev环境或者prd生产环境。

2 勾选好环境 点击lifecycle中的package或者install进行打包。
或者使用命令打包: mvn clean package -P prd; 指定环境进行打包(如果不指定,打包的还是pom.xml中的默认的环境dev)。

注意:切换环境后,本地启动的环境是成功切换了的。但是打包并没有。
在我成功切换环境prd后,仍然使用命令mvn clean package打包,本来我以为这样也可以打包成prd环境的,但结果是pom.xml中默认的环境dev(activeByDefault = true),所以需要在后面命令加参数 mvn clean package -P prd进行打包。

验证:打包完成后可去target/classes/application.yml中进行验证环境是否正确。

Spring Boot配置@spring.profiles.active配置相关推荐

  1. SpringBoot配置文件中spring.profiles.active配置详解

    SpringBoot配置文件中spring.profiles.active配置详解 1.多环境配置 我们在开发Spring Boot应用时,通常同一套程序会被应用和安装到几个不同的环境,比如:开发.测 ...

  2. spring.profiles.active 配置未生效

    spring.profiles.active 配置未生效 先看一下我遇到的问题及配置内容 application.yml文件 #指定环境的默认配置 spring:profiles:active: pr ...

  3. Spring Boot是如何实现自动配置的?

    原文:sylvanassun.github.io/2018/01/08/2018-01-08-spring_boot_auto_configure/ Spring Boot 是 Spring 旗下众多 ...

  4. springboot生成包含特定数字_面试必问 —— Spring Boot 是如何实现自动配置的?

    什么是@Conditional? AutoConfigure源码分析 自动配置类中的条件注解 <Netty 实现原理与源码解析 -- 精品合集> <Spring 实现原理与源码解析 ...

  5. 如何把Spring Boot 项目变成一个XML配置的Spring项目

    现在大家都追赶新的技术潮流,我来逆行一下. 其实Spring Boot 隐藏了大量的细节,有大量的默认配置,其实通过xml配置的方式也可以达到和Spring Boot一样的效果. Profile 在S ...

  6. Spring Boot概述与入门特点配置方式注入方式yim配置文件与多文件配置Spring Boot自动配置原理lombok应用

    1. Spring Boot概述 Spring Boot是Spring项目中的一个子工程,与我们所熟知的Spring-framework 同属于spring的产品: 首页Spring Boot简介可以 ...

  7. Spring Boot 面试杀手锏:自动配置原理

    欢迎关注方志朋的博客,回复"666"获面试宝典 不论在工作中,亦或是求职面试,Spring Boot已经成为我们必知必会的技能项.除了某些老旧的政府项目或金融项目持有观望态度外,如 ...

  8. 关于Spring Boot WebSocket整合以及nginx配置详解

    这篇文章主要给大家介绍了关于Spring Boot WebSocket整合以及nginx配置的相关资料,文中通过示例代码给大家介绍的非常详细,相信对大家的学习或者工作具有一定的参考学习价值,需要的朋友 ...

  9. Spring Boot中的一些常用配置介绍!

    这篇教程将为你介绍Spring Boot 中的一些常用配置,比如:自定义 Banner.配置日志.关闭特定的自动配置等. 自定义Banner 在 Spring Boot 启动的时候会有一个默认的启动图 ...

  10. 13、Spring Boot 2.x 多数据源配置

    1.13 Spring Boot 2.x 多数据源配置 完整源码: Spring-Boot-Demos 转载于:https://www.cnblogs.com/Grand-Jon/p/9999779. ...

最新文章

  1. EffectKeyMap系列1(Ubuntu)
  2. 局部邻域搜索-爬山法,模拟退火,禁忌,迭代局部搜索,变邻域局部搜索的简单阐释
  3. Windows——Modern Standby(现代待机) S0改Suspend to RAM(待机到内存)S3睡眠解决方案(以机械革命F1 i5-11300H为例)
  4. 小程序在父组件执行子组件方法,可适用于下拉刷新上拉加载之后执行子组件方法
  5. Phoenix 关联hbase表历史数据
  6. win10安装oracle12c注意事项,win10系统安装oracle 12c出现ins-30131错误的修复办法
  7. Chrome 开发工具指南——通过工作空间保存更改
  8. CentOS7--IP配置与网络问题排查
  9. 【小家Java】Future与FutureTask的区别与联系
  10. CANape XCP on CAN工程创建
  11. 408考研复试之计算机组成原理笔记第一二三章
  12. DSP入门小白学习日记第四篇
  13. 车辆悬架刚度计算方法
  14. 【WIFI专题】Wifi 2.4G及5G频段各信道的中心频率及主要国家的分布情况
  15. 基于Java的多元化智能选课系统 毕业设计-附源码040909
  16. 美团校招题 小团的装饰物
  17. unity 入门二 :射击
  18. 【Unity】Unity 欧拉角、四元数、万向节死锁、四元数转轴角
  19. 超重车辆高速动态称重系统设计方案
  20. 应用大数据助力车险反欺诈

热门文章

  1. 最新综述:用于文本分类的数据增强方法
  2. 效率飞起!BML CodeLab发布重磅更新
  3. Word Embedding Papers | 经典再读之fastText
  4. 基于DGCNN和概率图的轻量级信息抽取模型
  5. 免费报名 | 智源论坛:智能处理器探索,AI技术前沿精粹尽览
  6. export default用法vue_Vue组件通信—provide/inject
  7. python哨兵循环_Python中的Sentinel(哨兵)值
  8. 如何在云服务器上安装vim(bash: vim :command not found)
  9. JAVA使用正则表达式给字符串添加分隔符
  10. Spring Boot——基于AOP的HTTP操作日志解决方案