常熟网站建设icp备案,付费 视频 网站 怎么做,网站主题颜色,西安做搭建网站目录一、背景二、application.yml三、ChinaPersonFactory.java四、使用示例一、背景
在 SpringBoot 中#xff0c;我们可以使用 Value 注解从属性文件#xff08;例如 application.yml 或 application.properties#xff09;中获取配置信息#xff0c;但是只能获取简单的字…
目录一、背景二、application.yml三、ChinaPersonFactory.java四、使用示例一、背景
在 SpringBoot 中我们可以使用 Value 注解从属性文件例如 application.yml 或 application.properties中获取配置信息但是只能获取简单的字符串或数值类型的配置信息。
如果想从 yml 中获取对象等复杂的数据类型可以使用 ConfigurationProperties 注解。
二、application.yml
首先我们在 application.yml 文件中指定了 china 前缀后面的 persons 里面存放了带有 name、sex、age 属性的对象。
china:persons:- name: 张三sex: Fage: 24- name: 李四sex: Mage: 25三、ChinaPersonFactory.java
ChinaPersonFactory.java 使用 ConfigurationProperties 注解指定 china 前缀从 application.yml 文件中获取 china 前缀开头的 Person 对象数组。
import lombok.Data;
import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.context.annotation.Configuration;import java.util.ArrayList;
import java.util.List;/*** p Title ChinaPersons* p Description 从 yml 中获取 Person 对象** author ACGkaka* date 2023/3/23 19:11*/
Configuration
ConfigurationProperties(prefix china)
public class ChinaPersonFactory {// 这里的名字要和yml中的对应字段名称一致private static ListPerson persons new ArrayList();// 注意此处的 static 关键字public static ListPerson getPersons() {return persons;}public void setPersons(ListPerson persons) {ChinaPersons.persons persons;}/*** 基础人员信息* 注意该类要使用 static 关键字修饰否则会报错。*/Datapublic static class Person {// 姓名private String name;// 性别private String sex;// 年龄private Integer age;}
}四、使用示例
做好以上准备工作后我们可以在项目中通过调用如下代码获取配置中的对象数组
ListPerson list ChinaPersonFactory.getPersons()整理完毕完结撒花~ 参考地址
1.Java获取yml文件的数组对象https://blog.csdn.net/qq_41057885/article/details/121425355