import java.sql.*;
import java.util.Scanner;
public class jdbc_test {
public static void main(String[] args) throws ClassNotFoundException, SQLException {
Connection conn=null;
PreparedStatement pstmt1=null;
PreparedStatement pstmt2=null;
try {
//获取连接
conn=JDBCUtils.getConnection();
//开启事务
conn.setAutoCommit(false);
//定义sql语句
String sql1="update account set balance=balance- ? where id=?";
String sql2="update account set balance=balance+ ? where id=?";
//获取执行sql对象
pstmt1=conn.prepareStatement(sql1);
pstmt2=conn.prepareStatement(sql2);
//设置参数
pstmt1.setDouble(1,500);
pstmt1.setInt(2,1);
pstmt2.setDouble(1,500);
pstmt2.setInt(2,2);
//执行sql
pstmt1.executeUpdate();
//手动制造异常
//int i=3/0;
pstmt2.executeUpdate();
//提交事务
conn.commit();
}catch (Exception e){
//事务回滚
try{
if(conn!=null){
conn.rollback();
}
}catch (SQLException e1){
e1.printStackTrace();
}
e.printStackTrace();
}finally {
JDBCUtils.close(pstmt1,conn);
JDBCUtils.close(pstmt2,conn);
}
}
}
java连接Mysql,实现简单的事务修改
最新推荐文章于 2021-02-11 18:18:40 发布