码迷,mamicode.com
首页 > 数据库 > 详细

JDBC值事务

时间:2016-09-25 14:35:04      阅读:265      评论:0      收藏:0      [点我收藏+]

标签:

事务的四大特性: 原子性, 一致性(比如说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值事务

标签:

原文地址:http://www.cnblogs.com/xlurenjia/p/5905869.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!