import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.SQLException;
import java.util.ResourceBundle;
public class JDBCTest09 {
public static void main(String[] args) {
//资源绑定
ResourceBundle bundle=ResourceBundle.getBundle("jdbc");
String url=bundle.getString("url");
String password=bundle.getString("password");
String user=bundle.getString("user");
Connection conn=null;
PreparedStatement ps=null;
try {//1.注册驱动
Class.forName("com.mysql.cj.jdbc.Driver");
//2.获取连接
conn= DriverManager.getConnection(url,user,password);
//禁用自动提交 开启事务
conn.setAutoCommit(false);
//3.获取预编译的数据库操作对象
String sql="update dept set dname=?where deptno=?";
ps=conn.prepareStatement(sql);
ps.setString(1,"xxx");
ps.setInt(2,30);
int cout=ps.executeUpdate();
System.out.println(cout);
ps.setString(1,"yyy");
ps.setInt(2,30);
cout=ps.executeUpdate();
System.out.println(cout);
//手动提交
conn.commit();
} catch (Exception e) {
//出现异常回滚事务
if(conn!=null) {
try {
conn.rollback();
} catch (SQLException throwables) {
throwables.printStackTrace();
}
e.printStackTrace();
}
}finally {
if(ps!=null){
try {
ps.close();
} catch (SQLException throwables) {
throwables.printStackTrace();
}
}
if(conn!=null){
try {
conn.close();
} catch (SQLException throwables) {
throwables.printStackTrace();
}
}
}
}
}
//禁用自动提交 开启事务
try{
conn.setAutoCommit(false);
//手动提交
conn.commit();
} catch (Exception e) {
//出现异常回滚事务
if(conn!=null) {
try {
conn.rollback();
} catch (SQLException throwables) {
throwables.printStackTrace();
}
e.printStackTrace();
}