2013-10-29 101 views
1

我想創建2個彈簧配置文件,一個在測試中運行,另一個在其他環境中運行。根據不活動的配置文件,我需要定義一些bean。所以基本上想要做根據其他配置文件無法啓用彈簧配置文件

例如,

<beans profile="test"> 
<bean id="testconstructorBean" 
.... 
</beans> 
<!- is test is not available--> 
<beans profile="!test"> 
<bean id="constructorBean" 
... 
</beans> 

我看到的參考spring profles group,它也能正常工作。但我想要的是有兩個不能共存的替代配置。

問候 ň

+0

不知道我是否完全理解,你可以使用'profile =「!test」',這是一個有效的構造,你在使用這個構造時有問題嗎? –

回答

1

你可以實現一個WebApplicationInitializer和編程設置根據您的條件spring.profiles.active

This article討論基於環境設置配置文件的方法,這聽起來像您正在尋找的東西。

+0

但該聲明僅定義活動配置文件並且不激活任何分組/禁用配置文件。 – nissshh

+0

我不太瞭解你的評論。但是按照我建議的方式,你應該能夠激活任何一個配置文件(或者如果你想要,但它聽起來不像你)。如果你只活動一個,另一個將被禁用。那是你要的嗎? –

+0

我想處理DEV/SIT/UAT/PROD等配置文件,另一個配置爲TEST的情況。我希望只有在提供了TEST配置文件的情況下才能激活一些bean,無論其他配置文件是否處於活動狀態。希望這可以幫助。 – nissshh