北京建设信源网站 怎么打不开,西安单位网站建设,遵义工作网招聘信息网,项目驱动式网页设计与制作教程文章目录properties和yml的区别① 定义和定位不同② 语法不同③ yml更好的配置多种数据类型④ yml可以跨语言⑤ 总结properties和yml的区别
这几天刚好看到Spring Boot当中有两种配置文件的方式#xff0c;但是这两种配置方式有什么区别呢#xff1f;
properties和yml都是S…
文章目录properties和yml的区别① 定义和定位不同② 语法不同③ yml更好的配置多种数据类型④ yml可以跨语言⑤ 总结properties和yml的区别
这几天刚好看到Spring Boot当中有两种配置文件的方式但是这两种配置方式有什么区别呢
properties和yml都是Spring Boot支持的两种配置文件它们可以看做Spring Boot在不同时期的两种“产品”。在Spring Boot时代已经不需要xml文件格式来配置文件了。取而代之的是properties或yml文件
properties配置文件属于早期也是目前创建Spring Boot2.x)默认的配置文件的格式而yml可以看做是对properties配置文件的升级属于Spring Boot的新版配置文件
properties和yml的区别主要体现在以下4点
定义和定位不同语法不同yml更好的配置多种数据类型yml支持多种语言通用性更好
① 定义和定位不同
properties翻译成中文是“属性”的意思所以它在创建之初就是用来在Spring Boot当中设置属性的。yml是YAML的缩写它的全称是Yet Another Markup Language翻译成中文是“另一种标记语言”
二者从定义可以看出它们的定位和层次是完全不同的properties只是用来配置一些属性的。而yml的格局和期望更大它的定位是”另一种标记语言“。所以这波格局上来说yml是在天花板上了
② 语法不同
properties和yml的语法区别很大properties配置文件的基本用法如下
# 配置项目启动端口
server.port8080
# 开启调试模式
debugtrue
# 配置数据连接信息
spring.datasource.urljdbc:mysql://127.0.0.1:3306/zy?characterEncodingutf8useSSLfalse
spring.datasource.nameroot
spring.datasource.password123456从上述基本语法可以看出properties的基本语法格式是keyvalue的形式而yml的配置文件基本语法如下
# 配置项目启动端口
server:port: 8080
# 开启调试模式
debug: true
# 配置数据连接信息
spring:datasource:url: jdbc:mysql://127.0.0.1:3306/zy?characterEncodingutf8useSSLfalsename: rootpassword: 123456yml格式有一个地方需要特别注意冒号后面那个空格不能省略否则程序会报错
properties: yml: 从上述的对比可以看出相比于properties来说yml的语法更加简洁并且可读性更高
③ yml更好的配置多种数据类型
yml除了可以很好的配置数据类型之外它还可以很方便的配置对象、集合等数据类型
在yml中配置对象数据类型
student:id: 1name: zhangsanage: 18或者使用行内写法配置对象与上面的写法效果一致
student: {id: 1, name: zhangsna, age: 18}在yml当中配置数组也有两种写法
animal:- dog- pig- catanimal: [dog, pig]④ yml可以跨语言
properties格式的配置文件只适用于Spring Boot项目也就是适用于Java开发而yml支持更多种开发语言它可以用在Java、PHP、Python、Ruby、JavaScript、等语言当中
作用如果一个公司有不同语言的开发团队并且使用了配置中心那么这些不同语言的开发团队是不是就可以使用同一份配置文件了
⑤ 总结
properties和yml都是Spring Boot支持的两种配置文件其中yml格式的配置文件可以看做是对properties配置文件的升级。它们的主要区别有4点定义和定位不同、语法不同、yml可以更好的配置多种数据类型、yml可以跨语言使用