springboot @configurationproperties,springboot configproperties

  springboot @configurationproperties,springboot configproperties

  

目录

通过@Value,@ConfigurationProperties获取配置板簧罩获取配置项值通过@值获取值通过@配置属性获取值说下@配置属性和@值区别配置文件注入值数据校验

 

  

通过@Value,@ConfigurationProperties获取配置

 

  

spring boot 获取配置项值

使用版本是1.5.4

 

  举例一个线程池的配置:

  在应用程序。阳明海运股份有限公司添加配置项及值

  # 线程池配置任务执行者:核心池大小: 5最大池大小: 10队列容量: 25

  

通过@Value 获取值

@配置@启用异步公共类执行器配置{ @ Value($ {任务执行器。corePoolSize } )private int corePoolSize;@ Value( $ {任务执行者。maxPoolSize } )private int maxPoolSize;@ Value( $ {任务执行者。队列容量}”)私有int队列容量;@Bean公共执行器get async Executor(){ threadpooltaskmexecutor=new threadpooltaskmexecutor();执行人。setcorepoolsize(corePoolSize);执行人。setmaxpoolsize(maxPoolSize);执行人。setqueuecapacity(队列容量);执行人。setthreadname前缀(“任务执行器-”);executor.initialize().返回执行人;} }

 

  

通过@ConfigurationProperties 获取值

@ Configuration @ enable async @ Configuration属性(ignoreUnknownFields=false,前缀=taskexecutor )公共类执行器配置{ private int corePoolSizeprivate int maxpoolsize private int queue capacity @ Bean公共执行器get async Executor(){ threadpooltaskmexecutor=new threadpooltaskmexecutor();执行人。setcorepoolsize(corePoolSize);执行人。setmaxpoolsize(maxPoolSize);执行人。setqueuecapacity(队列容量);执行人。setthreadname前缀(“任务执行器-”);executor.initialize().返回执行人;} }通过@配置属性加载配置文件,将配置项与豆及属性关联,指定ignoreUnknownFields当有属性未匹配到值时会抛出异常,用前缀指定配置项的前缀。

 

  @配置属性还支持层级结构、布尔、集合等类型的值注入

  http://份文件。春天。io/spring-boot/docs/current/reference/html single/# boot-features-external-config-type safe-configuration-properties

  

说下@ConfigurationProperties和@Value区别

@配置@值功能批量注入配置文件中的属性一个个指定松散绑定(松散语法)支持不支持表达式语言语法不支持支持JSR303数据校验支持不支持复杂类型封装支持不支持配置文件阳明海运股份有限公司还是性能他们都能获取到值;

 

  如果说,只是在某个业务逻辑中需要获取一项配置文件中的某项值,使用@值

  如果说,专门编写了一个javaBean来和配置文件进行映射,我们就直接使用@配置属性

  

配置文件注入值数据校验

@组件@配置属性(前缀= Person )@ validated public class Person {/* * * bean class= Person * property name= last name value=字面值/${key}从环境变量,配置文件中获取值/# { Spel } /property */bean *///Value( $ { person。姓氏} )//姓氏必须为邮箱格式@ Email private String last name//@ Value( # { 11 * 2 } )私有整数年龄;//@Value(true )私有布尔老板私人出生日期;私有映射字符串、对象映射。私有列表列表;私狗狗;以上为个人经验,希望能给大家一个参考,也希望大家多多支持盛行它。

 

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: