栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

关于springboot的核心配置文件application的类型

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

关于springboot的核心配置文件application的类型

文章目录
  • 前言
  • 一、properties类型
  • 二、YAML类型
  • 三、关于这些类型的优先级问题
  • 总结


前言

在绝大数情况下springboot只需要application文件就可以完成项目中的所有配置,但application文件存在两种格式分别是(properties和YAML),下面来介绍这两种类型的区别与用法。


一、properties类型

properties类型是springboot项目默认使用的开发配置文件,一般你创立项目,默认生成的是这个,但是需要注意的是我们开发项目一般不使用它,此话怎讲?且听我娓娓道来,现在来介绍该类型的用法,它核心格式一般是键值对,其中键和值之间一般用"="等号隔开,键通过.进行语义分割,用来表示层级关系,拿配置数据库来举例子,可以看到对SQL数据库配置如下:

spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
spring.datasource.username=xxx
spring.datasource.password=xxx
spring.datasource.url=jabc:mysql://localhost:3306/xxx?serverTimezone=UTC&characterEncoding=UTF-8

可以看到我上述的这些信息有一个弊端,就是键与键之间无法共享上级键名,你还是要老老实实的把层级重新敲一遍,而YAML类型就避免了这一弊端,往下看。

二、YAML类型

YAML类型是一种借鉴了XML、JSON等语言的语法创造出来的应用于配置文件的新语法,
基本特点是
1.大小写敏感
2.使用缩进表示层级关系
3.键的后面是冒号空格在在加上值
4.#号表示注释
下面再拿MySQL数据库举个例子,同时配置数据库用YAML类型的配置文件

spring:
 datasource:
  username: xxx
  password: xxx
  driver-class-name: com.mysql.cj.jdbc.Driver
  url: jabc:mysql://localhost:3306/xxx?serverTimezone=UTC&characterEncoding=UTF-8

可以看到领用空格缩进来表示层级关系将大大减少敲代码的量(简称偷懒)所以一般我们手动会将核心配置文件改一下后缀,但是配置文件也不过多几千字的信息量,复制分享某一段配置场景时候,YAML会牵扯大量层级结构以及无关节点,而properties却没有,但是我还是偏向于yml,因为能偷懒就偷懒原则,打不了敲一点注释,是吧。

三、关于这些类型的优先级问题

实际上是有三种配置格式,这里我有一种yml格式,以我的理解就是yaml,但是确实存在这玩楞,这时候就会出现一种情况,假如三个配置文件都存在,那到底那个生效,了解不了这句话意思,可以类比css选择器优先级顺序,到底哪个生效,结果如下
properties>yml>yaml
不同配置文件根据优先级进行覆盖

总结

希望看了这篇能对springboot核心配置有一定程度的了解,欢迎批评指正,但不喜勿喷。

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/1006438.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号