在项目中所有重要的数据都是在配置文件中进行相关的配置
例如
针对上述内容, 可以将 Spring Boot 配置文件划分为 2 类
举个栗子
打包后的代码由 .java → .class
(不允许被修改)
此时如果想要进行修改端口号等操作, 就不能通过修改代码的方式进行
可以通过配置文件进行相应的修改
找到对应的 Jar 包
利用压缩文件打开 Jar 包
修改对应的配置文件即可
.properties
.yml
.properties
的出现时间早于.yml
, 其功能都是类似的
但优先执行.properties
(出现较早)
例如@PostConstruct
与init-method
都属于初始化方法
区别在于
@PostConstruct
使用注解进行初始化(出现较晚)
init-method
使用xml进行初始化(出现较早)
优先执行@PostConstruct
(出现较晚)
利用application.properties
设置端口号
利用application.yml
设置端口号
利用 application.properties
+ application.yml
设置端口号
优先执行application.properties
设置的端口号
注意
虽然.properties
与.yml
可同时存在, 但通常会选择其中一种格式进行使用(劲酒虽好可不要贪杯呦~~)
properties → 属性
properties 是以键值对的形式配置的
properties 的语法为 Key=Value
properties 的注释为 #
利用注解@Value("${所需读取的对象}")
读取配置文件
yml → YAML(Yet Another Markup Language)的缩写 → 另一种标记语言
yml 是树形结构的配置文件
yml 的语法为 Key: Value
:
, 分割键值对(注意冒号后面的空格)
yml 的注释为 #
利用注解@Value("${所需读取的对象}")
读取配置文件
在 yml 中输入 str(字符串)有 3 种格式
str
(直接输入)'str'
(利用单引号将字符串括起来)"str"
(利用双引号将字符串括起来)输入字符串(未添加 \n)
运行结果
输入字符串(添加 \n)
运行结果
结果分析
str
直接输入字符串 → 所见即所得
'str'
利用单引号将字符串括起来再添加\n
→ 所见即所得
"str"
利用双引号将字符串括起来再添加\n
→ \n
后面的内容换行
在 yml 中配置对象有 2 种方式
方式1
cat:
type: 大橘
price: 996
age: 1
方式2
cat: {type: 1, price: 007, age: 1}
读取对象
定义一个Cat
类
.yml
)中的对象注意
实体类中的属性名要和配置文件中的 Key 一致
实体类需要包含 setter
(setter → 为实体类中的属性设置对应的值, 依据读取到的对象的值)
实体类中的属性名要和配置文件中的 Key 一致
将读取到的对象的信息输出在控制台
在 yml 中配置集合有 2 种方式
方式1
cats:
types:
- 大橘
- 布偶
- 蓝猫
方式2
cats: {types: [大橘, 布偶, 蓝猫]}
读取集合
定义一个Cats
类
.yml
)中的对象注意
实体类中的集合名要和配置文件中的集合一致
实体类需要包含 setter
(setter → 为实体类中的集合设置对应的值, 依据读取到的集合的值)
实体类中的集合名要和配置文件中的集合一致
将读取到的对象的信息输出在控制台
当配置文件中包含中文, 使用 properties 读取需要修改 2 处配置
当配置文件中包含中文, 使用 yml 无需修改配置
使用 properties 读取
配置文件的编码格式
读取配置文件时的编码格式
使用 properties 链接数据库
使用 yml 链接数据库
对比分析
使用 properties 链接数据库时, 比较冗余
每个步骤都包含spring.datasource
使用 yml 链接数据库
yml 是树形结构的配置文件, 对比 properties 较为便捷
根据业务的需求创建不同的配置文件
例如
开发环境下的配置文件, 生产环境下的配置文件…
注意
命名规则为application-环境.对应的配置文件格式
例如application-dev.yml
(开发环境下的配置文件)
调用开发环境下的配置文件
创作不易,如果对您有帮助,希望您能点个免费的赞
大家有什么不太理解的,可以私信或者评论区留言,一起加油