JDBC的事务处理

事务,也是数据库事务,指的是作为单个逻辑工作单元执行的一系列操作。正常的情况下,操作应该顺利进行,与操作相关的所有数据库信息也成功地更新;

但是,如果在这一系列过程中任何一个环节出了差错,导致操作失败了,数据库中所有信息都必须保持操作前的状态不变。否则,数据库的信息将会一片混乱而不可预测。

一个逻辑工作单元要称为事务,必须满足ACID(原子性,一致性,隔离性和持久性)

事务的结束只能有两种形式:提交和回滚。操作完全成功则提交,产生永久性的修改;操作不完全成功则回滚,恢复到事务开始前的状态。它们将结束一个事务。

(1)关闭自动提交事务。通过设置连接的自动提交事务属性为false,如下:

Connection conn = DriverManager.getConnection( "连接URL" , "用户名" , "密码" );
//关闭自动提交事务
conn.setAutoCommit( false );

(2)如果执行顺利,提交事务;一旦发生异常,回滚(rollback)事务,如下:

try {
     conn.setAutoCommit( false );     //关闭自动提交事务
     stmt = conn.createStatement();    //创建会话
     stmt.executeUpdate( "sql语句" );
     conn.commit();      //提交事务
} catch (Exception e)
{
     e.printStackTrace();
     conn.rollback();    //回滚事务   
}

  

(3)关闭连接,如下:

finally {
     if (stmt != null )
         stmt.close();
     if (conn != null )
         conn.close();
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值