首页 > 代码库 > JDBC值事务
JDBC值事务
事务的四大特性: 原子性, 一致性(比如说A给B转账,A转了之后B的账户增加了,两个都完成才叫一致性),隔离性(A给B转账,A给C转账,AB和AC并发是无关的),永久性(转账之后 不可能复原,就是说不做别的操作是不会还原的)
JDBC中的事务是默认开启的,所以手动的开启事务必须要先关闭默认的事务, conn.setAutoCommit(false)
建立
public String transaction(AccountInfo from, AccountInfo to, int account) { boolean res = false; Connection con = DBUtil.getConnection(); try { con.setAutoCommit(false);//关闭默认的事务 from.setAccount(from.getAccount() - account); res = update(from);// String str = null;// str.split("2"); to.setAccount(to.getAccount() + account); res = update(to); con.commit(); //提交 return "success"; } catch (Exception e) { try { con.rollback();// 回滚 } catch (SQLException e1) { // TODO Auto-generated catch block e1.printStackTrace(); } return "failed"; } }
JDBC值事务
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。