您的位置:首页 > 编程语言 > Java开发

spring注入properties文件的can not resolve placeholder问题

2017-08-24 18:09 1036 查看
一般有三种情况:

(1)location中的属性文件配置错误

(2)location中定义的配置文件里面没有对应的placeholder值

(3)可能是Spring容器的配置问题

前两种注意查看拼写,路径基本都能解决,第三种在查阅相关资料后应按如下的方式解决:

Spring容器采用反射扫描的发现机制,在探测到Spring容器中有一个org.springframework.beans.factory.config.PropertyPlaceholderConfigurer的Bean就会停止对剩余PropertyPlaceholderConfigurer的扫描(Spring 3.1已经使用PropertySourcesPlaceholderConfigurer替代PropertyPlaceholderConfigurer了)。 

而这个基于命名空间的配置,其实内部就是创建一个PropertyPlaceholderConfigurer Bean而已。换句话说,即Spring容器仅允许最多定义一个PropertyPlaceholderConfigurer(或),其余的会被Spring忽略掉(其实Spring如果提供一个警告就好了)。 

(参考:http://blog.sina.com.cn/s/blog_5a15b7d10102w4k2.html)

所以在所有<context:property-placeholder/>标签添加ignore-unresolvable="true"
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐