springboot中java代码读取yml⽂件中的数组
今天在运⾏项⽬时想直接把yml⽂件中的⼀个数组注⼊到java类的⼀个对象上,结果怎么弄都不通过
⼀直都在⽤Spring的@Value注解读取yml中的配置,这两天在读取配置的时候,想读取yml中配置的⼀个数组,通过@Vaule⼀直获取不到,通过⼀番资料的查询,才彻底清楚了@Vaule的使⽤情况。
在Spring中读取配置⽂件的快捷⽅法常见的有两种,⼀个是通过@Vaule注解进⾏单⼀字段的注⼊,另外⼀种⽅法就是通过
@ConfigurationProperties注解来进⾏批量注⼊。
@ConfigurationProperties注解属于SpringBoot,不在SpringFramework⾥⾯
这两种注⼊⽅式各有⾃⼰的优势和使⽤场景。
@Value@ConfigurationProperties
使⽤场景单⼀属性注⼊,注解写在类的属性上批量注⼊,注解写在类上
松散语法不⽀持⽀持
SpEL⽀持不⽀持
JSR303数据校验@Validated不⽀持⽀持
复杂类型封装(数组、Map、对象等)不⽀持(这么说不严谨)⽀持
出问题的注⼊⽅式
spring怎么读音读音标
报错:java.lang.IllegalArgumentException: Could not resolve placeholder 'list' in value "${list}"
正确的注⼊⽅式:(yml⽂件都是l不是⾃定义的yml)
1.@ConfigurationProperties(prefix = "dog")(这⾥的dog与yml⽂件中的dog相对应)

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。