Spring 自定义属性占位符配置器



我有基于 xml 的 config spring 应用程序,我已经在数据库中移动了启动时所需的程序。在属性文件中管理数百个非常困难,这就是引入数据库的原因。为了读取属性,开发了春季休息服务,以返回启动时所需的所有属性的地图。

我想知道如何替换从映射读取到 spring 上下文文件的属性,例如 ${config.service.url} 应该从通过 Web 服务读取的映射中填充。

我考虑的一个选择是升级到基于注释,并开始使用MapPropertySource和环境接口作为environment.getRequiredProperty("config.service.url")。但是,升级到基于注释对项目的影响很大,目前还没有。

我期待的第二个选择是拥有一个定制的PropertyPlaceholderConfigurer。

任何关于此的指示/帮助都会很棒。

干杯

琥珀

您可以定义 PropertyPlaceholderConfigurer,但您可以直接传递 restful 服务返回的属性,而不是指定文件位置。

<bean class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
  <property name="properties" .../>
</bean>

最新更新