?
Ce document utilise Manuel du site Web PHP chinois Libérer
Spring 2.0關(guān)于事務的配置方式發(fā)生了重大的變化。早先的1.2.x版本的配置方式仍然有效(并且受支持),但是新的方式明顯更加簡潔,并成為最推薦的方式。 Spring 2.0 同時提供了AspectJ切面庫,你可以使用它來生成更漂亮的事務性對象 - 甚至可以不是由Spring IoC容器產(chǎn)生的。
Spring 2.5在裝載時植入外還支持方便的注解驅(qū)動的事務管理,這是通過context:load-time-weaver
和tx:annotation-driven mode="aspectj"
的聯(lián)合使用進行的。
標題為 第?9?章 事務管理 的部分包含所有的細節(jié)。
Spring 2.5 明確支持IBM的WebSphere Application Server,特別是WebSphere's transaction manager. Transaction suspension(事務掛起)現(xiàn)在通過使用WebSphere新的UOWManager
API得到了完整支持,此API在on WAS 6.0.2.19+ and 6.0.1.9+ 可用。
因此如果你在WebSphere Application Server中運行基于Spring的應用程序,我們高度建議你使用Spring 2.5的WebSphereUowTransactionManager
作為你選擇的PlatformTransactionManager
。這也是 IBM官方的建議。
要自動探測底層的JTA 事務平臺,可以使用Spring 2.5的新 tx:jta-transaction-manager
配置元素。它會自動探測BEA WebLogic和IBM WebSphere,注冊正確的PlatformTransactionManager
。
Spring 2.0提供了JPA抽象層,在所起的作用與常規(guī)使用模式上,類似于Spring的JDBC抽象層。
如果你對使用實現(xiàn)JPA作為自己持久層的基礎(chǔ)感興趣,標題為 第?12.6?節(jié) “JPA” 的部分專門描述了在這個領(lǐng)域Spring的支持與附加值。
Spring 2.5對OpenJPA的支持升級到了OpenJPA 1.0,支持savepoint這樣的高級特性。
在Spring 2.0之前,Spring的JMS的作用局限于發(fā)送消息和同步接收消息。
這個功能(封裝在 JmsTemplate
類中)當然是很好的,
但是,它沒有滿足異步消息接收的需要。
Spring 2.0現(xiàn)在提供對異步消息接收的完整支持。在標題為 第?19.4.2?節(jié) “異步接收 - 消息驅(qū)動的POJO” 的部分有詳細的描述。
在Spring 2.5中, JCA風格的異步消息監(jiān)聽器設(shè)置也通過GenericMessageEndpointManager
工具得到了支持。這是對標準JMS監(jiān)聽器工具的補充,允許對ActionMQ和JORAM這些消息broker進行更深入的集成。參見第?19.5?節(jié) “JCA消息端點的支持”。
Spring 2.5 還引入了一個XML namespace來簡化JMS配置,可以對大量監(jiān)聽器進行簡明配置。這一命名空間支持標準的JMS監(jiān)聽器和JCA setup風格,在配置時只有很小的改變。參閱第?19.6?節(jié) “JMS命名空間支持”。