一、简介

SpringBoot使用一个全局的配置文件,配置文件名是固定的,主要有两种格式:properties和yml

  • application.properties
  • application.yml

配置文件的作用是:修改SpringBoot自动配置的默认值,SpringBoot在底层会进行自动配置

yml 全称 YAML(YAML Ain’t Markup Language),以数据为中心,比 json、xml 等更适合做配置文件

SpringBoot加载yml配置文件的位置===配置文件加载位置

二、YAML语法

  • k:(空格)v:表示一对键值对(空格必须有

  • 以空格的缩进来控制层次关系

  • 只要是左对齐的一列数据,都是统一层级的

  • 属性和值都是大小写敏感

YAML支持的数据结构如下所示:

数据类型 描述 示例说明
字面量 单个的、不可再分的值 1)k: v:字面值直接来写
2)字符串默认不用加上单引号或者双引号
3)"":双引号;不会转义字符串里面的特殊字符;特殊字符会作为本身想表示的意思
name: “zhangsan \n lisi”:输出;zhangsan 换行 lisi
4)’’:单引号;会转义特殊字符,特殊字符最终只是一个普通的字符串数据
name: ‘zhangsan \n lisi’:输出;zhangsan \n lisi
对象 键值对的集合,比较常用的方式 1)k: v:在下一行来写对象的属性和值的关系;注意缩进
2)对象还是k: v的方式;如下的dog标示对象,name与age表示属性
dog
    name: beibei
    age: 1
数组 一组按次序排列的值 1)一组连词线(-)开头的行,构成一个数组,注意缩进和空格
2)数组,对象可以组合使用
Animal:
‐ cat
‐ dog
复合结构 以上写法的任意组合

三、案例

准备演示所需的POJO对象

/*** 狗 实体类*/
public class Dog {private Integer id;private String name;private Integer age;//被依赖项可以不加 @ConfigurationProperties 注解,但是必须提供 getter、setter、toString 方法
}
/*** @ConfigurationProperties 表示 告诉SpringBoot将本类中的所有属性和配置文件中相关的配置进行绑定;*  * prefix = "user" 表示 将配置文件中key为user的下面所有的属性与本类属性进行一一映射注入值,如果配置文件中*  * 不存在"user"的key,则不会为POJO注入值,属性值仍然为默认值*  * <p/>*  * @ConfigurationProperties (prefix = "user") 默认从全局配置文件中获取值然后进行注入*  * @Component 将本类标识为一个Spring 组件,因为只有是容器中的组件,容器才会为@ConfigurationProperties提供此注入功能*/
@Component
@ConfigurationProperties(prefix = "user")
public class User {private Integer id;private String lastName;private Integer age;private Date birthday;private List<String> carList;private Map<String, String> cityMap;private Dog dog;//必须提供 getter、setter 方法才能注入值
}

示例配置文件如下:

user:id: 120lastName: 张三age: 24birthday: 2020/03/31carList:- bmw- buck- hafu- 五菱cityMap: {mapK1: mapV1, mapK2: mapV2}dog:id: 3245name: 哈士奇age : 9

取值的时候注意:必须使用 @Resource、@Autowired 注入 User 对象才能获取到它注入的属性值,直接 new User() 对象是没有注入的默认值的。

SpringBoot配置文件YAML相关推荐

  1. SpringBoot配置文件yaml书写方式

    SpringBoot配置文件yaml书写方式 学习目标 SpringBoot配置文件yaml书写方式 1.properties 2.yaml 2.1.简介 2.2.基本语法 2.3.数据类型 代码示例 ...

  2. SpringBoot配置文件YAML配置注入(详解)

    目录 一.SpringBoot配置文件 1. SpringBoot默认配置文件 2. 配置文件的作用 3. 配置文件的位置 4. 多环境切换 方式一:多配置文件 方式二:一个配置文件(yaml的多文档 ...

  3. springboot 配置文件-yaml的用法

    04.配置文件 1.文件类型 1.1.properties 同以前的properties用法 1.2.yaml 1.2.1.简介 YAML 是 "YAML Ain't Markup Lang ...

  4. SpringBoot配置文件-yaml的用法

    配置文件 1.文件类型 1.1.properties 同以前的properties用法 1.2.yaml 1.2.1.简介 YAML 是 "YAML Ain't Markup Languag ...

  5. Spring-Boot配置文件.yaml和.yml格式

    .ymal和yml配置文件 一.yaml文件介绍 二.yaml不同类型写法 String(字符串默认不加引号,单引号会转义特殊字符) 布尔 数值 小数 日期(yyyy/MM/dd HH:mm:ss) ...

  6. springboot的yaml属性配置文件注入

    SpringBoot中默认的从application.properties文件中加载参数 我们通常把springboot中资源目录下的application.properties文件改成applica ...

  7. springboot配置文件加载顺序

    1.同一目录下,properties配置优先级 > YAML配置优先级. 2.SpringBoot配置文件可以放置在多种路径下,不同路径下的配置优先级有所不同.可放置目录(优先级从高到低) fi ...

  8. apache 配置文件内使用 8080 端口_【SpringBoot 框架】- SpringBoot 配置文件

    一.SpringBoot配置文件类型 SpringBoot是基于约定的,所以很多配置都有默认值,但如果想使用自己的配置替换默认配置的话 ,就可以自己编写配置文件进行相应配置,起步依赖spring-bo ...

  9. Idea Spring Boot配置文件.yaml或.properties不能自动提示的有效解决办法

    SpringBoot项目的配置文件.yaml/.yml/.properties文件编写的时候没有自动提示,网上的解决办法五花八门,不一定适合具体个人的IDE环境,下面总结一套能解决绝大部分情况的方案: ...

最新文章

  1. 我花了10个小时,写出了这篇K8S架构解析
  2. 在Clojure中使用class
  3. ELFHash的理解
  4. MySQL高级 - like模糊匹配
  5. (转)springboot:添加JSP支持
  6. sql join 示例_SQL CROSS JOIN与示例
  7. AcWing479.加分二叉树(区间DP)题解
  8. zabbix源码安装
  9. s3c2440中蜂鸣器的打开与关闭
  10. 反向传播算法BP公式推导
  11. C语言库函数WindowsSDK...
  12. 原代码审计笔记-安全缺陷
  13. 用计算机投屏图片,手机投屏Windows7电脑图文教程
  14. 怎样将微信热门文章采集到自己的公众号中?
  15. html 图片转换成word,在Word中通过把编辑的图片另存为HTML文件实现转换图片
  16. 【戒焦戒躁,can win】Linux--inode
  17. 小米电视4A Android8,小米电视4A 删除内置应用及其去广告攻略
  18. SQLTRACE的几个用法
  19. 苹果手机4g网速慢怎么办_手机推荐:选华为5G还是苹果4G:内行人说出了大实话!...
  20. CC1110EM 433MHz 无线模块一个简单收发程序

热门文章

  1. 电梯为什么显示停止服务器,教你奥的斯服务器怎么看故障
  2. 京东运营插件_技术中台产品经理必知的那些易混词儿(1):组件、套件、 中间件、插件……...
  3. 管理数百个Kubernetes集群需要什么?
  4. 初识python必知的6个知识点
  5. python编程之slice与indices函数用法
  6. 练习使用 Linux 的 grep 命令
  7. python中使用html前端页面显示图像预测结果(Pycharm)
  8. New Year Tree(dfs序+线段树+二进制)
  9. 树上问题 ---- Codeforces Round #722 (Div. 1) C. Trees of Tranquillity [dfs序区间的性质+最大不相交区间的性质]
  10. wamp安装和配置_Joomla安装教程