jdbc中执行一系列sql语句时一个简单事务的实现

以下代码并没有用到第三方的东西,完全是在java jdk的接口上写出来的,保证一系列sql语句在一个事务中执行,如果出现异常则回滚,简单吧,一些第三方东西支持的所谓事务也可能是这个道理,只是往往进行了封装。
public boolean execSqlList(List sqlList)
{
boolean bRes = true;
Connection conn = DbTool.getConn();
try {
//这一步很关键,需要把连接设为非自动提交状态
conn.setAutoCommit(false);
} catch (SQLException e2) {
e2.printStackTrace();
}
try {
Statement stmt = conn.createStatement();
if(sqlList != null && sqlList.size()>0)
{
for(int i=0;i<sqlList.size();i++)
{
stmt.execute((String)sqlList.get(i));
}
conn.commit();
stmt.close();
}
} catch (SQLException e) {
e.printStackTrace();
try {
//如果执行中出现异常则回滚,保证在一个事务中进行
conn.rollback();
} catch (SQLException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}
bRes = false;
}
finally
{
try {
conn.close();
} catch (SQLException e1) {
e1.printStackTrace();
bRes = false;
}
}
return bRes;
}
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值