Spring boot 注解 ConfigurationProperties 的使用
原创自 第一勺金
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 的使用相关推荐
- 超级详细的Spring Boot 注解总结
日常编程中我相信大家肯定都用过spring,也用过spring的注解,哪怕面试的时候也经常会被问到一些spring和spring boot注解的作用和含义等,那么这篇就带大家来看看超级详细的Sprin ...
- Spring Boot 注解原理
Spring Boot 注解原理 首先,先看SpringBoot的主配置类: @SpringBootApplication public class StartEurekaApplication {p ...
- Spring Boot注解
文章目录 简介 @SpringBootApplication @EnableAutoConfiguration 条件自动配置 @ConditionalOnClass 和 @ConditionalOnM ...
- Spring Boot注解的运行原理
Spring Boot 是一个基于 Spring Framework 的开源框架,通过简化配置和开发过程,使 Spring 应用程序的开发变得更加快速和便捷.在 Spring Boot 中,注解是非常 ...
- 一次性搞懂Spring Boot 注解原理与自动装配原理,图文并茂,万字长文!
原文:cnblogs.com/jing99/p/11504113.html 首先,先看SpringBoot的主配置类: @SpringBootApplication public class Star ...
- 10000 字讲清楚 Spring Boot 注解原理
今日推荐 借助Redis锁,完美解决高并发秒杀问题还在直接用JWT做鉴权?JJWT真香Spring Boot 操作 Redis 的各种实现Fluent Mybatis 牛逼!Nginx 常用配置清单这 ...
- Spring Boot 注解配置文件自动映射到属性和实体类
官网给出的配置文件大全: https://docs.spring.io/spring-boot/docs/2.1.0.BUILD-SNAPSHOT/reference/htmlsingle/#comm ...
- Spring Boot 注解原理,自动装配原理,图文并茂,万字长文!
首先,先看SpringBoot的主配置类: @SpringBootApplication public class StartEurekaApplication {public static void ...
- Spring Boot注解大全,一键收藏了!
点击上方"方志朋",选择"设为星标" 回复"666"获取新整理的面试文章 来源:www.cnblogs.com/tanwei81/p/681 ...
最新文章
- linux内核map图
- css字体的字型,CSS的字体、字型控制_css
- linux deepin sudo: add-apt-repository:找不到命令 解决办法
- 曹大带我学 Go(8)—— 一个打点引发的事故
- 几何画板200个经典课件_项目制学科联动 | 金芬娥首席工作室:灵动“画板”,研修创新,协同进步...
- Unity3D 自动打包整个项目(以AssetBundle实现)
- 黑客高手是这样上网的!Vimer是如何用快捷键浏览网页的?
- 诺基亚的「翻身」之战
- 洛谷——P1657 选书
- Win10桌面上:[ 我的电脑 ] 图标不见了
- QT学习之做一个简易图片处理器(后续补全)
- 《WINDOWS游戏编程之从零开始》第三章学习笔记
- 输入阻抗、输出阻抗与阻抗匹配
- 我的信息化教学改革实践-“oao‘课堂
- 用python爬取企查查_python爬取企查查江苏企业信息生成excel表格
- TouchSlop与VelocityTracker认识
- 诸葛亮舌战群儒的技术分析总结
- 如何开通微信商城?微商城的开通方法?
- Mac如何通过远程控制其他Mac
- 使用Burp,nbsp;Sqlmap进行自动化SQL注入渗透测试