专注于 JetBrains IDEA 全家桶,永久激活,教程
持续更新 PyCharm,IDEA,WebStorm,PhpStorm,DataGrip,RubyMine,CLion,AppCode 永久激活教程

SpringBoot:SpringBoot的配置(yaml文件方式和properties文件方式)

1、配置文件

(1)全局的配置文件

名称有两种:

application.properties和application.yml

(2)作用

修改springboot自动配置的默认值(之所以springboot能够自动启动,就是因为springboot的底层已经配置了)

2、YAML(YAML Aint’s Markup Language)

(1)特点

以数据为中心,比json和xml等更适合做配置文件

(2)yaml配置方式与xml方式对比

yaml方式:

server:
  port: 8081

xml方式:

<server>
    <port>8080</port>
</server>

测试:

110_1.png

要注意:port:后面要加空格

3、YAML语法

(1)基本语法

  • k:空格v  表示一对键值对
  • 以空格的缩进来控制层级关系,只要是左对齐的一列都指同一层级,如:
server:
  port: 8081
  path: /nnnn
  • 属性和值是大小写敏感的

(2)值的写法

字面量(数字、字符串、布尔)

server:
  port: 8081
  path: /nnnn

写法为 k:v:空格 字面量

字符串默认不用加上单引号或者双引号,加上双引号的话,不会转义字符串里面的特殊字符,也就是说特殊字符依旧有效;单引号会转义特殊字符

对象

student:
  name: zhai
  age: 23

行内写法:

student:{name: zhai,age: 23}

数组:

用-值的方式来表示数组中的一个元素

students:
  - zhai
  - zhang
  - liu
  - tom

行内写法:

students: [zhai,zhang,liu,tom]

(3)获取yaml配置文件中的数据

定义两个实体类,其中student实体类的属性包括Course类:

@Data
@Component
@ConfigurationProperties(prefix = "student")//告诉springboot将本类中的所有属性和配置文件的相关配置进行绑定
public class Student {       //prefix:配置文件中哪一个名称下面的属性进行一一映射
    private String sname;
    private int age;
    private Map<String,Object> maps;
    private List<Object> list;
    private Course course;
}
@Data
public class Course {
    private String courseno;
    private String coursename;
}

创建yaml配置文件:

student:
  sname: zhai
  age: 12

  maps: {k1: 12,k2: 13}
  list:
    - zhai
    - zhang
  course:
    courseno: 202007
    coursename: javaweb

创建properties文件:

#配置student
student.age=12
student.sname=zhai
student.maps.k1=1
student.maps.k2=2
student.list=a,b,c
student.course.courseno=202007
student.course.coursename=java

测试类:

//可以在测试期间很方便地类似编码一样进行自动注入等容器的功能
@SpringBootTestclass Springboot03ApplicationTests {
    @Autowired
    Student student;
    @Test
    void contextLoads() {
        System.out.println(student);
    }
}

需要导入的依赖:配置文件处理器,配置文件进行绑定会有提示

   <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-configuration-processor</artifactId>
            <version>2.2.1.RELEASE</version>
   </dependency>

110_2.png

(4)properties文件中文乱码的解决方案:

110_3.png

文章永久链接:https://tech.souyunku.com/23213

未经允许不得转载:搜云库技术团队 » SpringBoot:SpringBoot的配置(yaml文件方式和properties文件方式)

JetBrains 全家桶,激活、破解、教程

提供 JetBrains 全家桶激活码、注册码、破解补丁下载及详细激活教程,支持 IntelliJ IDEA、PyCharm、WebStorm 等工具的永久激活。无论是破解教程,还是最新激活码,均可免费获得,帮助开发者解决常见激活问题,确保轻松破解并快速使用 JetBrains 软件。获取免费的破解补丁和激活码,快速解决激活难题,全面覆盖 2024/2025 版本!

联系我们联系我们