一、配置文件的生效顺序,会对值进行覆盖:

  • 1. @TestPropertySource 注解
  • 2. 命令行参数
  • 3. Java系统属性(System.getProperties())
  • 4. 操作系统环境变量
  • 5. 只有在random.*里包含的属性会产生一个RandomValuePropertySource
  • 6. 在打包的jar外的应用程序配置文件(application.properties,包含YAML和profile变量)
  • 7. 在打包的jar内的应用程序配置文件(application.properties,包含YAML和profile变量)
  • 8. 在@Configuration类上的@PropertySource注解
  • 9. 默认属性(使用SpringApplication.setDefaultProperties指定)

二、配置随机值

  1. roncoo.secret=${random.value}   32位随机数
  2. roncoo.number=${random.int}
  3. roncoo.bignumber=${random.long}
  4. roncoo.number.less.than.ten=${random.int(10)}
  5. roncoo.number.in.range=${random.int[1024,65536]}

读取使用注解:@Value(value = "${roncoo.secret}")

注:出现黄点提示,是要提示配置元数据,可以不配置

三、属性占位符

  • 当application.properties里的值被使用时,它们会被存在的Environment过滤,所以你能够引用先前定义的值(比如,系统属性)。

roncoo.name=www.roncoo.com

roncoo.desc=${roncoo.name} is a domain name

  • 引用@Value(value = "${roncoo.desc}")  该值为www.roncoo.com is a domain name

四、Application属性文件,按优先级排序,位置高的将覆盖位置低的

1. 当前目录下的一个/config子目录(优先级最高)

2. 当前目录

3. 一个classpath下的/config包

4. classpath根路径(root)

  • 这个列表是按优先级排序的(列表中位置高的将覆盖位置低的)

  • Config/applicaton.properties会覆盖 /applicaton.properties 相同的配置,如果不是相同的配置则都会加载并生效。

五. 配置应用端口和其他配置的介绍

  • #端口配置:

server.port=8090

  • #时间格式化

spring.jackson.date-format=yyyy-MM-dd HH:mm:ss

  • #时区设置

spring.jackson.time-zone=Asia/Chongqing

六. 使用YAML代替Properties

注意写法:冒号后要加个空格

(三)SpringBoot之配置文件详解:Properties和YAML的更多相关文章

  1. SpringBoot第三篇:配置文件详解二

    作者:追梦1819 原文:https://www.cnblogs.com/yanfei1819/p/10615605.html 版权声明:本文为博主原创文章,转载请附上博文链接! 前言   本文主要讲 ...

  2. Spring boot 配置文件详解 (properties 和yml )

    从其他框架来看 我们都有自己的配置文件, hibernate有hbm,mybatis 有properties, 同样, Spring boot 也有全局配置文件. Springboot使用一个全局的配 ...

  3. Hibernate(三)之配置文件详解

    一.核心配置文件(hibernate.cfg.xml) <?xml version="1.0" encoding="UTF-8"?> <!DO ...

  4. Spring Boot系列教程四:配置文件详解properties

    一.配置随机数,使用随机数 在application.properties文件添加配置信息 #32位随机数 woniu.secret=${random.value} #随机整数 woniu.numbe ...

  5. keepalived原理(主从配置+haproxy)及配置文件详解

    下图描述了使用keepalived+Haproxy主从配置来达到能够针对前段流量进行负载均衡到多台后端web1.web2.web3.img1.img2.但是由于haproxy会存在单点故障问题,因此使 ...

  6. MyBatis 全局配置文件详解(七)

    MyBatis 配置文件作用 MyBatis配置文件包含影响 MyBatis 框架正常使用的功能设置和属性信息.它的作用好比手机里的设置图标,点击这个图标就可以帮助我们查看手机的属性信息和设置功能.其 ...

  7. (转) SpringBoot非官方教程 | 第二篇:Spring Boot配置文件详解

    springboot采纳了建立生产就绪spring应用程序的观点. Spring Boot优先于配置的惯例,旨在让您尽快启动和运行.在一般情况下,我们不需要做太多的配置就能够让spring boot正 ...

  8. SpringBoot非官方教程 | 第二篇:Spring Boot配置文件详解

    转载请标明出处: 原文首发于:https://www.fangzhipeng.com/springboot/2017/07/11/springboot2-config-file/ 本文出自方志朋的博客 ...

  9. Springboot mini - Solon详解(三)- Solon的web开发

    Springboot min -Solon 详解系列文章: Springboot mini - Solon详解(一)- 快速入门 Springboot mini - Solon详解(二)- Solon ...

随机推荐

  1. Linux中 mv(文件移动)

    mv命令的功能有以下两种: source target mv 参数1 参数2 1.对文件或目录重新命名 如果源文件和目标文件在同一个目录下,mv的作用就是改文件名. 2.将文件从一个目录移到另一个目录 ...

  2. POM 标签大全详解

    <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/20 ...

  3. Redis操作类型

  4. ARM程序的RO段、RW段和ZI段 --Image

    Limit 含义了解RO,RW和ZI需要首先了解以下知识:ARM程序的组成此处所说的“ARM程序”是指在ARM系统中正在执行的程序,而非保存在ROM中的bin映像(image)文件,这一点清注意区别. ...

  5. VCTravel

    #pragma once #include <osgViewer/Viewer> #include <osgViewer/ViewerEventHandlers> #inclu ...

  6. hadoop目录命令

    下面是经常使用到的,以此记录备忘 1.查看hadoop目录 命令: hadoop fs -ls / 2.创建目录 命令:hadoop fs -mkdir /目录名 3.将文件上传hadoop中(也就是 ...

  7. JavaScript正则表达式补充

    定义正则表达式 /.../用于定义正则表达式 /.../g表示全局匹配 /.../i表示不区分大小写 /.../m表示多行匹配 JS正则匹配时本身就是支持多行,此处多行匹配只是影响正则表达式^和$,m ...

  8. Ehcache开启JMX支持

    Ehcache提供了基于JMX的监控支持,支持对以下几类信息的监控. CacheManager Cache CacheConfiguration CacheStatistics 按照JMX的规范,为了 ...

  9. python数据结构_递归_汉诺塔问题

    已经不是第一次写这个汉诺塔问题, 其实递归还真是不太好理解, 因为递归这种是想其实有点反人类, 为什么? 因为不太清楚, 写个循环一目了然, 用递归其实要把核心逻辑理清楚, 要不根本没法进行下去 所有 ...

  10. python return逻辑判断表达式(21)

    一.return逻辑判断表达式 and and:遇假则假,所以前面为假就不执行和判断后面直接返回假:前面为真则继续判断执行后面直到表达式结束或者出现假为止; # !usr/bin/env python ...