@ConfigurationProperties注解在spring boot中使用

今天整合springboot时候,在person类中用@ConfigurationProperties(prefix = "testPerson")取application-dev.yml文件的值时,发现取出来的值都是空值,也没报错。

而在HelloController类中用用@Value("testValue")取值却成功的从application-dev.yml文件中取出来了。

 

application-dev.yml文件内容:

testValue: test
testEL: "pageSize:${testValue}"
testPerson:
  name: test
  age: 123
  id: 456
 

纠结了一会,干脆换成了properties配置,还是用@ConfigurationProperties取值,结果在application.properties文件中的数据却取出来了。

仔细看了下区别。感觉可能是文件名的锅。我把文件名从application-dev.ym改成application.ym,结果@ConfigurationProperties取成功了。

原来@ConfigurationProperties和@Value不一样,前者默认从application文件中取值,后者似乎没有这个限制。

@ConfigurationProperties在其他配置文件取值时候,需要@PropertySource("classpath:config/xxx.yml") 配置文件路径 .
--------------------- 
 

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值