package com.haoran.lesson4; import com.haoran.lesson2.utils.jdbcUtils; import java.sql.Connection; import java.sql.PreparedStatement; import java.sql.ResultSet; import java.sql.SQLException; public class transaction { public static void main(String[] args) { Connection conn=null; PreparedStatement pst=null; ResultSet rs=null; try { conn=jdbcUtils.getConnection(); conn.setAutoCommit(false);//关闭数据库自动提交功能=开启事务 String sql1="update account set money=money-200 where name='xiaoli'"; pst = conn.prepareStatement(sql1); pst.executeUpdate(); //int x=1/0;该处出现错误,则事务不会允许,因为事务的acid String sql2="update account set money=money+200 where name='xiaowang'"; pst = conn.prepareStatement(sql2); pst.executeUpdate(); //事务执行完毕; conn.commit(); System.out.println("执行成功"); } catch (SQLException e) { try { conn.rollback();//如果失败则回滚事务 } catch (SQLException ex) { ex.printStackTrace(); } e.printStackTrace(); }finally { jdbcUtils.release(conn,pst,rs); } } }
JDBC执行事务
最新推荐文章于 2024-07-16 09:00:00 发布
本文介绍了如何在Java中使用事务控制,通过`jdbcUtils`连接数据库并执行两条更新操作,确保了在出现错误时的回滚机制。关键步骤包括设置自动提交为false,执行SQL更新,异常处理和最终释放资源。
摘要由CSDN通过智能技术生成