2009-12-13 19 views
1

當使用在業務層春天@Transcational,我需要把<annotation driven>上的XML文件。org.springframework.transaction.annotation.Transactional VS javax.jdo.annotations.Transactional

我想知道

  1. 可以javax.jdo.annotations.Transactional上就像春天做服務層可以使用?無需配置xml文件。等等?

  2. Can javax.jdo.annotations.Transactional可以在服務層上使用,而不管我在dao層是否使用hibernate/jpa/jdo?除了使用@Transactional來標記方法之外,是否還需要配置其他任何東西?

  3. javax.jdo.annotations.Transactionalorg.springframework.transaction.annotation.Transactional之間是否有區別/限制?

回答

6

你看過javadoc嗎?這是我讀到的javax.jdo.annotations.Transactional

表示成員(字段或屬性)是事務性但不持久的註釋。這對應於「field」和「property」元素的xml屬性persistence-modifier =「transactional」。

這似乎與Spring的@Transactional註解沒有可比性。

介紹 方法或類的事務屬性。

此註釋類型通常是 直接可比性Spring的 RuleBasedTransactionAttribute類, 而事實上 AnnotationTransactionAttributeSource 將數據直接轉換爲 後一類,使Spring的 事務支持代碼沒有 知道註釋。如果沒有規則 與異常相關,則將 視爲 DefaultTransactionAttribute(回滾運行時異常時滾動 )。

因此,要回答你的問題:

可我知道能javax.jdo.annotations.Transactional在業務層,就像彈簧作用?不需要配置xml文件。等等?

可以javax.jdo.annotations.Transactional上服務層獨立於i是否使用被用於休眠/ JPA在DAO層/ JDO?除了使用@Transactional來標記方法之外,還需要配置其他任何東西嗎?

否參見上文。

javax.jdo.annotations.Transactionalorg.springframework.transaction.annotation.Transactional之間有什麼不同/限制?

是的。一個是蘋果,另一個是橘子。

相關問題