栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

Spring Boot-从Application.properties填充列表/集合?

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Spring Boot-从Application.properties填充列表/集合?

事实证明它确实有效。但是,似乎您必须使用配置属性,因为简单

@Value("${prop}")
似乎在后台使用了不同的路径。(有一些提示,
DataBinder
在这个secion。不知道是否有关。)

application.properties

foo.bar[0]="a"foo.bar[1]="b"foo.bar[2]="c"foo.bar[3]="d"

并在代码中

@Component@ConfigurationProperties(prefix="foo")public static class Config {    private final List<String> bar = new ArrayList<String>();    public List<String> getBar() {        return bar;    }}@Componentpublic static class Test1 {    @Autowired public Test1(Config config) {        System.out.println("######## @ConfigProps " + config.bar);    }}

结果是

######## @ConfigProps ["a", "b", "c", "d"]

@Componentpublic static class Test2 {    @Autowired public Test2(@Value("${foo.bar}") List<String> bar) {        System.out.println("######## @Value " + bar);    }}

结果是

java.lang.IllegalArgumentException: Could not resolve placeholder 'foo.bar' in string value "${foo.bar}"    at org.springframework.util.PropertyPlaceholderHelper.parseStringValue(...    ...


转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/466251.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号