亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

如何理解Hibernate事務管理器

發布時間:2021-06-16 15:29:51 來源:億速云 閱讀:143 作者:chen 欄目:編程語言

這篇文章主要講解了“如何理解Hibernate事務管理器”,文中的講解內容簡單清晰,易于學習與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學習“如何理解Hibernate事務管理器”吧!

Hibernate有很多值得學習的地方,這里我們主要介紹Hibernate事務管理器,包括介紹OrderListManager服務等方面。

Hibernate事務管理器

由于我們已決定使用Hibernate作為ORM工具,下一步要做的就是配置一個特定于Hibernate事務管理器實現。

<beans>  <!-- other code goes here... -->  <bean id="transactionManager1" class="org.springframework.orm.hibernate.  HibernateTransactionManager"> <property name="sessionFactory"> <ref local="sessionFactory1"/> </property> </bean>  </beans>

設計多個組件中的事務的管理

現在,我們來討論什么是“裝配組件事務”。您也許注意到了為域中的服務級組件OrderListManager所指定的各種TX屬性。

為了更好的說明,我們來列出我們的域中的一些非功能性需求(Non-Functional Requirement,NFR):
◆業務對象需要保存在一個數據庫中(appfuse1)。
◆審計時要登錄到另一個數據庫中(appfuse2),出于安全的考慮,數據庫要有防火墻保護。
◆業務組件應該可以重用。
◆必須盡一切努力審計業務服務層的所有活動。

考慮了以上要求之后,我們決定,OrderListManager服務會將所有的審計日志調用委托給已經可用的AuditManager組件。

這里值得注意的一點是,由于我們的NFR,我們要將與OrderListManager相關的對象映射到appfuse1數據庫,而將與審計相關的對象映射到appfuse2。這樣,無論要審計什么,OrderListManager組件都會調用AuditManager組件。我們會看到,OrderListManager組件中的所有方法都應該是事務性的,因為我們通過服務來創建訂單和線項目(line item)。那么AuditManager組件中的服務呢?因為它做的是審計跟蹤,我們關心的是盡可能維持長時間的審計跟蹤,并針對系統中所有可能的業務活動。這就產生了如下的需求:“即使主要的業務活動失敗了,也要進行審計跟蹤記錄”。AuditManager組件同樣要有自己的事務,因為它也與自己的數據庫進行交互。Hibernate事務管理器如下所示:

  1. <beans> 

  2.  

  3. <!-- other code goes here... --> 

  4. <bean id="auditManager"class="org.springframework.transaction.
    interceptor.TransactionProxyFactoryBean"> 

  5. <property name="transactionManager"> 

  6. <ref local="transactionManager2"/> 

  7. </property> 

  8. <property name="target"> 

  9. <ref local="auditManagerTarget"/> 

  10. </property> 

  11. <property name="transactionAttributes"> 

  12. <props> 

  13. <prop key="log"> 

  14. PROPAGATION_REQUIRES_NEW  

  15. </prop> 

  16. </props> 

  17. </property> 

  18. </bean> 

  19.  

  20. </beans> 

感謝各位的閱讀,以上就是“如何理解Hibernate事務管理器”的內容了,經過本文的學習后,相信大家對如何理解Hibernate事務管理器這一問題有了更深刻的體會,具體使用情況還需要大家實踐驗證。這里是億速云,小編將為大家推送更多相關知識點的文章,歡迎關注!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

庄河市| 昌都县| 犍为县| 三原县| 麻江县| 汉寿县| 竹溪县| 勃利县| 梁河县| 阿城市| 普陀区| 伽师县| 奉新县| 镇坪县| 北宁市| 安吉县| 洛扎县| 彰化市| 汝州市| 齐齐哈尔市| 隆林| 泽州县| 许昌市| 三亚市| 鹰潭市| 连江县| 庆云县| 米林县| 皮山县| 龙门县| 新密市| 盘山县| 拉萨市| 瓦房店市| 南漳县| 寻乌县| 马边| 大渡口区| 黄浦区| 封丘县| 昭通市|