springboot使用一个全局的配置文件,配置文件名是固定的

  1. application.properties
  2. application.yml

配置文件的作用:修改springboot自动配置的默认值;SpringBoot在底层将所有的东西都给我们配置好了

 

YAML:是一个标记语言,

YAML以数据为中心,比json、xml等更适合做配置文件

以前的配置文件,大多都使用的是xxx.xml文件。

SpringBoot配置文件-----YAML_spring

是不是很简单的哇?

以前的xml是这么配置的,贼烦,一大推标签包裹着



8081

1.基本语法(把空格玩到极致的语法):

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

   以空格的缩进来控制层级关系;只要是左对齐的一列数据都是同一层级的

server:
port: 8081
path: /hello



**** 属性和值是大小写敏感的 ****
**** 请注意空格 ****
**** 属性和值之间也有空格 ****

2.值的写法

字面量:普通的值(数字,字符串,布尔)

k: v字面量直接来写;字符串默认不用加上单引号或者双引号

" ":双引号:不会转义字符串里面的特殊字符,特殊字符会作为本身想表示的意思

'' : 单引号:  会转义特殊字符,特殊字符最终只是一个普通的字符串

 

对象:Map(属性和值)(键值对)

k: v:在下一行来写对象的属性和值的关系;注意缩进

      对象还是k: v的方式
       yam

 friends:
lastName: zhangsan
age: 20



*******行内写法:

friends: { lastName: zhangsan, age: 18}

 

数组(List、Set): 用-值表示数组中的一个元素

pets:
- cat
- dog
- pig



行内写法:
pets: [cat,dog,pig]

 

配置文件注入:

配置文件:

 

person:
lastName: zhangsan
age: 18
boss: false
birth: 2017/12/12
maps: {k1: v1,k2: 12}
lists:
- lisi
- zhaoliu
dog:
name: 小狗
age: 2

javaBean

@Component
@ConfigurationProperties(prefix = "person")
public class Person {
private String lastName;
private Integer age;
private Boolean boss;
private Date birth;
private Map maps;
private List lists;
private Dog dog;

我们可以导入配置文件处理器,以后编写配置就有提示

  

org.springframework.boot
spring-boot-configuration-processor

SpringBoot配置文件-----YAML_特殊字符_02

配置文件yml还是properties他们都能获取到值,区别如上

配置文件注入值数据校验@Validated