(1)开启事务
setAutoCommit(boolean a): a为true为自动提交事务,a为false为手动提交事务
(2)提交事务
commit()
(3)回滚事务
rollback()
(4)示例
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.Statement;
public class BankSave {
public static void main(String[] args) throws Exception {
//1.注册驱动
Class.forName("com.mysql.cj.jdbc.Driver");
//2.获取连接
String url = "jdbc:mysql://127.0.0.1:3306/bank_code";
String user = "root";
String password = "158567";
Connection connection = DriverManager.getConnection(url, user, password);
//3.定义sql语句
String sql1 = "update user set deposite = 8888 where id = 5211";
String sql2 = "update bank set deposite = 8888 where id = 5211";
//4.执行sql语句的对象
Statement statement = connection.createStatement();
try {
//开启事务
connection.setAutoCommit(false);
//5.执行sql语句
statement.executeUpdate(sql1);
// int i = 3/0;
statement.executeUpdate(sql2);
//6.返回处理结果
//这里省略未做处理
//提交事务
connection.commit();
} catch (Exception e) {
//回滚事务
connection.rollback();
System.out.println("出错了");
}
//7.释放资源
connection.close();
statement.close();
}
}