2015-09-17 55 views
3

在我appliation,Spring配置文件導入基於環境屬性像下面執行的Java代碼peice的開始

我們知道春天configuation進口豆(財產佔位前解決)創作。

但我的需求量的是設置了「環境」從Java代碼系統的性能,因爲環境價值不是恆定的,它基於Spring configuation進口之前的一些邏輯 要設置都解決 我能以某種方式幫助春如何歸檔這個。

+1

你是在談論一個Web應用程序或standalong,也是你使用基於java的配置或xml基於 –

+0

感謝您的答覆。其Web應用程序和基於xml的配置 – user1283041

+2

這就是爲什麼接口ApplicationContextInitializer存在。創建一個實現,註冊並完成。你真的需要在代碼中做到這一點...爲什麼不簡單地將'spring.profiles.active'設置爲一個環境變量? –

回答

3

作爲@M。 Denium正確地指出,你可以使用接口ApplicationContextInitializer迎合這種需求

從春天文檔

公共接口ApplicationContextInitializer

回調接口被刷新之前初始化春 ConfigurableApplicationContext。

通常用於web應用程序中,需要編程 初始化應用程序上下文。例如,根據環境的 環境註冊 屬性來源或激活配置文件。請參閱ContextLoader和FrameworkServlet支持 分別聲明「contextInitializerClasses」上下文參數和init-param, 。