2010-04-25 96 views
1

目前所有的網絡應用程序都是使用單獨的部署配置文件:Spring的MVC部署多個環境

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

這有缺點,即使你只需要換出一個配置文件,我敢肯定,每個人都熟悉(想知道什麼只是部署沒有通過XML搜索是其中之一)

我想添加記錄到我的應用程序,基本上說'運行在生產模式',與部署服務的描述和他們是什麼模式正在工作。

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

等等...

在春季使用傳統的部署(把戰爭的服務器上),這可能嗎?人們做什麼來管理部署和軟件配置?

如果不是,還有什麼其他方法可以實現類似的功能?

回答

2

是的。您可以使用PropertyPlaceholderConfigurer來動態添加屬性,並在每個環境中具有不同的屬性文件。例如:

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

這一個是從classpath,這可能會爲你工作或可能不取決於你如何啓動應用程序加載。所以,你可以在它的屬性,如:

environment.message=DEVELOPMENT ENVIRONMENT 

然後,您就如何得到這個網頁中的幾個選項。可能最簡單的方法是使用攔截器添加請求屬性並從Spring配置中注入值$(environment.message}

無論如何,希望你指出正確的方向。

1

這也可以使用配置文件在Spring 3.1中添加的功能。見here