JAVA設(shè)置手動(dòng)提交事務(wù),回滾事務(wù),提交事務(wù)的操作
我就廢話不多說(shuō)啦,還是直接看代碼吧!
/** * 設(shè)置數(shù)據(jù)庫(kù)是否自動(dòng)提交事務(wù) * @param flag * @throws SQLException */ public void setAutoCommit(boolean flag) throws SQLException { con.setAutoCommit(flag); } /** * 提交 * @throws SQLException */ public void commit() throws SQLException { con.commit(); } /** * 回滾 * @throws SQLException */ public void rollback() throws SQLException { con.rollback(); }
定義一個(gè)全局變量Connection 第一個(gè)方法設(shè)置為false就是手動(dòng)提交,這種方法適用于我們刪除東西后重新再添加?xùn)|西,類(lèi)似權(quán)限管理系統(tǒng)這種可以用得上
補(bǔ)充知識(shí):springboot 手動(dòng)開(kāi)啟事務(wù),分段提交
我就廢話不多說(shuō)了,直接看代碼吧!
List<OrdLogSyn> ordLogSynList = ordLogSynMapper.batchQuery('AP', '20190926', '0', '1000'); for (int i = 0; i < 2; i++) { DefaultTransactionDefinition def = new DefaultTransactionDefinition(); def.setPropagationBehavior(DefaultTransactionDefinition.PROPAGATION_REQUIRES_NEW); TransactionStatus status = platformTransactionManager.getTransaction(def); List<OrdLogSyn> subList = null; if (i==0){ subList = ordLogSynList.subList(0, 500); }else if (i==1){ subList = ordLogSynList.subList(501, 1000); } for (OrdLogSyn ordLogSyn : subList) { int q = ordLogSynMapper.updateChkFlag(ordLogSyn.getConfirmSeqId(), ordLogSyn.getAcctDate(), 'I'); System.out.println('q = ' + q); } platformTransactionManager.commit(status); }
以上這篇JAVA設(shè)置手動(dòng)提交事務(wù),回滾事務(wù),提交事務(wù)的操作就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持好吧啦網(wǎng)。
相關(guān)文章:
