关于yml文件字符串,List,Map的书写方式并使用@ConfigurationProperties注入配置类

 更新时间:2023年12月15日 14:54:06   作者:搏·梦  
这篇文章主要介绍了关于yml文件字符串,List,Map的书写方式并使用@ConfigurationProperties注入配置类,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教

1. 常规例子

先准备好一个配置类,如下:

1. 使用@ConfigurationProperties 该类必须是个bean对象。

2. 该类必须有setting方法,否则无法注入值。

@Setter
@Getter
@Component
@ConfigurationProperties(prefix = "test")
public class TestConfig {
    // 字符串
    private String userName;
    // Integer
    private Integer sum;
    // boolean
    private boolean flag;

    private int size;
    // 对象
    private Person person;
    // List<对象>
    private List<Person> personList;
    // Map<String, 对象>
    private Map<String, Person> map;

    @Setter
    @Getter
    static class Person {

        private String name;

        private int age;
    }
}

yml文件写法如下:

test:
  user-name: test1
  sum: 20
  flag: false
  size: 100
  person:
    name: person1
    age: 18
  person-list:
    - name: person1
      age: 1
    - name: person2
      age: 2
    - name: person3
      age: 3
  map:
    key1:
      name: map1
      age: 1
    key2:
      name: map2
      age: 2

结果:

2. 非常规例子(不建议)

@ConfigurationProperties 不配prefix,默认是从yml文件根结构开始,如下例子:

@Setter
@Getter
@Component
@ConfigurationProperties()
public class TestConfig {

    // List<对象>
    private List<Person> personList;

    @Setter
    @Getter
    static class Person {

        private String name;

        private int age;
    }
}
person-list:
  - name: person1
    age: 1
  - name: person2
    age: 2
  - name: person3
    age: 3

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • Mybatis批量插入和批量更新失败问题

    Mybatis批量插入和批量更新失败问题

    这篇文章主要介绍了Mybatis批量插入和批量更新失败问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2024-08-08
  • java编程几行代码实现买菜自由

    java编程几行代码实现买菜自由

    这篇文章主要为大家介绍了java编程几行代码实现买菜自由,需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-05-05
  • Spring Security注解方式权限控制过程

    Spring Security注解方式权限控制过程

    这篇文章主要介绍了Spring Security注解方式权限控制过程,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2025-03-03
  • SpringBoot整合Java DL4J实现文本分类系统

    SpringBoot整合Java DL4J实现文本分类系统

    在当今信息爆炸的时代,自然语言处理领域中的文本分类显得尤为重要,文本分类能够高效地组织和管理海量的文本数据,随着互联网的飞速发展,我们每天都被大量的文本信息所包围,本文将介绍如何使用 Spring Boot 整合 Java Deeplearning4j 来构建一个文本分类系统
    2024-10-10
  • Spring boot数据库依赖详解

    Spring boot数据库依赖详解

    这篇文章主要介绍了Spring boot数据库依赖,需要的朋友可以参考下
    2023-09-09
  • java学习之JVM运行时常量池理解

    java学习之JVM运行时常量池理解

    这篇文章主要介绍了java学习之JVM运行时常量池理解,对常量池的好处以及基本类型的包装类常量池等作了简要分析,有需要的朋友可以借鉴参考下
    2021-09-09
  • 详解Java如何创建Annotation

    详解Java如何创建Annotation

    在本文中,我们将介绍注解的基础知识,包括注解是什么,它们如何在示例中使用,以及如何处理它们。下面和小编一起来学习吧
    2019-05-05
  • Java-Io-RandomAccessFile任意位置读写数据的操作小结

    Java-Io-RandomAccessFile任意位置读写数据的操作小结

    RandomAccessFile类支持随机访问方式,可以跳转到文件的任意位置读写数据,这个类在文件随机读取时有很大的优势,可利用多线程完成对一个大文件的读写,本文给大家介绍Java-Io-RandomAccessFile(任意位置读写数据)的相关知识,需要的朋友可以参考下
    2022-05-05
  • 如何彻底删除SVN中的文件和文件夹(附恢复方法)

    如何彻底删除SVN中的文件和文件夹(附恢复方法)

    在SVN中如果删除某个文件或文件夹也可以在历史记录中进行找回,有的时候需要彻底删除某些文件,即不希望通过历史记录进行恢复,需要在服务器上对SVN的数据进行重新整理
    2014-08-08
  • 基于@PostConstruct注解的使用,解决向静态变量注入值

    基于@PostConstruct注解的使用,解决向静态变量注入值

    这篇文章主要介绍了基于@PostConstruct注解的使用,解决向静态变量注入值问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-09-09

最新评论