简介

YAML 是 “YAML Ain’t Markup Language”(YAML 不是一种标记语言)的递归缩写。在开发的这种语言时,YAML 的意思其实是:“Yet Another Markup Language”(仍是一种标记语言)。

非常适合用来做以数据为中心的配置文件

基本语法

● key: value;kv之间有空格
● 大小写敏感
● 使用缩进表示层级关系
● 缩进不允许使用tab,只允许空格
● 缩进的空格数不重要,只要相同层级的元素左对齐即可
● '#‘表示注释
● 字符串无需加引号,如果要加,’'与""表示字符串内容 会被 转义/不转义

数据类型

  • 字面量:单个的、不可再分的值。date、boolean、string、number、null
k: v
  • 对象:键值对的集合。map、hash、set、object
行内写法:  k: {k1:v1,k2:v2,k3:v3}
#或
k: k1: v1k2: v2k3: v3
  • 数组:一组按次序排列的值。array、list、queue
行内写法:  k: [v1,v2,v3]
#或者
k:- v1- v2- v3
  • 示例
@ConfigurationProperties(prefix = "person")
@Component
@Data
@ToString
public class Person {private String userName;private Boolean boss;private Date birth;private Integer age;private Pet pet;private String[] interests;private List<String> animal;private Map<String, Object> score;private Set<Double> salarys;private Map<String, List<Pet>> allPets;
}@Data
public class Pet {private String name;private Double weight;
}
# yaml表示以上对象
person:userName: zhangsanboss: falsebirth: 2019/12/12 20:12:33age: 18pet: name: tomcatweight: 23.4interests: [篮球,游泳]animal: - jerry- marioscore:english: first: 30second: 40third: 50math: [131,140,148]chinese: {first: 128,second: 136}salarys: [3999,4999.98,5999.99]allPets:sick:- {name: tom}- {name: jerry,weight: 47}health: [{name: mario,weight: 47}]

@RestController
public class HelloController {@AutowiredPerson person;@RequestMapping("/person")public Person person(){return person;}}

定义义类绑定的配置提示

自定义的类和配置文件绑定一般没有提示。

  • 引入依赖
        <dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-configuration-processor</artifactId><optional>true</optional></dependency><build><plugins><plugin><groupId>org.springframework.boot</groupId><artifactId>spring-boot-maven-plugin</artifactId><configuration><excludes><exclude><groupId>org.springframework.boot</groupId><artifactId>spring-boot-configuration-processor</artifactId></exclude></excludes></configuration></plugin></plugins></build>

[SpringBoot2]yaml相关推荐

  1. 这是一篇优雅的Springboot2.0使用手册

    最近再研究springboot的原理?颇有收获,现在让我分享一下springboot如何使用吧~ 想要解锁更多新姿势?请访问我的博客 啥是Springboot 和书上理解的不同,我认为Springbo ...

  2. springboot2 war页面放在那_成为微服务架构师--SpringBoot2学习笔记

    <"爱读书"--给你讲技术>,我来看书,你来进步,让我们开始吧! 本书简介 书名为<SpringBoot2企业应用实战>,这是一本简单易懂的SpringBo ...

  3. 零基础快速入门SpringBoot2.0教程 (二)

    一.SpringBoot2.x使用Dev-tool热部署简介:介绍什么是热部署,使用springboot结合dev-tool工具,快速加载启动应用官方地址:https://docs.spring.io ...

  4. springboot2整合mysql5_SpringBoot2整合SSM框架详解

    SpringBoot2整合SSM框架详解 发布时间:2019-01-15 21:33, 浏览次数:1218 , 标签: SpringBoot SSM <>开发环境 * 开发工具:Eclip ...

  5. Nacos 集群 Nginx MySql SpringBoot2.x 微服务_04

    接上一篇: Nacos 集群整合 Nginx 实现反向代理.负载均衡_03 文章目录 一.配置规则 1. 域名登录nacos 2. 测试验证 二.SpringBoot2.x 微服务 2.1. 依赖引入 ...

  6. Nacos 集群集成SpringBoot2.x 微服务_02

    文章目录 一.SpringBoot2.x 微服务 1. 依赖引入 2. bootstrap.yaml配置 3. 测试类 二.nacos配置规则 2.1. 登录nacos 2.2. 配置规则 三.测试验 ...

  7. SpringBoot2.1.5 (35)---安全

    SpringBoot2.1.5 (37)---安全 安全 如果添加了Spring Security的依赖,那么web应用默认对所有的HTTP路径(也称为终点,端点,表示API的具体网址)使用'basi ...

  8. SpringBoot2.x(3)---基础入门

    SpringBoot2.x(3)---基础入门 一.概述 Spring Boot设计目的是用来简化新Spring应用的初始搭建以及开发过程.Spring Boot并不是对Spring功能上的增强,而是 ...

  9. SpringBoot2尚硅谷笔记

    SpringBoot2 网课链接 https://www.bilibili.com/video/BV19K4y1L7MT?from=search&seid=184166163201622010 ...

最新文章

  1. 百度大规模Service Mesh落地实践
  2. 【算法题】天平砝码称重
  3. 后端接口的幂等性(转)
  4. asp.net ajax技巧6
  5. java 异步_聊聊java高并发系统之异步非阻塞
  6. 不敢下水游泳,莫慌!VR带你畅游水底世界
  7. 【linux多线程】c++多线程的几种创建方式
  8. 2022 各国程序员薪资大揭秘!
  9. linux mbr转gpt分区,linux将GPT分区转换为MBR、RHEL GPT报错
  10. 专属圣诞树+2022跨年HTML(腾讯云部署)
  11. bellman - ford算法c++
  12. 管理SQL Server AlwaysOn(5)——常规监控(1)——常规监控
  13. THORChain被盗:黑客资金溯源报告
  14. 思科系统命令行输入快捷键
  15. android 模拟nfc tag,android nfc tag3 调试日记
  16. 辞职社保如何无缝衔接
  17. JAVA toString方法详解
  18. OpenCL 通用编程与优化(15)
  19. python通过connect对象连接数据库对吗_python连接数据库:
  20. 未明学院:真实跟拍年薪50万的金融妹子的一天...

热门文章

  1. Git的使用(推荐命令行模式)
  2. thinkphp出现Call to undefined function Think\C() in ... online 313
  3. 【ArcGIS风暴】实验:公路建设成本的计算
  4. IOS之学习笔记二(块)
  5. Android Studio之package org.junit does not exist解决办法
  6. Android之集成友盟推送功能
  7. 挑战程序设计竞赛部分题目选择排序、二分查找找出下标、深度优先算法、求三角形max周长、蚂蚁算法、操作excel
  8. 实现html5音乐的自动播放,html5中audio实现播放列表和自动播放
  9. php输出二维数组中指定内容,HP将MYSQL内容读到二维数组并按指定列输出
  10. 据说很多女生都想知道男生是如何上厕所的?