全网整合营销服务商

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

免费咨询热线: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 


相关文章: 商务网站制作工程师,从哪几个方面把握电子商务网站主页和页面的特色设计?  百度网页制作网站有哪些,谁能告诉我百度网站是怎么联系?  如何在IIS中配置站点IP、端口及主机头?  ,在苏州找工作,上哪个网站比较好?  教育培训网站制作流程,请问edu教育网站的域名怎么申请?  如何通过VPS建站实现广告与增值服务盈利?  北京企业网站设计制作公司,北京铁路集团官方网站?  北京网站制作公司哪家好一点,北京租房网站有哪些?  Java解压缩zip - 解压缩多个文件或文件夹实例  如何通过WDCP绑定主域名及创建子域名站点?  建站主机CVM配置优化、SEO策略与性能提升指南  ,网页ppt怎么弄成自己的ppt?  电商网站制作多少钱一个,电子商务公司的网站制作费用计入什么科目?  北京网站制作网页,网站升级改版需要多久?  北京营销型网站制作公司,可以用python做一个营销推广网站吗?  北京制作网站的公司排名,北京三快科技有限公司是做什么?北京三快科技?  建站之星后台密码遗忘如何找回?  网站制作难吗安全吗,做一个网站需要多久时间?  山东网站制作公司有哪些,山东大源集团官网?  官网建站费用明细查询_企业建站套餐价格及收费标准指南  如何制作一个表白网站视频,关于勇敢表白的小标题?  广东专业制作网站有哪些,广东省能源集团有限公司官网?  如何登录建站主机?访问步骤全解析  测试制作网站有哪些,测试性取向的权威测试或者网站?  建站之星安装后如何配置SEO及设计样式?  简历在线制作网站免费版,如何创建个人简历?  湖州网站制作公司有哪些,浙江中蓝新能源公司官网?  可靠的网站设计制作软件,做网站设计需要什么样的电脑配置?  怀化网站制作公司,怀化新生儿上户网上办理流程?  已有域名和空间如何搭建网站?  如何通过商城免费建站系统源码自定义网站主题?  C++中的Pimpl idiom是什么,有什么好处?(隐藏实现)  建站之星备案是否影响网站上线时间?  已有域名如何快速搭建专属网站?  香港服务器租用每月最低只需15元?  家庭建站与云服务器建站,如何选择更优?  智能起名网站制作软件有哪些,制作logo的软件?  如何在阿里云完成域名注册与建站?  英语简历制作免费网站推荐,如何将简历翻译成英文?  济南网站建设制作公司,室内设计网站一般都有哪些功能?  微网站制作教程,我微信里的网站怎么才能复制到浏览器里?  建站主机是否等同于虚拟主机?  如何在宝塔面板中修改默认建站目录?  韩国代理服务器如何选?解析IP设置技巧与跨境访问优化指南  c# F# 的 MailboxProcessor 和 C# 的 Actor 模型  广州网站制作的公司,现在专门做网站的公司有没有哪几家是比较好的,性价比高,模板也多的?  长沙做网站要多少钱,长沙国安网络怎么样?  网站视频怎么制作,哪个网站可以免费收看好莱坞经典大片?  如何通过虚拟主机空间快速建站?  如何在阿里云服务器自主搭建网站? 

您的项目需求

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