Spring —— Spring Boot 配置文件

本文详细介绍了Spring Boot的配置文件,包括properties和yml两种格式。properties配置文件的基本语法和缺点,以及如何通过@Value注解读取配置。然后深入探讨了yml配置文件的语法、优点和读取方式,包括配置不同类型数据、对象和集合。文章还对比了properties和yml的优劣,并展示了如何设置不同环境的配置文件。
摘要由CSDN通过智能技术生成
JavaEE传送门

JavaEE

Spring —— Bean 作用域和生命周期

Spring —— Spring Boot 创建和使用



Spring Boot 配置文件

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

  1. 系统使用的配置文件 (系统配置文件), 如端口号的配置, 链接数据库的配置
  2. 用户自定义配置文件

Spring Boot 配置文件格式

  1. .properties
  2. .yml (yaml)

# 注意事项 #

  1. 当一个项目中, 存在两种格式的配置文件, 并且两个配置文件间中设置了相同的配置项, 但之不同时. .properties 配置文件的优先级最高, 但加载完 .properties 文件之后, 也会加载 .yml 文件的配置信息.
  2. 理论上讲 .properties 可以和 .yml 共存, 但实际业务中, 我们通常会采用一种统一的配置文件格式, 这样可以更好的维护.

properties配置文件

properties 基本语法

# properies 以键值的形式配置的: key=vaule.

# 设置端口号
server.port=8888

# 我们还可以自定义配置项

myTest=gujiu

我们还可以读取配置项中的内容, 使用 @Value 注解来实现, @Value 注解使用 “${}” 的格式读取.

@Controller // 当前类为控制器
@ResponseBody // 返回的是数据, 而非页面
public class TestController {
   
    @Value("${myTest}")
    private String mytest;

    @RequestMapping("/getconf")
    public String getConfig() {
   
        return mytest;
    }
}

注: 不可以用 @Value(“myTest”) 读取, 其含义是, 将字符串赋值给 mytest 变量.


properties 缺点

当我们想配置数据库的时候.

# 连接数据库配置
spring.datasource.url=jdbc:mysql://127.0.0.1:3306/testdb?characterEncoding=utf8
spring.datasource.username=root
spring.datasource.password=123456

从上述配置 key 中可以看出, properties 配置文件中会有很多的冗余信息.

想要解决这个问题,就可以使用 yml 配置⽂件的格式化了.


yml 配置文件

yml (YAML - Yet Another Markup Language) 翻译成中文 “另一种标记语言”

yml 优点

  1. yml 是一个可读性高, 写法简单, 易于理解, 他的语法和 JSON 语言类似.
  2. yml 支持更多的数据类型, 它可以简单表达清单 (数组), 散列表, 标量等数据形态, 它使用空白符号缩进和大量依赖外观的特色, 特别时候来表达或编辑数据结构, 各种配置文件等.
  3. yml 支持更多的编程语言, 它不只是 Java 中可以使用在 Golang, PHP, Python, Ruby, JavaScripy, Perl 中.

<

  • 11
    点赞
  • 19
    收藏
    觉得还不错? 一键收藏
  • 14
    评论
评论 14
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值