为什么使用yml而不是用properties文件

简介: 两个关键点

两个关键点:


第一个是yml是支持中文内容的,properties想使用中文只能用unicode编码


第二个是顺序问题,properties是不保证加载顺序的,yml有先后顺序,实际用例比如springcloud的zuul网关路由配置,如果一个uri同时满足两个匹配规则,properties你是不知道它到底使用了哪个规则的,而yml则一定是使用了靠后的那个路由规则


Java 的 Properties 加载属性文件后是无法保证输出的顺序与文件中一致的,因为 Properties 是继承自 Hashtable , key/value 都是直接存在 Hashtable 中的,而 Hashtable 是不保证进出顺序的。


总有时候会有关心顺序一致的需求,恰如有 org.apache.commons.collections.OrderdMap(其实用 LinkedHashMap 就是保证顺序) 一样,我们也想要有个 OrderdProperties。


目录
相关文章
|
3月前
|
安全 Java 数据库连接
《Spring Boot配置文件大揭秘:看懂 application.yaml 与 bootstrap.yaml 的不同》
《Spring Boot配置文件大揭秘:看懂 application.yaml 与 bootstrap.yaml 的不同》
104 0
|
4月前
|
Java C++
SpringBoot中的properties,yml,yaml的区别
SpringBoot中的properties,yml,yaml的区别
34 0
|
5月前
|
Java Go 数据库
SpringBoot配置文件(properties & yml)
SpringBoot配置文件(properties & yml)
|
10月前
|
JSON Java Go
SpringBoot 配置文件:什么是配置文件?配置文件能干什么?
SpringBoot 配置文件:什么是配置文件?配置文件能干什么?
|
11月前
|
Java Spring
properties和yaml配置文件
properties和yaml配置文件
104 0
|
12月前
|
前端开发 Java API
SpringBoot 常用的配置文件 application.yml和 bootstrap.yml的区别
SpringBoot默认支持properties和YAML两种格式的配置文件。前者格式简单,但是只支持键值对。如果需要表达列表,最好使用YAML格式。SpringBoot支持自动加载约定名称的配置文件,例如application.yml。如果是自定义名称的配置文件,就要另找方法了。可惜的是,不像前者有@PropertySource这样方便的加载方式,后者的加载必须借助编码逻辑来实现。
346 0
|
Java Spring
application.properties或.yml文件
application.properties或.yml文件
92 0
application.properties或.yml文件
|
Java Maven
springboot读取yml配置文件
springboot读取yml配置文件
232 0
springboot 使用yml配置文件自定义属性
springboot 中在application.yml文件里自定义属性值,配合@Value注解可以在代码中直接取到相应的值,如在application.yml中添加
Springboot 读取配置文件application.properties (yml)的四种方式
Springboot 读取配置文件application.properties (yml)的四种方式
378 0
Springboot 读取配置文件application.properties (yml)的四种方式