博客
关于我
SpringBoot | 读取yaml配置文件并注入JavaBean
阅读量:373 次
发布时间:2019-03-04

本文共 1006 字,大约阅读时间需要 3 分钟。

如果我们有一个类Person

public class Person {       public String name;    public int age;    public Date birthday;    public Map
map; public List
list; //getter和setter和toString()略}

在resources文件夹下用applications.yml

person:  name: zhangsan  age: 20  birthday: 2020/11/1  map:    k1: v1    k2: v2  list:    - aaa    - bbb    - ccc

现在我们要做的就是:读取这个yml文件的信息,并注入到Person类里,并打印出来。

  1. 先在pom.xml里导入一个依赖(这一步好像不是必须的)
org.springframework.boot
spring-boot-configuration-processor
  1. 给Person类加上以下注解:
@Component@ConfigurationProperties(prefix = "person")

其中perfix参数需要和配置文件里的那个key值匹配,@Component的作用是将这个对象加入到Spring的IOC容器中。

  1. 测试
    在测试类中(src的test文件夹下),创建一个Person对象,并用@AutoWired注入,然后打印结果。
@SpringBootTestclass DemoApplicationTests {       @Autowired    Person person;    @Test    void contextLoads() {           System.out.println(person);    }}
  1. 输出结果,打印出以下内容表示注入成功!
Person{name='zhangsan', age=20, birthday=Sun Nov 01 00:00:00 CST 2020, map={k1=v1, k2=v2}, list=[aaa, bbb, ccc]}

转载地址:http://yayg.baihongyu.com/

你可能感兴趣的文章
Mysql5.7版本单机版my.cnf配置文件
查看>>
mysql5.7的安装和Navicat的安装
查看>>
mysql5.7示例数据库_Linux MySQL5.7多实例数据库配置
查看>>
Mysql8 数据库安装及主从配置 | Spring Cloud 2
查看>>
mysql8 配置文件配置group 问题 sql语句group不能使用报错解决 mysql8.X版本的my.cnf配置文件 my.cnf文件 能够使用的my.cnf配置文件
查看>>
MySQL8.0.29启动报错Different lower_case_table_names settings for server (‘0‘) and data dictionary (‘1‘)
查看>>
MYSQL8.0以上忘记root密码
查看>>
Mysql8.0以上重置初始密码的方法
查看>>
mysql8.0新特性-自增变量的持久化
查看>>
Mysql8.0注意url变更写法
查看>>
Mysql8.0的特性
查看>>
MySQL8修改密码报错ERROR 1819 (HY000): Your password does not satisfy the current policy requirements
查看>>
MySQL8修改密码的方法
查看>>
Mysql8在Centos上安装后忘记root密码如何重新设置
查看>>
Mysql8在Windows上离线安装时忘记root密码
查看>>
MySQL8找不到my.ini配置文件以及报sql_mode=only_full_group_by解决方案
查看>>
mysql8的安装与卸载
查看>>
MySQL8,体验不一样的安装方式!
查看>>
MySQL: Host '127.0.0.1' is not allowed to connect to this MySQL server
查看>>
Mysql: 对换(替换)两条记录的同一个字段值
查看>>