如何向SpringBoot注入数据? SpringBoot如何实现数据注入?(2)
如何向SpringBoot注入数据
思考:假如项目出现属性确实不需要默认值或者项目中涉及到很多个这样的数下,那么我们在每一个属性上都添加一个@value注解?
@ConfigurationProperties注解
使用@Value(“ $ {property}”)批注来注入配置属性有时会很麻烦,尤其是使用多个属性或数据本质上是分层时。 Spring Boot提供了
@ConfigurationProperties注解使用属性的替代方法,该方法使强类型的Bean可以管理和验证应用程序的配置
@Data
@Component
@ConfigurationProperties(prefix = "person")
public class Person {
// @Value("${person.name}")
private String name;
// @Value("${person.age}")
private Integer age;
}
注意:
prefix: 指定属性前缀:属性指定配置文件中的属性前缀,所有以该前缀开头的属性将被映射到 JavaBean 类的对应字段。- @ConfigurationProperties 注解通常放在一个带有 @Component 或 @Configuration 注解的类上,以便被 Spring Boot 扫描并注入到容器中。
测试
修改为@ConfigurationProperties注解后重新启动项目发现可以启动成功,使用浏览器发送http://localhost:8080/person,结果如下:
- age不存在默认值了

补充知识
${…}用于获取属性文件中对应的值,但是如果属性文件中没有这个属性,则会报错。
可以通过赋予默认值解决这个问题
@Value("${person.age:18}")
private Integer age;
总结:
- @Value 适用于简单的属性注入,可以直接在代码中使用,直接使用时代码复用性差。
- @ConfigurationProperties 适用于将一组相关的配置属性组织起来,并映射到一个 JavaBean 类中,提供更结构化的配置管理。
以上IT袋网网介绍的如何向SpringBoot注入数据?的IT数码常识,如果能给您带来帮助,记得常来IT袋网网!
相关阅读
-
nginx链接末尾自动补全斜杠 nginx详细教程
为大家介绍nginx链接末尾自动补全斜杠的相关经验,下面为详细的介绍。 如何在nginx链接末尾自动补全斜杠,下面不念就来讲一下详细步骤教程。 放在locaation里边就行 location /new { root /data/; i
-
Wi-Fi 标准|什么是Wi-Fi 7?
为大家介绍Wi-Fi方面的讲解,具体内容如下: 我们要知道如今全球有超过 90 亿台 Wi-Fi 设备在使用,对 Wi-Fi 网络的需求将不断增加。随着新的超高吞吐量和低延迟应用程序日益增多,相关研究
-
c语言中自增自减 c语言自增运算符实例代码
学习c语言一段时间了,再练习的过程中就顺便做下此笔记c语言自增运算符综合实例代码,当然自减运算也就是一样的原理了。 #include stdio.hint main(void){ int a = 10; int b = 20; int c = b*a++; //++在后,
-
跑跑卡丁车什么时候出的游戏 跑跑手游官方网站入口
IT电脑小知识篇,关于跑跑卡丁车什么时候出的游戏和跑跑手游官方网站入口的相关介绍,一起来了解了解吧。 7月2日 《跑跑卡丁车》 2006年一款休闲赛车竞速游戏进入了我们的视野,掀起了一


