蔡甸做网站,网站设计主题有哪些,电商网站开发缓存,邵阳建网站2019独角兽企业重金招聘Python工程师标准 在mysql中创建用户账户数据库#xff08;注意#xff0c;count不能为负数#xff0c;要设置无符号型#xff09; 添加数据 下面我们得到connection对象开始进行事务提交和回滚的操作 package com.lyb.test; import s… 2019独角兽企业重金招聘Python工程师标准 在mysql中创建用户账户数据库注意count不能为负数要设置无符号型 添加数据 下面我们得到connection对象开始进行事务提交和回滚的操作 package com.lyb.test; import static org.junit.Assert.*; import java.sql.Connection; import java.sql.PreparedStatement; import java.sql.SQLException; import org.apache.commons.dbutils.DbUtils; import org.junit.Test; import cn.itcast.jdbc.JdbcUtils; public class MyTest { Test public void test() {//回滚操作 try { Connection connJdbcUtils.getConnection();//得到链接 conn.setAutoCommit(false);//关闭事务自动提交 String sql1update bankuser set countcount-1000 where id1; String sql2update bankuser set countcount1000 where id2; try { PreparedStatement ps2conn.prepareStatement(sql2); ps2.executeUpdate();//增加id为2的user的余额 PreparedStatement ps1conn.prepareStatement(sql1); ps1.executeUpdate();//扣除id为1的user的余额//如果id为1的user的余额为0继续扣除发生异常进入catch代码块进行回滚 conn.commit();//没有异常发生事务提交 } catch (Exception e) { conn.rollback();//捕获到异常就回滚 System.out.println(出现异常但是已经进行回滚你可以放心转账了); // TODO Auto-generated catch block //e.printStackTrace(); }finally{ DbUtils.close(conn);//关闭连接 } } catch (SQLException e) { // TODO Auto-generated catch block e.printStackTrace(); } } } 转载于:https://my.oschina.net/kaiyuanlong/blog/1094029