在Spring-MVC中部署多个环境

时间:2010-04-25 14:39:29

标签: java deployment spring-mvc configuration-management

目前,所有网络应用都使用单独的配置文件进行部署:

<!-- <import bean.... production/> -->
<import bean... development/>

这有缺点,即使你只需要交换一个配置文件,我确信每个人都熟悉(想知道刚刚部署而不搜索XML是其中之一)

我想将Logging添加到我的应用程序中,该应用程序基本上是“在生产模式下运行”,其中包含已部署服务的说明以及它们正在使用的模式。

RUNNING IN PRODUCTION MODE 
Client Service - Production
Messaging Service - Local

依旧......

这是否可以在Spring中使用传统部署(在服务器上发动战争)?人们还可以做些什么来管理部署和软件配置?

如果没有,你可以通过其他方式获得类似的东西吗?

2 个答案:

答案 0 :(得分:2)

是的。您可以使用PropertyPlaceholderConfigurer动态添加属性,并在每个环境中使用不同的属性文件。例如:

<bean class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
  <property name="location" value="classpath:environment.properties"/>
</bean>

这个是从类路径加载的,这可能对您有用,也可能不适用,具体取决于您启动应用程序的方式。所以你可以在其中使用属性:

environment.message=DEVELOPMENT ENVIRONMENT

然后,您可以选择如何将其转换为网页。可能最简单的方法是使用拦截器添加请求属性并从Spring配置中注入$(environment.message}的值。

无论如何,希望指出你正确的方向。

答案 1 :(得分:1)

使用Spring 3.1中添加的配置文件功能也可以实现。请参阅here

相关问题