SpringBoot2基础篇(二)—— 基础配置

02、基础配置

2.1、复制工程

  1. 在工作空间中复制对应工程,并修改工程名称
  2. 删除与Idea相关配置文件,仅保留src目录与pom.xml文件
  3. 修改pom.xml文件中的artifactId与新工程/模块名相同
  4. 删除name标签(可选)
  5. 保留备份工程供后期使用

原则:

  • 保留工程基础结构
  • 抹掉原始工程痕迹

2.2、属性配置

1、SpringBoot默认配置文件application.properties,通过键值对配置对应属性

2、修改配置

  • 修改服务器端口
# 服务器端口配置
server.port=80
  • 关闭运行日志图标(banner)
spring.main.banner-mode=off
  • 设置日志相关
# 日志
logging.level.root=info

SpringBoot内置属性查询:

Common Application Properties (spring.io)

在这里插入图片描述

小结:

  1. SpringBoot中导入对应starter后,提供对应配置属性
  2. 书写SpringBoot配置采用关键字+提示形式书写

3、SpringBoot提供了3种属性配置方式

  • application.properties
server.port=80
  • application.yml(主流格式
server:
  port: 81
  • application.yaml
server:
  port: 82

1、SpringBoot配置文件加载顺序

  • application.properties > application.yml > application.yaml

2、不同配置文件中相同配置按照加载优先级相互覆盖,不同配置文件中不同配置全部保留

4、教你一招:自动提示功能消失解决方案

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

2.3、yaml

2.3.1、yaml格式

1、YAML(YAML Ain’t Markup Language),一种数据序列化格式

2、优点:

  • 容易阅读
  • 容易与脚本语言交互
  • 以数据为核心,重数据轻格式

3、YAML文件扩展名

  • .yml(主流
  • .yaml

4、yaml语法规则:

  • 大小写敏感
  • 属性层级关系使用多行描述,每行结尾使用冒号结束
  • 使用缩进表示层级关系,同层级左侧对齐,只允许使用空格(不允许使用Tab键)
  • 属性值前面添加空格(属性名与属性值之间使用冒号+空格作为分隔)
  • #表示注释

核心规则:数据前面要加空格与冒号隔开

5、应用

  • 字面值表示方式

在这里插入图片描述

  • 数组表示方式:在属性名书写位置的下方使用减号作为数据开始符号,每行书写一个数据,减号与数据间空格分隔

在这里插入图片描述

2.3.2、yaml读取

2.3.2.1、读取yaml单一属性数据
  • 使用@Value读取单个数据,属性名引用方式:${一级属性名.二级属性名……}

在这里插入图片描述

小结:

  1. 使用@Value配合SpEL读取单个数据
  2. 如果数据存在多层级,依次书写层级名称即可
2.3.2.2、yaml文件中的变量引用
  • 在配置文件中可以使用${属性名}引用方式引用属性

在这里插入图片描述

  • 属性值中如果出现转义字符,需要使用双引号包裹

在这里插入图片描述

2.3.2.3、读取yaml全部属性数据
  1. 使用Environment对象封装全部配置信息
  2. 使用@Autowired自动装配数据到Environment对象中

在这里插入图片描述

缺点:此时把application.yaml中的所有数据都封装到Environment对象中,需要考虑是否只需要把所需的数据封装。

2.3.2.4、读取yaml引用类型属性数据

1、定义数据模型封装yaml文件中对应的数据

2、定义为Spring管控的bean

3、指定加载的数据

在这里插入图片描述

小结:

  1. 使用@ConfigurationProperties注解绑定配置信息到封装类中
  2. 封装类需要定义为Spring管理的bean,否则无法进行属性注入

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值