我们已经将现有的Spring Web应用程序作为WAR文件部署到Amazon Elastic Beanstalk中。当前,我们将属性文件作为http资源加载,以提供属性占位符配置解析的单一来源。我正在研究用新的Spring Cloud配置服务器替换它,以便为我们提供git版本控制等好处。
但是,文档(http://cloud.spring.io/spring-cloud-config/spring-cloud-config.html)似乎仅描述了Spring Boot客户端应用程序。是否可以在现有Web应用程序中设置Spring Cloud Config Client?我是否需要手动设置Bootstrap父应用程序上下文等-是否有任何示例?我们当前的spring配置基于XML。
我有类似的要求;我有一个使用Spring XML配置定义一些bean的Web应用程序,这些属性的值存储在.property文件中。要求是在开发过程中应从硬盘加载配置,并在生产环境中从Spring Cloud Config服务器加载配置。
我的想法是为PropertyPlaceholderConfigurer定义两个:第一个将用于从硬盘加载配置:
<bean id="resources" class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer" doc:name="Bean"> <property name="locations"> <list> <value>dcm.properties</value> <value>post_process.properties</value> </list> </property> </bean>
第二个将从Spring Config Server加载.properties:
<bean id="resources" class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer" doc:name="Bean"> <property name="locations"> <list> <value>http://localhost:8888/trunk/dcm-qa.properties</value> </list> </property> </bean>