2013-04-15 114 views
0

我想要做一個SPRING(3.2.1)設置,在那裏我可以根據你所處的環境來切換底層的JMS提供者。 dev,test,prod。我不是專家,但已經遇到了Spring的@Profile註釋。我真的不知道如何使用它。所以我需要做的是在DEV環境中我想使用ActiveMQ,而在PRODUCTION中我想使用IBM MQ。這可能嗎?如果是這樣,將不勝感激,如果你可以提供一些配置或代碼來做到這一點。提前致謝。在jms提供者之間切換

回答

0

http://static.springsource.org/spring-framework/docs/3.2.1.RELEASE/spring-framework-reference/html/new-in-3.1.html#new-in-3.1-bean-definition-profiles

對於XML配置,請參閱本博客... http://blog.springsource.com/2011/02/11/spring-framework-3-1-m1-released/

看到這個博客約@profile:http://blog.springsource.com/2011/02/14/spring-3-1-m1-introducing-profile/使用型材@Configuration。

它歸結爲...

當使用XML配置,只需在Spring配置文件的末尾添加<beans/>元素...

<beans ...> 
    <bean... /> 

    <beans profile="DEV"> 
     <bean ... // my ActiveMQ config .../> 
    </beans? 

    <beans profile="default"> 
     <bean ... // my IBM (or JNDI) config .../> 
    <beans/> 
</beans> 

然後在開發中與-Dspring-profiles-active=DEV運行。

類似地@Profile可以添加到@Configuration類中,以限制它們對特定活動配置文件的使用。

+0

感謝您的查詢答覆。我會試試這個並回傳。再次感謝。 – user2279337