java中jdbc事务管理
来源:互联网 发布:郭敬明 陈学冬 知乎 编辑:程序博客网 时间:2024/05/20 14:16
事务的好处就是保证多表操纵的一致性。事务具有原子性,一个事务内的操作要么全部执行成功,要么全部执行失败,默认情况下,JDBC对数据库的操作是自动提交的。我们通过conn.setAutoCommit(false);可以设置为自动提交,如果其中有一步操作失败,可以使用RollBack进行回滚。
下面的例子先执行插入,后执行删除,如果中间有异常,可以使用rollback进行回滚
//创建连接public static Connection createCon(){try {Class.forName(driver);} catch (ClassNotFoundException e) {// TODO Auto-generated catch blocke.printStackTrace();} //classLoader,加载对应驱动 try {conn = (Connection) DriverManager.getConnection(url, username, pwd);} catch (SQLException e) {// TODO Auto-generated catch blocke.printStackTrace();} return conn;}
Connection conn=dao.createCon();try {conn.setAutoCommit(false);//禁止JDBC自动提交//添加操作String addsql="INSERT skus (skuname,skucode,categoryid) VALUES (?,?,?) ";try {PreparedStatement pst=(PreparedStatement)conn.prepareStatement(addsql);pst.setString(1, "短裤");pst.setString(2, "00008");pst.setShort(3,(short) 6);pst.executeUpdate();pst.close();} catch (SQLException e) {// TODO Auto-generated catch blocke.printStackTrace();}; //制造异常 String ss="aa"; Integer.parseInt(ss); //删除操作String sql="DELETE FROM skus WHERE skucode='00005' ";try {PreparedStatement pst=(PreparedStatement)conn.prepareStatement(sql);pst.executeUpdate();pst.close();} catch (SQLException e) {// TODO Auto-generated catch blocke.printStackTrace();};conn.commit();//手动提交} catch (SQLException e) {// TODO Auto-generated catch blocke.printStackTrace();try {conn.rollback();} catch (SQLException e1) {// TODO Auto-generated catch blocke1.printStackTrace();}}
0 0
- java中jdbc事务管理
- java中mysql的JDBC的事务管理
- java jdbc 事务管理
- Java事务管理之JDBC
- spring中JDBC 声明式事务管理
- spring中JDBC 声明式事务管理
- Spring中JDBC声明式事务管理
- jdbc 事务管理
- JDBC事务管理
- JDBC事务管理
- jdbc事务管理
- Jdbc 事务管理
- JDBC事务管理
- jdbc事务管理
- JDBC事务管理
- JDBC事务管理
- JDBC 事务管理
- JDBC事务管理
- 常用正则表达式大全!
- windows 命令
- CSS学习3(字体)
- leetcode 20. Valid Parentheses
- 【Java学习-J.160611.0.21】Servlet基础四 cookie部分
- java中jdbc事务管理
- vi配置文件
- 使用eclipse创建maven项目(web)
- 游览器中javascript的执行过程
- HashTable和HashMap区别
- KEIL编译环境优化等级说明
- 设计模式(Java版)
- Unity 小游戏练习(二)
- servlet的转发和重定向