原创自 第一勺金

00

最近在学习使用 spring boot。发现其中 @ConfigurationProperties这个注解使用的比较多。搜了比较多的文档都是英文,避免以后忘记,这里我也总结下它的使用方法。

01

开始创建一个Spring boot项目,我喜欢用官网的平台创建 start.spring.io/

首先依赖

       <dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-configuration-processor</artifactId><optional>true</optional></dependency>
复制代码

现在 spring boot使用 .yml 格式貌似是「开发正确」,所以这里将 application 的格式改成 .yml

@ConfigurationProperties的作用是从配置文件中读取数据,我也不直接拿项目中的数据来举例。直接简单粗暴点。通过配置获取单个属性、集合 ,常见就这两种,不可能还从中获取 map 数据类型的数据不成。

获取属性数据

在 application 中添加如下对象属性数据

person:name: guozhage: 25adress: shenzheng
复制代码

创建如下对象

@Component
@ConfigurationProperties(prefix = "person")
public class ConfigData {private String name;private int age;private String adress;public String getName() {return name;}public void setName(String name) {this.name = name;}public int getAge() {return age;}public void setAge(int age) {this.age = age;}public String getAdress() {return adress;}public void setAdress(String adress) {this.adress = adress;}
}复制代码

注意:

  • 通过prefix 定位到以 person 开头
  • 保证 属性名字 和 application.yml 中一样,这样就能自动匹配
  • 添加 get set 方法,一个都不能少,不然就启动不成功

创建个 controller 来测试下,能不能获取

@RestController
public class PersonController {@Autowiredprivate ConfigData configData;@RequestMapping("/getPerson")public String getPerson(){return configData.getName()+" "+configData.getAge()+" "+configData.getAdress();}}
复制代码

大部分是 spring 的内容,不用说了。直接运行

ok 已经获取。

获取集合数据

其实是同理,直接贴代码。

application.yml

class:students:- jack- tom- oliver
复制代码

StudentData

@Component
@ConfigurationProperties(prefix = "class")
public class StudentData {private List<String> students = new ArrayList<>();public List<String> getStudents() {return students;}public void setStudents(List<String> students) {this.students = students;}
}
复制代码
 @RequestMapping("/getStudent")public String getStudent(){return studentData.getStudents().toString();}复制代码

原创自 第一勺金

Spring boot 注解 ConfigurationProperties 的使用相关推荐

  1. 超级详细的Spring Boot 注解总结

    日常编程中我相信大家肯定都用过spring,也用过spring的注解,哪怕面试的时候也经常会被问到一些spring和spring boot注解的作用和含义等,那么这篇就带大家来看看超级详细的Sprin ...

  2. Spring Boot 注解原理

    Spring Boot 注解原理 首先,先看SpringBoot的主配置类: @SpringBootApplication public class StartEurekaApplication {p ...

  3. Spring Boot注解

    文章目录 简介 @SpringBootApplication @EnableAutoConfiguration 条件自动配置 @ConditionalOnClass 和 @ConditionalOnM ...

  4. Spring Boot注解的运行原理

    Spring Boot 是一个基于 Spring Framework 的开源框架,通过简化配置和开发过程,使 Spring 应用程序的开发变得更加快速和便捷.在 Spring Boot 中,注解是非常 ...

  5. 一次性搞懂Spring Boot 注解原理与自动装配原理,图文并茂,万字长文!

    原文:cnblogs.com/jing99/p/11504113.html 首先,先看SpringBoot的主配置类: @SpringBootApplication public class Star ...

  6. 10000 字讲清楚 Spring Boot 注解原理

    今日推荐 借助Redis锁,完美解决高并发秒杀问题还在直接用JWT做鉴权?JJWT真香Spring Boot 操作 Redis 的各种实现Fluent Mybatis 牛逼!Nginx 常用配置清单这 ...

  7. Spring Boot 注解配置文件自动映射到属性和实体类

    官网给出的配置文件大全: https://docs.spring.io/spring-boot/docs/2.1.0.BUILD-SNAPSHOT/reference/htmlsingle/#comm ...

  8. Spring Boot 注解原理,自动装配原理,图文并茂,万字长文!

    首先,先看SpringBoot的主配置类: @SpringBootApplication public class StartEurekaApplication {public static void ...

  9. Spring Boot注解大全,一键收藏了!

    点击上方"方志朋",选择"设为星标" 回复"666"获取新整理的面试文章 来源:www.cnblogs.com/tanwei81/p/681 ...

最新文章

  1. linux内核map图
  2. css字体的字型,CSS的字体、字型控制_css
  3. linux deepin sudo: add-apt-repository:找不到命令 解决办法
  4. 曹大带我学 Go(8)—— 一个打点引发的事故
  5. 几何画板200个经典课件_项目制学科联动 | 金芬娥首席工作室:灵动“画板”,研修创新,协同进步...
  6. Unity3D 自动打包整个项目(以AssetBundle实现)
  7. 黑客高手是这样上网的!Vimer是如何用快捷键浏览网页的?
  8. 诺基亚的「翻身」之战
  9. 洛谷——P1657 选书
  10. Win10桌面上:[ 我的电脑 ] 图标不见了
  11. QT学习之做一个简易图片处理器(后续补全)
  12. 《WINDOWS游戏编程之从零开始》第三章学习笔记
  13. 输入阻抗、输出阻抗与阻抗匹配
  14. 我的信息化教学改革实践-“oao‘课堂
  15. 用python爬取企查查_python爬取企查查江苏企业信息生成excel表格
  16. TouchSlop与VelocityTracker认识
  17. 诸葛亮舌战群儒的技术分析总结
  18. 如何开通微信商城?微商城的开通方法?
  19. Mac如何通过远程控制其他Mac
  20. 使用Burp,nbsp;Sqlmap进行自动化SQL注入渗透测试

热门文章

  1. SOR迭代求解线性方程组代码实现
  2. MIT博士用概率编程让AI和人类一样看三维|NeurIPS 2021
  3. 李联宁|量子计算机:技术路线、风险及战略投资
  4. 玩电子游戏的神经网络,告诉我们大脑是如何决策的
  5. Nature:揭示人大脑类器官为何缺乏正常人脑特有的细胞亚型和复杂回路
  6. 中国首份自动驾驶路测报告:自主车企全面落后
  7. 低潮过后,未来医疗可穿戴市场将如何发展?
  8. 硅谷人眼中的2018年十大前沿科技预测
  9. 致研究者:2018 AI 研究趋势
  10. 百度最早量产?一图看全球公司无人驾驶汽车时间表