spring中使用context:property-placeholder错误记录

问题:

最近使用spring时候, 使用@value注解, 想注入配置文件中的相关属性 .
这里写图片描述
但是出现下面错误:
Caused by: java.lang.IllegalArgumentException: Could not resolve placeholder ‘ITEM_INFO’ in string value “${ITEM_INFO}”
但是我发现我配置文件中已经配置了:

<!-- 配置数据库连接池 -->
<context:property-placeholder location="classpath:properties/db.properties" />
<context:property-placeholder location="classpath:properties/resource.properties" />

但是这个resource.properties配置文件中的属性却没有注入进去, 但是我的另一个db.properties配置文件的数据库属性却已经注入进去,这就很奇怪了.
两个配置文件:
这里写图片描述

我就想, 难道第二个配置文件会被忽略吗?最后网上找了找这个配置的详细信息.
果然:
Spring容器仅允许最多定义一个PropertyPlaceholderConfigurer(或),其余的会被Spring忽略掉


解决办法:

使用一个配置,同时加载两个文件即可 :

<!-- 加载配置文件 -->
    <context:property-placeholder location="classpath:properties/*.properties" />
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值