Spring Boot配置文件
对SpringBoot配置文件命名时名字必须为application,可以时properties/yml类型的文件
配置文件(系统配置文件),可以进行如端口号的设置、连接数据库的配置等。
properties和yml执行优先级
properties 配置文件是最早期的配置⽂件格式,也是创建 Spring Boot 项目默认的配置⽂件
(1)当 properties 和 yml ⼀起存在⼀个项目中时,如果配置文件中出现了同样的配置,比如 properties 和 yml 中都配置了“server.port”, 那么这个时候会以 properties 中的配置为主,也就是 .properties 配置文件的优先级最高,但加载完 .properties 文件之后,也会加载 .yml 文件的配置信息。
(2)
通常情况一个项目中只会存在一种格式的配置文件。
properties语法
形式:key=value
@Value注解获取
properties配置文件值
注意:使用properties配置文件,中文会出现乱码
#数据库配置
spring.datasource.url=jdbc:mysql://127.0.0.1:3306/testdb?characterEncoding=utf8
sprig.datasource.user = root
spring.datasource.password=123456
可以看出代码比较冗余,
想要解决这个问题,就可以使⽤ yml 配置⽂件的格式化
yml配置文件
yml 优点
(1)yml 是⼀个可读性⾼,写法简单、易于理解,它的语法和 JSON 语⾔类似。
(2)yml ⽀持更多的数据类型,它可以简单表达清单(数组)、散列表,标量等数据形态。它使用空百符号缩进和大量依赖外观的特⾊,特别适合⽤来表达或编辑数据结构、各种配置⽂件等。
(3)yml ⽀持更多的编程语⾔,它不止是 Java 中可以使⽤在 Golang、PHP、Python、Ruby、
JavaScript、Perl 中。
yml语法
它的基础语法是“key: value”,注意 key 和 value 之间使⽤英⽂冒号加空格的⽅式组成的,其中的空格不可省略
yml配置文件可以显示中文
代码简便
(1)字符串默认不⽤加上单引号或者双引号。
(2)单引号会转义特殊字符,特殊字符最终只是⼀个普通的字符串数据
(3)双引号不会转义字符串里面的特殊字符;特殊字符会作为本身想表示的意思
yml配置对象
yml文件:
Student:
注意:以上代码中的 getter 和 setter ⽅法不能省略。此处使用lombok中的@Data注解自动填写get/set方法以及toString方法等
yml配置集合
获取方式与对象相似
设置不同环境的配置⽂件
在开发中,有时需要不同的运行环境及配置,那么就需要修改配置文件,比较麻烦,因此我们可以创建其他配置文件,通过主文件执行即可
1、创建不同环境的配置⽂件:
application-dev.yml
application-prod.yml
2、在 application.yml 中设置运行环境
spring.profiles.active=dev
3、以下是yml文件执行配置
从8080端口执行其他配置后变为9090