【SpringBoot 框架】- SpringBoot 配置文件,深入浅出mysql第三版pdf百度云

true

${basedir}/src/main/resources

**/application*.yml

**/application*.yaml

**/application*.properties

可以看到,${basedir}/src/main/resources 表示资源的加载文件,资源文件包括下面三种格式的,也就是说,咱们在配置SpringBoot资源文件的时候都是以 application*.yml、application*.yaml、application*.properties文件格式,.yml 和 .yaml 文件相同,而且在配置的时候一般都以 application 命名,所以SpringBoot配置文件可以归为以下两种:

  • application.properties

  • application.yml(application.yaml)

1. application.properties 配置文件


咱们可以创建 application.properties 配置文件去覆盖 SpringBoot 的默认配置,可以在resources 文件夹下创建 application.properties 文件,这里就以手动配置 Tomcat 端口去覆盖SpringBoot 默认配置为例,我们知道 Tomcat 默认打开端口是8080,咱们可以通过 application.properties 配置文件去修改这个默认配置:

server.port=8888

添加配置之后,运行项目

【SpringBoot 框架】- SpringBoot 配置文件,深入浅出mysql第三版pdf百度云

properties 文件是以键值对的形式编写,可以看到,通过修改application.properties 配置文件,已经将 Tomcat 端口改为 8888,覆盖了之前的配置,由于 properties 文件在以往用的也比较多,较为常见,这里就不做过多讲述,主要还是对 yml 配置文件进行学习。

2. application.yml(application.yaml) 配置文件


YML文件格式是YAML (YAML Aint Markup Language)编写的文件格式,YAML是一种直观的能够被电脑识别的的数据数据序列化格式,并且容易被人类阅读,容易和脚本语言交互的,可以被支持YAML库的不同的编程语言程序导入,比如: C/C++, Ruby, Python, Java, Perl, C#, PHP等。YML文件是以数据为核心的,比传统的xml方式更加简洁。YML文件的扩展名可以使用.yml或者.yaml。

【1】yml配置文件语法

yml 的配置可以分为下面几种,我们先在 resources 文件夹下面创建 application.yml 配置文件

  • 配置普通数据

  • 配置对象数据

  • 配置Map数据

  • 配置数组数据

配置普通数据:

  • 语法: key: value

  • eg:

name: onestar

注意:value前面有一个空格

配置对象数据:

  • 语法1:

  • key:

key1: value1

key2: value2

  • 语法2:

  • key: {key1: value1,key2: value2}

  • eg:

person:

name: oneStar

age: 18

addr: yichun

#或者

person: {name: oneStar,age: 18,addr: yihcun}

注意:key1前面的空格个数不限定,在yml语法中,相同缩进代表同一个级别

配置Map数据:

  • 配置Map数据和配置对象数据相同

  • eg:

map:

key1: value1

key2: value2

配置数组数据:

  • 语法1

  • key:

  • value1

  • value2

  • 语法2

  • key: [value1,value2]

  • eg:

city:

  • beijing

  • tianjin

  • shanghai

  • chongqing

#或者

city: [beijing,tianjin,shanghai,chongqing]

#集合中的元素是对象形式

student:

  • name: oneStar

age: 18

score: 100

  • name: twoStar

age: 28

score: 88

  • name: threeStar

age: 38

score: 90

注意:value1与之间的 - 之间存在一个空格

二、配置文件与配置类的属性映射

===============

配置文件中的配置,不管是 properties 文件还是 yml 文件,有一些配置 SpringBoot 会自动去识别,比如 server.port=8888 配置,但有一些我们自定义的配置,SpringBoot 并不能自动识别,怎样才能让 SpringBoot 认识自己配置的信息呢,这里就有两种方法:

  • 使用注解 @Value 映射

  • 使用注解 @ConfigurationProperties 映射

1、使用注解 @Value 映射


我们可以通过@Value注解将配置文件中的值映射

《一线大厂Java面试题解析+后端开发学习笔记+最新架构讲解视频+实战项目源码讲义》

【docs.qq.com/doc/DSmxTbFJ1cmN1R2dB】 完整内容开源分享

到一个Spring管理的Bean的字段上,这里以 yml 文件进行说明

  • application.yml 配置如下:

person:

name: oneStar

age: 18

  • 实体Bean代码如下:

@Controller

public class QuickController {

@Value("${person.name}")

private String name;

@Value("${person.age}")

private int age;

@RequestMapping("/quick")

@ResponseBody

public String quick(){

return “name=”+name+",age="+age;

}

}

运行后,浏览器访问地址:http://localhost:8080/quick 结果如下:

【SpringBoot 框架】- SpringBoot 配置文件,深入浅出mysql第三版pdf百度云

上一篇:使用Jhipster快速创建springboot单体项目


下一篇:springboot中的配置文件