美文网首页
4、YAML文件配置

4、YAML文件配置

作者: ravenLu | 来源:发表于2024-01-03 23:43 被阅读0次

SpringBoot项目中,大部分配置都有默认值,先替换默认配置,可以使用

application.properties或者application.yaml  

YAML扩展名.yam或者.yaml 

大小写敏感

使用缩进代表层级关系

相同部分只出现一次

新建一个application.yaml  写上 下面代码;运行

一、配置简单数据

语法:    数据名: 值

如:  password : 123456

二、配置对象

语法:

   对象: 

       属性名1: 属性值

       属性名2: 属性值

# 或者

对象: {属性名1: 属性值,属性名2: 属性值}

如下:

注意:属性名前面的空格个数不限,相同的缩进代表一个级别,每个属性前的空格数一样就好了。

三、自定义配置集合

语法:

    集合:

          - 值1

          - 值2

# 或者

集合:[值1,值2]

如下:

集合的元素也可以是对象,如下:

四、@value 读取配置文件中的数据

注:只能拿某一个值、对象里面某个熟悉、集合某个元素

写个controller,@Value 注解可以将配置文件中的值映射到Bean属性中

新建一个controller 读取值 写个方法读取值

运行代码,在浏览器输入地址   http://127.0.0.1:8888/yaml1 可以看到浏览器出现“调用成功”

浏览器调用方法 IDEA打印数据

五、@ConfigurationProperties 读取配置文件中的数据

通过@ConfigurationProperties可以将配置文件中的配置自动与实体进行映射,这样可以将yml文件中的配置对象属性直接映射到Bean中。

在yaml文件写上配置 新建一个包 创建KongFu类并写上字段与Set、Get、ToString方法

再创建一个类 yamlController2

选中,右击,生成 生成Getter方法

相同方式再生成 Setter

加上注解:@ConfigurationProperties(prefix ="book")

写个方法打印 在浏览器输入 http://127.0.0.1:8888/yaml2 可看到日志打印

六、占位符${}配置与读取

作用(1):配置文件的值、使用配置文件的值

在yaml文件配置值,如下:

创建个Controller,写上如下代码,读取myConfig.myPort,即server.port:

运行,在浏览器输入 http://127.0.0.1:8888/yaml3

可以看到IDEA控制台输出8888

七、占位符${}随机生成数

例如:

# 随机生成数字

port1: ${random.value} # 随机生成uuid,无短杠

port2: ${random.uuid} # 随机生成uuid,有短杠

port3: ${random.int} # 随机生成整数

port4: ${random.int(10)} # 随机生成10以内数字

port5: ${random.int(100,200)} # 随机生成100-200的数

port6: ${random.long} # 随机生成长整型值

port7: ${random.long(100,200)} # 随机生成长整型100-200的值

八、配置文件存放位置和优先级

1、applicatio.yml、application.properties存放位置可以是:

优先级从高到低是:

根目录下的/config子目录 > 根目录下 > resources下的/config目录 > resources目录中

另外,  .properties文件的优先级高于.yml

九、bootstrap 

bootstrap是application的父容器,优先级高于application,也支持yaml、application。主要用于从外部引入Spring应用程序的配置

相关文章

网友评论

      本文标题:4、YAML文件配置

      本文链接:https://www.haomeiwen.com/subject/imvvndtx.html