spring事務到底用於service層還是dao層

spring事務到底用於service層還是dao層

Spring事務爲業務邏輯進行事務管理,保證業務邏輯上數據的原子性。

事務得根據項目性質來細分:事務可以設置到三個層面(dao層、service層和web層)。 

第一:web層事務,這一般是針對那些安全性要求較高的系統來說的。例如電子商務網站。粒度小,一般系統用不着這麼細。 

第二:service層事務,這是一常見的事務劃分, 將事務設置在業務邏輯上,只要業務邏輯出錯或異常就事務回滾。粒度較小,一般推薦這種方式。

第三:數據持久層數據務,也就是常說的數據庫事務。這種事務在安全性方面要求低。就是給一個簡單的增刪改之類的操作增加事務操作。粒度大

給Service層配置事務,因爲一個Service層方法操作可以關聯到多個DAO的操作。在Service層執行這些Dao操作,多DAO操作有失敗全部回滾,成功則全部提交。

事務分爲業務事務和系統事務,業務事務也就是業務邏輯上操作的一致性,系統事務自然就是指真正的數據庫事務,

Spring配置事務的是爲了什麼進行管理,當然是爲業務邏輯進行事務管理,保證業務邏輯上數據的原子性;

Dao層是什麼,數據訪問層,是不應該包含業務邏輯的,這就是和Service層的不同;

Service層就是業務邏輯層,事務的管理就是爲Service層上的保證

轉自:http://www.cnblogs.com/hutton/p/5493095.html

spring事務到底用於service層還是dao層

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章