一. 多环境配置的好处:

1.不同环境配置可以配置不同的参数~

2.便于部署,提高效率,减少出错~

二. properties多环境配置

1. 配置激活选项

spring.profiles.active=dev

2.添加其他配置文件

application.properties:

#激活哪一个环境的配置文件
spring.profiles.active=dev
#公共配置
spring.jackson.date-format=yyyy-MM-dd HH:mm:ss:

运行的时候还可以制定激活的环境

java -jar myapp.jar --spring.profiles.active=prd

三.YAML多环境配置

1.配置激活选项

spring:
profiles:
active: dev

2.在配置文件添加三个英文状态下的短横线即可区分

---
spring:
profiles: dev

application.yml

#激活哪一个环境的配置文件
spring:
profiles:
active: prd
#公共配置
spring:
jackson:
date-format: yyyy-MM-dd HH:mm:ss
---
spring:
profiles: dev
server:
port: 8081
---
spring:
profiles: test
server:
port: 8082
---
spring:
profiles: prd
server:
port: 8083

这种情况是报错的:Duplicate key: spring

正确的配置:

#激活哪一个环境的配置文件
#公共配置
spring:
profiles:
active: prd
jackson:
date-format: yyyy-MM-dd HH:mm:ss
---
spring:
profiles: dev
server:
port: 8081
---
spring:
profiles: test
server:
port: 8082
---
spring:
profiles: prd
server:
port: 8083

四.两种配置方式的比较

1. Properties配置多环境,需要添加多个配置文件,YAML只需要一个配件文件

yml文件本身具有区分不同环境的能力

2.书写格式的差异,yaml相对比较简洁,优雅

3. YAML的缺点:不能通过@PropertySource注解加载。如果需要使用@PropertySource注解的方式加载值,那就要使用properties文件。

讲真,还是喜欢properties的配置形式,yml形式的优雅?没啥感觉~哈哈~

详解Spring Boot配置文件之多环境配置的更多相关文章

  1. Spring Boot 配置文件和命令行配置

    Spring Boot 属于约定大于配置,就是说 Spring Boot 推荐不做配置,很多都是默认配置,但如果想要配置系统,使得软件符合业务定义,Spring Boot 可以通过多种方式进行配置. ...

  2. 详解Spring Boot集成MyBatis的开发流程

    MyBatis是支持定制化SQL.存储过程以及高级映射的优秀的持久层框架,避免了几乎所有的JDBC代码和手动设置参数以及获取结果集. spring Boot是能支持快速创建Spring应用的Java框 ...

  3. 详解spring boot mybatis全注解化

    本文重点介绍spring boot mybatis 注解化的实例代码 1.pom.xml //引入mybatis <dependency> <groupId>org.mybat ...

  4. 详解spring boot实现多数据源代码实战

    之前在介绍使用JdbcTemplate和Spring-data-jpa时,都使用了单数据源.在单数据源的情况下,Spring Boot的配置非常简单,只需要在application.propertie ...

  5. spring boot 中logback多环境配置

    spring boot 配置logback spring boot自带了log打印功能,使用的是Commons logging 具体可以参考spring boot log 因此,我们只需要在resou ...

  6. spring boot学习4 多环境配置

    说明: 在企业中,一个项目一般都有测试环境(test) .开发环境(dev).生产环境(pro)等等.在每个环境中,配置信息会不一样的.比如数据库.静态资源文件位置等都会不一样的. 那么使用sprin ...

  7. Spring boot 配置文件参数映射到配置类属性

    [参考文章]:SpringBoot之@EnableConfigurationProperties分析 [参考文章]:在Spring Boot中使用 @ConfigurationProperties 注 ...

  8. Spring Boot 配置文件详解

    Spring Boot配置文件详解 Spring Boot提供了两种常用的配置文件,分别是properties文件和yml文件.他们的作用都是修改Spring Boot自动配置的默认值.相对于prop ...

  9. Spring Boot 配置文件中的花样,看这一篇足矣!

    在快速入门一节中,我们轻松的实现了一个简单的RESTful API应用,体验了一下Spring Boot给我们带来的诸多优点,我们用非常少的代码量就成功的实现了一个Web应用,这是传统的Spring应 ...

随机推荐

  1. jQuery源码02--(3043 , 3183) Deferred : 延迟对象 : 对异步的统一管理

    //延迟对象 jQuery.extend({ Deferred: function( func ) { var tuples = [//resolve完成.reject未完成.notify进行中类似于 ...

  2. adb logcat 使用

    之前打印log的时候,使用的是别人配置好的快捷键,结果现在快捷键没有配置,具体的log命令就不会了.今天上网查了一下,记录下来 打印的log是 android.util.Log.e("zha ...

  3. 10.axis实现webservices分布式通信

    转自:https://www.aliyun.com/jiaocheng/310112.html 分布式通信原理 基本原理:stub和skeleton作为客户端和服务端传输的中介,stub和skelet ...

  4. LinkCutTree详解

    LCT详解 没有比这再详细的了, 相信我

  5. MySql_Learn

    1 id 自增长  auto_increment 2 获取当前时间 now() 3 新增字段 修改字段名称 简单分页功能  limit 10 offset 20;  查询第21到30条数据 selec ...

  6. Python的正则表达概述

    本文介绍了Python对于正则表达式的支持,包括正则表达式基础以及Python正则表达式标准库的完整介绍及使用示例.本文的内容不包括如何编写高效的正则表达式.如何优化正则表达式,这些主题请查看其他教程 ...

  7. vim-复制、粘贴

    选中某些行,可以在命令行模式下执行如下操作 v(小写),按上下左右键,可以选中某些行 V(大写),按上下键,这时候可以直接选中光标所在的行 ctrl+v(小写),可以选中一个矩形区域 取消选中,这些指 ...

  8. 洛谷P1622 释放囚犯

    题目描述 Caima王国中有一个奇怪的监狱,这个监狱一共有P个牢房,这些牢房一字排开,第i个紧挨着第i+1个(最后一个除外).现在正好牢房是满的. 上级下发了一个释放名单,要求每天释放名单上的一个人. ...

  9. Day6上午解题

    预计分数:100+100+30=230 实际分数:90+25+10=125 T1少判了一种情况,T2的贪心是错的,T3被卡了... T1 模拟水题,注意20的可以用3个5块的找 #include< ...

  10. Non-resolvable parent POM for **: Could not find artifact **

    注意查看这句: 原因是本地仓库缺少了easybuy-parent:pom:0.0.1-SNAPSHOT, 原来是忘记了将父工程打包到本地仓库 ,运行聚合工程前记得先将依赖的工程都先Maven inst ...