[英]Does EJB create new transaction
當我使用jpa(eclipselink)執行只讀查詢時,EJB(glassfish)是否創建新事務。
這取決於@TransactionAttribute
。默認情況下,它設置為Required
,這意味着如果它不在事務中運行,它將啟動一個。
TransactionAttribute批注的值由枚舉TransactionAttributeType定義。 如果未指定TransactionAttribute批注,並且Bean使用容器管理的事務划分,則將采用REQUIRED事務屬性的語義。
以及Required
的語義:
如果在客戶端與事務上下文關聯時客戶端調用企業Bean的方法,則容器將在客戶端的事務上下文中調用企業Bean的方法。
如果在客戶端未與事務上下文關聯的情況下客戶端調用企業Bean的方法,則容器在將方法調用委托給企業Bean方法之前會自動啟動新事務。
更多信息: http : //docs.oracle.com/javaee/6/api/javax/ejb/TransactionAttribute.html
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.