事務注解@Transactional(readonly=true)


概念

從設置的時間點(時間點beta)開始到事務結束的過程中,該事務將看不見其他事務所提交的數據,即查詢中不會出現別人在beta之后提交的數據。

 

使用場景

對於一個函數,如果執行的只是單條查詢語句,則沒有必要啟用事務支持,數據庫默認支持SQL執行期間的讀一致性;如果執行多條查詢語句,例如統計查詢,報表查詢等,則多條查詢SQL必須保證整體的讀一致性;否則,若在前后兩條查詢SQL執行的間隙,數據被其他用戶改變,則該次整體的統計查詢將會出現讀數據不一致的情況,此時,應該啟用事務支持。注意,是一次執行多次查詢來統計某些信息,這時為了保證數據整體的一致性,要用只讀事務。

對於只讀查詢,可以指定注解@Transactional的事務類型為readonly,即只讀事務。

對於新增、修改、刪除操作,一定不能設置readonly=true,否則會引發該注解作用域內所有此類操作失效。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM