SpringBoot配置文件

1.配置文件的作用
整个项目中所有重要的数据都是在配置文件中配置的,比如:

  • 数据库的连接信息(包含用户名和密码的设置);
  • 项目的启动端口;
  • 第三方系统的调用秘钥等信息;
  • ⽤于发现和定位问题的普通日志和异常日志等。

想象⼀下如果没有配置信息,那么 Spring Boot 项目就不能连接和操作数据库,甚至是不能保存可以用于排查问题的关键日志,所以配置文件的作用是非常重要的。

2.配置文件有两种格式:
.properties
.yml

.properties是老版配置文件,.yml是新版配置文件
在这里插入图片描述

一、properties详解

IDEA社区版不支持 properties格式的日志的提示,需要安装相应插件。
在这里插入图片描述

3.1properties 基本语法

(ps:小技巧,配置文件中使用 # 来添加配置信息)

以键值的形式配置, key = value

日志中包含两种配置信息,一种是系统级别的配置信息,另一种是用户自定义的配置信息。
在这里插入图片描述

3.2读取配置文件

使用@Value 注解
语法:@Value 注解(“${xxx}”)
在这里插入图片描述

3.3 properties缺点分析

在这里插入图片描述
从上述可以看出,properties 配置文件中会有很多的冗余的信息。
所以就有了yml,从而可以解决这个问题~~
如下图:
在这里插入图片描述

二、yml详解

2.1yml基本语法

key: value
注意 key 和 value 之间使用英文冒号空格的⽅式组成的,其中的空格不可省略
在这里插入图片描述

2.2 properties读取配置文件

yml和properties读取配置文件的方法一致,使用@Value 注解

注意事项:value 值加单双引号
在这里插入图片描述

从上述结果可以看出:

  • 字符串默认不用加上单引号或者双引号。
  • 单引号会转义特殊字符,特殊字符最终只是⼀个普通的字符串数据。
  • 双引号不会转义字符串里面的特殊字符;特殊字符会作为本身想表示的意思。

2.3 yml可以配置对象

2.3.1在yml中配置对象

有两种书写方式:
在这里插入图片描述

2.3.2读取配置中的对象

此时不能使用不能使用 @Value,因为其只能读取单个值,不能读取对象。
而需使用**@ConfigurationProperties**
在这里插入图片描述
在这里插入图片描述

2.4yml可以配置集合

2.4.1在yml中配置对象

在这里插入图片描述

2.4.2读取配置中的对象

同样使用@ConfigurationProperties
在这里插入图片描述

三、yml VS properties总结

1.properties 是以 key=value 的形式配置的键值类型的配置文件,而 yml 使用的是类似 json 格式的树形配置方式进行配置的,yml 层级之间使用换行缩进的方式配置,key 和 value 之间使用“: ”英文冒号加空格的方式设置,并且空格不可省略。
2.properties 为早期并且默认的配置文件格式,但其配置存在⼀定的冗余数据,使⽤ yml 可以很好的解决数据冗余的问题。
3.yml 通用性更好,支持更多语言,如 Java、Go、Python 等,如果是云服务器开发,可以使⽤⼀份配置⽂件作为 Java 和 Go 的共同配置⽂件。
4.yml 虽然可以和 properties 共存,但⼀个项目中建议使用统⼀的配置类型文件。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值