spring中的@Transactional註解

參數(readOnly = true)

概念:從這一點設置的時間點開始(時間點a)到這個事務結束的過程中,其他事務所提交的數據,該事務將看不見!(查詢中不會出現別人在時間點a之後提交的數據)

 

應用場合:

如果你一次執行單條查詢語句,則沒有必要啓用事務支持,數據庫默認支持SQL執行期間的讀一致性; 
如果你一次執行多條查詢語句,例如統計查詢,報表查詢,在這種場景下,多條查詢SQL必須保證整體的讀一致性,否則,在前條SQL查詢之後,後條SQL查詢之前,數據被其他用戶改變,則該次整體的統計查詢將會出現讀數據不一致的狀態,此時,應該啓用事務支持。
【注意是一次執行多次查詢來統計某些信息,這時爲了保證數據整體的一致性,要用只讀事務】

readOnly=false默認,開啓讀寫事務。讀寫數據庫的時候,假如某一行代道碼報錯了,那麼這個方法裏所有的數據庫操作都會被回滾。

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