欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

JAVA设置手动提交事务,回滚事务,提交事务的操作

程序员文章站 2022-07-04 21:27:51
我就废话不多说啦,还是直接看代码吧!/** * 设置数据库是否自动提交事务 * @param flag * @throws sqlexception */ public void setaut...

我就废话不多说啦,还是直接看代码吧!

/**
  * 设置数据库是否自动提交事务
  * @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设置手动提交事务,回滚事务,提交事务的操作就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。