spring事务三大接口
生活随笔
收集整理的這篇文章主要介紹了
spring事务三大接口
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
1.事務(wù)三大接口
?
PlatformTransactionManager
//根據(jù)事務(wù)定義TransactionDefinition,獲取事務(wù)
//提交事務(wù)
//回滾事務(wù)
?
?
事務(wù)定義接口TransactionDefinition
事務(wù)的定義包括: 事務(wù)的隔離級別,事務(wù)的傳播屬性,超時時間設(shè)置,是否只讀
事務(wù)的隔離級別是數(shù)據(jù)庫本身的事務(wù)功能,事務(wù)的傳播屬性則是spring為我們提供的功能
該接口的實現(xiàn)DefaultTransactionDefinition,默認的事務(wù)定義
1.事務(wù)的傳播屬性為PROPAGATION_REQUIRED,即當(dāng)前沒有事務(wù)的時候,創(chuàng)建一個,如果有則使用當(dāng)前事務(wù) 2.事務(wù)的隔離級別采用底層數(shù)據(jù)庫默認的隔離級別 3.超時時間采用底層數(shù)據(jù)庫默認的超時時間 4.是否只讀為false
?
?
?
事務(wù)接口定義 TransactionStatus
TransactionStatus它繼承了SavepointManager接口,SavepointManager是對事務(wù)中上述保存點功能的封裝,如下:
TransactionStatus本身更多存儲的是事務(wù)的一些狀態(tài)信息
?
是否是一個新的事物 是否有保存點 是否已被標(biāo)記為回滾
整個流程:
@Autowired private PlatformTransactionManager transactionManager;TransactionStatus status = null; // 手動開啟事務(wù) status = transactionManager.getTransaction(new DefaultTransactionDefinition());// 事務(wù)提交 transactionManager.commit(status);// 事務(wù)回滾 if (StringMoreUtils.checkValNotNull(status)) {transactionManager.rollback(status); }?
總結(jié)
以上是生活随笔為你收集整理的spring事务三大接口的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: JZOJ5776. 【NOIP2008模
- 下一篇: 特殊符号作用