开发者学堂课程【SpringBoot快速掌握 - 核心技术:yaml 配置文件值获取】学习笔记,与课程紧密联系,让用户快速学习知识。
课程地址:https://developer.aliyun.com/learning/course/612/detail/9223
yaml 配置文件值获取
一、代码讲解
package com.atguigu.springboot.bean;
import
java.util.Date;
import
java.util.
list
;
i
mport
java.util
.
Map;
public class
Person
{
private String lastName;
private Integer age;
private Boolean boss;
private Date birth;
private Map maps;
private Lis
t lists;
p
rivate
Dog dog;
}
现在用 yaml 演示,
person:
lastName:hello
age: 18
boss:false
birth:2017/12/12
行内写法maps: {k1: v1,k2:12}//
lists://数组
- lisi
- zhaoliu
dog:
name:小狗
age:12
如果想要检测书写是否正确,可以通过点击每一个后展示的导航来查看,如点击 name ,导航会显示, Document 1/1>person>dog:>name ,以上即为正确。
//接下来把配置文件中配置的每一个值,映射到组建中。
@ConfiguraticnFrcperties
这里面中所有属性和配置文件中相关的配置进行绑定,
这里需要写一个属性 prefix 与 person 的属性对应,讲配置文件中下面的所有属性一一映射。
@ConfigurationProperties:告诉 SpringBoot 将本类中所有属性和配置文件中相关的配置进行绑定
prefix = "person":配置文件中哪个下面的所有属性进行——映射
在官方文档里要依赖这个东西
org.springframework.boot
spring-boot-configuration-processor
true
这个叫配置文件的处理器,帮助生成配置文件的源数据信息,导入数据就有提示
<!--导入配置文件处理器,配置文件进行绑定就会有提示->cdeoandeneub>
重新运行 spring boot 只有这个组件是容器中的组件才能使用他的功能@ConfigurationProperties.把它加入容器中,看看是否注入进来。
Spring boot单元测试:
@Runwith(SpringRunner.class)
@SpringBootTest
puble class SpringBoot02ConfigApplicationTests {
@Test
public void contextLoads( ){
}
有了这个以后,用什么可以像编码一样,可以在测试期间很方便的类似编码一样进行自动注入等容器功能
把 person 注入进去,在控制台输出 person 并运行,看看容器中 person 是否有办法配置他的值。