Java 一次执行多条sql

原创 2012年03月30日 09:15:54
//一次执行多条SQL,如果传来的SQL如果有一条不成功将显示失败
//Arraylist 为已封装的SQL语句 
//sMsg 为信息提示。当执行出问题时,输出相应的信息。(如:输入类名方法名,出错时可以看到出问题的方法名称)
public boolean exeManySQL(ArrayList arr,String sMsg)
{
  boolean bool=false;
  int nSize=arr.size();
  if(nSize>0)
  {
   //自定义链接数据库方法
    openDB();
    try {
      //不自动提交
     con.setAutoCommit(false);
     for(int i=0;i<nSize;i++)
     {
       String sTempSQL=(String)arr.get(i);
//System.out.println(sTempSQL);
       st.addBatch(sTempSQL);
     }
//     System.out.println("开始执行了...");
     int [] numArr=st.executeBatch();
//     System.out.println("numArr长度为:"+numArr.length);
//如果有一条出错时就执行回滚     
if(numArr.length==nSize) 
     {
       con.commit();//提交
       bool=true;
     }else
     {
       con.rollback(); //回滚
     }
    }
    catch (Exception ex) {
     tempBean.systemOutException(sMsg);
     tempBean.systemOutException("执行多条SQL语句时出错啦!");
     Debugger.printStackTrace(ex);
      try {
        con.rollback(); //回滚
      }
      catch (SQLException ex1) {
     if(arr.size()>0)
     {
     sMsg=(String)arr.get(0);
     }
     tempBean.systemOutException("执行多条SQL语句回滚时出错了! ");
        tempBean.systemOutException(ex1.getMessage());
        Debugger.printStackTrace(ex1);
      }
    }
    finally
    {
      closeDB();
    }
  }
  return bool;
}

java之路 myBatis重新学习(二) SQL语句映射XML文件

MyBatis 真正强大之处就在这些映射语句,也就是它的魔力所在。对于它的强大功能,SQL 映射文件的配置却非常简单。 如果您比较SQL 映射文件配置与JDBC 代码,您很快可以发现,使用SQL...
  • edyang123
  • edyang123
  • 2014年10月23日 10:35
  • 959

JAVA中两个专门操作枚举类型的容器类

在java中有两个容器来EnumSet和EnumMap,其他的方法看文档中对应的API。下面只是对这两个类的细节进行说明:   说明:普通的Map和Set也可以用来放枚举类型,但是用这两个类会更加...
  • andyhan_1001
  • andyhan_1001
  • 2014年06月29日 05:00
  • 861

java中,下面的List怎么放入map里面,求高手!

java中,下面的List怎么放入map里面,求高手!  分享| 2014-01-15 11:06_人生_匆匆 | 浏览 7099 次  java List list = new...
  • evilcry2012
  • evilcry2012
  • 2016年03月28日 10:27
  • 2580

Java大牛养成记——一条SQL语句更新同一张表中的两条数据

背景:项目中的需求是这样的:一堆图片中只有一张图片的状态是“启用”的,其他图片的状态是“未启用”。点击某张图片下面的启用按钮,这张图片的状态为“启用”,同时其他图片的状态修改为“未启用”。想象一下这个...
  • u013043341
  • u013043341
  • 2017年02月19日 23:04
  • 913

[C++]结构体、共同体和枚举类型

1、结构体类型的变量在内存依照其成员的顺序顺序排列,所占内存空间的大小是其全体成员所占空间的总和。 2、在编译时,仅对变量分配空间,不对类型分配空间。 3、对结构体中各个成员可以单独引用、赋值,其作用...
  • wzhCAlex
  • wzhCAlex
  • 2016年11月30日 22:49
  • 1112

js中两个小括号的用法

js 两个小括号 ()() 的用法 JavaScript 中,考查如下代码: Js代码  收藏代码 Java代码   (function()     {      ...
  • LANGZI7758521
  • LANGZI7758521
  • 2016年08月31日 11:01
  • 417

两张ID卡,完美消除互相干扰合二为一,实现“一卡”正反两用。

背景:公司打卡一张卡、饭卡一张卡,都是mango卡类型。这个类型不重要,重要的是很厚很厚很不方便。 就这样,某宝截了两个图。 反正就是很厚了,但是看到公交卡IC卡里面有线圈可以自行DIY...
  • qq_16513911
  • qq_16513911
  • 2017年12月15日 15:27
  • 241

android两个ListView同步滚动

我在网上看到大多数专家讲解的都是设置setOnScrollListener滑动监听,但是个人感觉设置滑动监听比较麻烦,感觉使用事件分发来做比较简单; 实现思路:首先来线下整体布局,是使用一个横向的...
  • Zheng_Jiao
  • Zheng_Jiao
  • 2016年05月17日 09:15
  • 4120

使用java、js和sql计算两个日期的时间差

Java计算两个日期的时间差以下为例子Date stime = mt.getStartTime(); Date etime = mt.getEndTime(); SimpleDateFormat sd...
  • sinat_29774479
  • sinat_29774479
  • 2017年10月14日 14:46
  • 126

Java中如何把两个数组合并为一个

http://freewind.me/blog/20110922/350.html 在Java中,如何把两个String[]合并为一个? 看起来是一个很简单的问题。但是如何才能把代码写得高效简...
  • CociJava
  • CociJava
  • 2016年04月08日 15:34
  • 670
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Java 一次执行多条sql
举报原因:
原因补充:

(最多只允许输入30个字)