为了账号安全,请及时绑定邮箱和手机立即绑定

[Spring] 多个 PropertyPlaceholderConfigurer 导致占位符未替换问题

[Spring] 多个 PropertyPlaceholderConfigurer 导致占位符未替换问题

潇潇雨雨 2019-05-21 11:11:15
这是一个Spring项目,第一个PropertyPlaceholderConfigurer,在context-aaa.xml主要是配置JDBCpropertiesclasspath:jdbc.properties其中,jdbc.properties的内容如下:test.datasource.url=jdbc:mysql://192.168.0.66:3306/devtest.datasource.username=roottest.datasource.password=123456第二个PropertyPlaceholderConfigurer,在context-bbb.xml,功能是从数据里加载properties问题来了,加载DruidDataSource时,占位符并没有被替换。我已经加了PropertyPlaceholderConfigurer的order属性排序,以及ignoreUnresolvablePlaceholders为true了,但是问题依旧。DruidDataSource作为第二个PropertyPlaceholderConfigurer的依赖,它的配置占位符不会被处理吗?我断点发现,BeanFactoryPostProcessor的处理,在程序的报错之后才执行,是怎么回事?https://jira.spring.io/browse...我找到了解决方案:Thealternativeisto(a)usethenewPropertySourcesPlaceholderConfigurerinsteadofthetraditionalPropertyPlaceholderConfigurer;(b)eliminatethefirstPropertySourcesPlaceholderConfigurer;(c)registeraPropertySourcewiththeApplicationContext'sEnvironmentthatcontainsthepropertiesfortheplaceholdersthatneedreplacementinthePropertySourcesPlaceholderConfigurer我想问第三步怎么操作啊?
查看完整描述

2 回答

  • 2 回答
  • 0 关注
  • 1633 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信