龙华做网站联系电话,北京软件开发培训班,廊坊手机网站,seo排名点击软件运营目录一、简介1、SpringBoot 中常用读取配置方法2、 ConfigurationProperties和Value的区别二、使用 ConfigurationProperties 读取配置三、使用 Value 读取配置一、简介
在日常开发使用 SpringBoot 框架时#xff0c;经常有一些配置信息需要放置到配置文件中#xff0c;我们…
目录一、简介1、SpringBoot 中常用读取配置方法2、 ConfigurationProperties和Value的区别二、使用 ConfigurationProperties 读取配置三、使用 Value 读取配置一、简介
在日常开发使用 SpringBoot 框架时经常有一些配置信息需要放置到配置文件中我们需要手动读取这些配置到应用中进行一些逻辑这里整理了一些常用读取配置的方法简单介绍一下。
1、SpringBoot 中常用读取配置方法
使用 ConfigurationProperties 注解读取配置 配置方便支持赋值复杂类型 使用 Value 注解读取配置 使用灵活方便对读取数值进行定制化处理可赋值给静态化变量 2、 ConfigurationProperties和Value的区别
二者区别ConfigurationPropertiesValue功能批量注入配置文件中的属性一个个指定松散绑定(松散语法)支持不支持SpEL不支持支持JSR303数据校验支持不支持复杂类型封装支持不支持赋值静态化属性据说可以笔者未成功支持
二、使用 ConfigurationProperties 读取配置
application.yml配置文件内容
jiug:name: keffettage: 18school: 淮北师范大学,五河县第二中学technicalList :- name: 驾驶证grade: C1- name: 计算机grade: 二级使用ConfigurationProperties对配置属性进行赋值
Data
Configuration
ConfigurationProperties(prefix jiug)
public class ConfigJiug {private String name ;// JSR303数据校验NotNullMin(0)private int age ;// 默认值private String loc 中国 ;// listprivate ListString school ;// list对象private ListTechnical technicalList ;}
Data
class Technical {private String name;private String grade;
}要使用JSR 303校验需要在Spring Boot应用程序的依赖中添加以下依赖
dependencygroupIdorg.springframework.boot/groupIdartifactIdspring-boot-starter-validation/artifactId
/dependency三、使用 Value 读取配置
application.yml配置文件内容
jiug:name: keffettage: 18declaration: 认识世界school: 淮北师范大学,五河县第二中学使用 Value 读取配置文件
Component
public class ConfigConstant {Value(${jiug.name})private String name ;Value(${jiug.age})private int age 24 ;// 设置默认值Value(${jiug.loc:中国})private String loc;// 使用 SpEL 表达式Value(#{configJiug.age 18 ? adult : child})private String status;// 赋值到静态变量public static String declaration ;Value(${jiug.declaration})public void setDeclaration(String declaration) {ConfigJiug.declaration declaration;}// listprivate ListString school ;Value(${jiug.school})public void setSchool(String school) {this.school Arrays.asList(school.split(,));}// list对象 不支持可以配置json串然后在set方法中解析}