当前位置: 移动技术网 > IT编程>开发语言>Java > 普歌-云言团队-Spring Boot配置 : YAML (简介+语法+配置文件值注入)+报错提示Spring Boot Configuration Annotation Processor not

普歌-云言团队-Spring Boot配置 : YAML (简介+语法+配置文件值注入)+报错提示Spring Boot Configuration Annotation Processor not

2020年07月22日  | 移动技术网IT编程  | 我要评论

YAML (简介+语法+配置文件值注入)+报错提示Spring Boot Configuration Annotation Processor not

一.简介

Spring Boot 使用一个全局的配置文件, 配置文件名是固定的:
·application.properties
·application.yml

配置文件的作用

修改SpringBoot自动配置的默认值,SpringBoot在底层都会帮我们配置好

YAML(YAML Ain’t Markup Language)
A Markup Language : 是一个标记语言
isn’t Markup Language : 不是一个标记语言

标记语言

以前的配置文件, 大多都是使用 xxxx.xml文件
YAML : 是以数据为中心, 比json, xml等更适合做配置文件

YAML配置例子

server:
	port: 8090

XML配置例子

<server>
	<port>8090</port>
</server>

二.语法

1.基本语法

k:(空格)v 表示一对键值对(空格必须要有)
空格的缩进来控制层级关系, 只要是左对齐的一列数据, 都是同一个层级的

server:
	port: 8090
	path: /hello

属性和值也是大小写敏感的

2.值的写法

字面量: 普通的值(数字, 字符串, 布尔)
字符串默认不用加上单引号或者双引号:
" ": 双引号;不会转义字符串里面的特殊字符; 特殊字符会作为本身想表示的意思
name: “zhangsan \n lisi” 输出的结果就是: zhangsan 换行 lisi
’ ': 单引号; 会转移特殊字符, 特殊字符最终只是一个普通的字符串数据
name: “zhangsan \n lisi” 输出的结果就是: zhangsan \n lisi

对象, map (属性和值) (键值对)
k: v : 在下一行写对象的属性和值的关系 ; 注意缩进
对象还是k: v的方式

friends:
		lastName: Sansan
		age: 20

行内写法:

friends: {lastName: Sansan,age: 20}

数组(List, Set)
- 值 表示数组中的一个元素

pets:
	- cat
	- dog
	- pig

行内写法

pets: [cat,dog,pig]

三.配置文件值注入

配置文件

person:
    lastName: zhangsan
    age: 18
    boss: false
    birth: 2020/12/12
    maps: {k1: v1,k2: v2}
    lists:
      - lisi
      - zhaoliu
    dog:
      name: 小狗
            age: 2

javaBean

/**
 * 将配置文件中配置的每一个属性的值, 映射到这个组件中
 * @ConfigurationProperties: 告诉SpringBoot将本类中的所有属性和配置文件中相关的配置进行绑定;
 *      prefix ="person" : 配置文件中哪个下面的所有属性进行一一映射
 *
 * 只有这个组件是容器中的组件, 才能使用容器提供的@ConfigurationProperties功能
 */
@Component
@ConfigurationProperties(prefix ="person")
public class Person {

    private String lastName;
    private Integer age;
    private Boolean boss;
    private Date birth;

    private Map<String,Object> maps;
    private List<Object> lists;
    private Dog dog;

导入配置文件处理器

<!--导入配置文件处理器, 配置文件进行绑定就会有提示-->
      <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-configuration-processor</artifactId>
            <optional>true</optional>
      </dependency>

注意:bean实体中报错提示Spring Boot Configuration Annotation Processor not found in claspath

解决办法:
(1)点击报错提示后面的【Open Decumentation】
在这里插入图片描述

(2)把spring-boot-configuration-processor依赖加入到pom.xml文件中
在这里插入图片描述

(3)提示变为:Re-run Spring Boot Configuration Annotation Processor to update generated metadata.重新启动下就可以了
在这里插入图片描述

本文地址:https://blog.csdn.net/ZhangXinXinXinX/article/details/107459517

如对本文有疑问, 点击进行留言回复!!

相关文章:

验证码:
移动技术网