全网整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:400-708-3566

springboot如何读取配置文件(application.yml)中的属性值

在spring boot中,简单几步,读取配置文件(application.yml)中各种不同类型的属性值:

1、引入依赖:

<!-- 支持 @ConfigurationProperties 注解 --> 
<dependency> 
  <groupId>org.springframework.boot</groupId> 
  <artifactId>spring-boot-configuration-processor</artifactId> 
  <optional>true</optional> 
</dependency> 

2、配置文件(application.yml)中配置各个属性的值:

myProps: #自定义的属性和值 
 simpleProp: simplePropValue 
 arrayProps: 1,2,3,4,5 
 listProp1: 
  - name: abc 
   value: abcValue 
  - name: efg 
   value: efgValue 
 listProp2: 
  - config2Value1 
  - config2Vavlue2 
 mapProps: 
  key1: value1 
  key2: value2 

3、创建一个bean来接收配置信息:

@Component 
@ConfigurationProperties(prefix="myProps") //接收application.yml中的myProps下面的属性 
public class MyProps { 
  private String simpleProp; 
  private String[] arrayProps; 
  private List<Map<String, String>> listProp1 = new ArrayList<>(); //接收prop1里面的属性值 
  private List<String> listProp2 = new ArrayList<>(); //接收prop2里面的属性值 
  private Map<String, String> mapProps = new HashMap<>(); //接收prop1里面的属性值 
   
  public String getSimpleProp() { 
    return simpleProp; 
  } 
   
  //String类型的一定需要setter来接收属性值;maps, collections, 和 arrays 不需要 
  public void setSimpleProp(String simpleProp) { 
    this.simpleProp = simpleProp; 
  } 
   
  public List<Map<String, String>> getListProp1() { 
    return listProp1; 
  } 
  public List<String> getListProp2() { 
    return listProp2; 
  } 
 
  public String[] getArrayProps() { 
    return arrayProps; 
  } 
 
  public void setArrayProps(String[] arrayProps) { 
    this.arrayProps = arrayProps; 
  } 
 
  public Map<String, String> getMapProps() { 
    return mapProps; 
  } 
 
  public void setMapProps(Map<String, String> mapProps) { 
    this.mapProps = mapProps; 
  } 
} 

启动后,这个bean里面的属性就会自动接收配置的值了。

4、单元测试用例:

@Autowired 
  private MyProps myProps;  
   
  @Test 
  public void propsTest() throws JsonProcessingException { 
    System.out.println("simpleProp: " + myProps.getSimpleProp()); 
    System.out.println("arrayProps: " + objectMapper.writeValueAsString(myProps.getArrayProps())); 
    System.out.println("listProp1: " + objectMapper.writeValueAsString(myProps.getListProp1())); 
    System.out.println("listProp2: " + objectMapper.writeValueAsString(myProps.getListProp2())); 
    System.out.println("mapProps: " + objectMapper.writeValueAsString(myProps.getMapProps())); 
  } 

测试结果:

simpleProp: simplePropValue 
arrayProps: ["1","2","3","4","5"] 
listProp1: [{"name":"abc","value":"abcValue"},{"name":"efg","value":"efgValue"}] 
listProp2: ["config2Value1","config2Vavlue2"] 
mapProps: {"key1":"value1","key2":"value2"} 

源代码参考:https://github.com/xujijun/my-spring-boot

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。


# spring  # boot  # yml配置  # yml文件  # 加载yml  # 在SpringBoot下读取自定义properties配置文件的方法  # Spring Boot 日志配置方法(超详细)  # SpringBoot + Spring Security 基本使用及个性化登录配置详解  # 详解SpringBoot配置连接池  # SpringBoot获取yml和properties配置文件的内容  # spring boot Logging的配置以及使用详解  # spring boot的maven配置依赖详解  # spring boot开发遇到坑之spring-boot-starter-web配置文件使用教程  # Springboot配置doris连接的实现示例  # 配置文件  # 就会  # 不需要  # 自定义  # 几步  # 创建一个  # 源代码  # 大家多多  # 单元测试  # 各种不同类型  # abc  # efg  # abcValue  # myProps  # simpleProp  # arrayProps  # simplePropValue  # configuration  # mapProps 


相关文章: 免费ppt制作网站,有没有值得推荐的免费PPT网站?  免费制作统计图的网站有哪些,如何看待现如今年轻人买房难的情况?  哈尔滨网站建设策划,哈尔滨电工证查询网站?  广州网站建站公司选择指南:建站流程与SEO优化关键词解析  如何确保FTP站点访问权限与数据传输安全?  如何高效完成自助建站业务培训?  大同网页,大同瑞慈医院官网?  矢量图网站制作软件,用千图网的一张矢量图做公司app首页,该网站并未说明版权等问题,这样做算不算侵权?应该如何解决?  制作网站哪家好,cc、.co、.cm哪个域名更适合做网站?  如何在云服务器上快速搭建个人网站?  网站规划与制作是什么,电子商务网站系统规划的内容及步骤是什么?  如何在阿里云购买域名并搭建网站?  如何获取上海专业网站定制建站电话?  建站之星如何实现五合一智能建站与营销推广?  如何快速查询网址的建站时间与历史轨迹?  网站制作的步骤包括,正确网址格式怎么写?  C#如何使用XPathNavigator高效查询XML  如何批量查询域名的建站时间记录?  如何用wdcp快速搭建高效网站?  制作门户网站的参考文献在哪,小说网站怎么建立?  实例解析Array和String方法  如何自己制作一个网站链接,如何制作一个企业网站,建设网站的基本步骤有哪些?  详解jQuery停止动画——stop()方法的使用  招贴海报怎么做,什么是海报招贴?  哪家制作企业网站好,开办像阿里巴巴那样的网络公司和网站要怎么做?  简历在线制作网站免费版,如何创建个人简历?  建站之星如何保障用户数据免受黑客入侵?  微信小程序 五星评分(包括半颗星评分)实例代码  网站制作模板下载什么软件,ppt模板免费下载网站?  建站主机功能解析:服务器选择与快速搭建指南  建站之星Pro快速搭建教程:模板选择与功能配置指南  学校建站服务器如何选型才能满足性能需求?  如何在阿里云通过域名搭建网站?  怎么用手机制作网站链接,dw怎么把手机适应页面变成网页?  广德云建站网站建设方案与建站流程优化指南  微信推文制作网站有哪些,怎么做微信推文,急?  建站之星安装后界面空白如何解决?  大学网站设计制作软件有哪些,如何将网站制作成自己app?  赚钱网站制作软件,建一个网站怎样才能赚钱?是如何盈利的?  如何通过远程VPS快速搭建个人网站?  微信小程序 input输入框控件详解及实例(多种示例)  建站之星安全性能如何?防护体系能否抵御黑客入侵?  交易网站制作流程,我想开通一个网站,注册一个交易网址,需要那些手续?  香港服务器网站搭建教程-电商部署、配置优化与安全稳定指南  如何在阿里云域名上完成建站全流程?  如何快速查询域名建站关键信息?  网站制作话术技巧,网站推广做的好怎么话术?  网站制作新手教程,新手建设一个网站需要注意些什么?  浙江网站制作公司有哪些,浙江栢塑信息技术有限公司定制网站做的怎么样?  香港服务器如何优化才能显著提升网站加载速度? 

您的项目需求

*请认真填写需求信息,我们会在24小时内与您取得联系。