Spring Boot 学习(四)--- 配置文件(prperties、yaml)

本文详细介绍了SpringBoot中YAML配置文件的使用方法,包括基本语法、数据类型及实例演示,并给出了配置提示功能的实现方式。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Spring Boot 学习(四)— 配置文件

springboot中的配置文件一般分为两种:properties、yaml(yml);其中最为熟悉的是properties文件,今天主要是讲解yaml的使用

一、yaml的基本语法:

  • 格式: key: value 注意 “key:” 和 “value” 之间是有空格的
  • 大小写敏感
  • 缩进表示层级关系
  • 缩进不允许tab,允许空格,但是在idea中使用时,可以使用tab
  • 缩进的空格不重要,相同的层级只要左对齐即可
  • 注释:#
  • 字符串无需添加引号"",如果添加的话,请注意单双引号的含义不同,如下:
    • 双引号(""):字符串内容不会被转义
    • 单引号(’’): 字符串内容会被转义

二、数据类型

  • 字面量:单个的、不可再分的值。date、boolean、string、number、null
# 字面量:
k: 字面量
  • 对象:键值对的集合。map、hash、set、object
# 对象:k={k1:v1,k2:v2,k3:v3}
k: 
 k1: v1
 k2: v2
 k3: v3
  • 数组:一组按次序排列的值。array、list、queue
# 数组:k = [v1,v2,v3,v4]
k: 
 - v1
 - v2
 - v3
 - v4

三、实例:

@Component   //将该类放入容器中,这样才能使用springboot带来的功能
@ConfigurationProperties(prefix = "my")  //自动配置绑定,将配置文件中的属性对应该类中的属性,进行绑定并赋值
public class Student {
    private String name;
    private String className;
    private String age;
    private Map<String,Integer> grade;
    private Family family;  //是一个对象
    private List like;
}
my:
  name: 张三
  className: 1515
  age: 18
  grade:
    class1: 99
    class2: 89
    class3: 65
    class4: 33
    class5: 98
    class6: 78
  family:
    father: 张二
    mather: 李四
    sister:brother: 张五
  like:
    - 篮球
    - 足球
    - 电影
    - 英语

四、配置提示

在properties中编辑配置项,系统会为我们提供一些提示,但是我们自动配置绑定时,不会自动提示我们有那些属性,因此开发起来非常不爽,但是springboot为我们提供了该功能,但是要导入依赖,如下:

<!--pom.xml文件中:-->
<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-configuration-processor</artifactId>
    <optional>true</optional>
</dependency>

至此我们就可以在yaml中配置绑定属性时,就会出现提示;但是我们又出现了一个问题,导入该依赖虽然方便了配置,但是对我们的业务没有帮助,在我们项目打包时,会打包多余的代码,怎么办呢?其实springboot为我们提供了相关配置,只需要在pom.xml文件中配置如下代码即可:

 <build>
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
                <configuration>
                    <excludes>
                    <!--主要代码:-->
                        <exclude>
                            <groupId>org.springframework.boot</groupId>
                            <artifactId>spring-boot-configuration-processor</artifactId>
                        </exclude>
                    </excludes>
                </configuration>
            </plugin>
        </plugins>
    </build>

至此,在我们打包时便不会对spring-boot-configuration-processor 依赖进行打包

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值