JAVA設定手動提交事務,回滾事務,提交事務的操作
阿新 • • 發佈:2020-04-27
我就廢話不多說啦,還是直接看程式碼吧!
/** * 設定資料庫是否自動提交事務 * @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(); }
定義一個全域性變數Connection 第一個方法設定為false就是手動提交,這種方法適用於我們刪除東西后重新再新增東西,類似許可權管理系統這種可以用得上
補充知識:springboot 手動開啟事務,分段提交
我就廢話不多說了,直接看程式碼吧!
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設定手動提交事務,回滾事務,提交事務的操作就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支援我們。