Hibrenate之事务的理解以及代码编写

3 事务概念

事务(Transaction)是并发控制的单位,是用户定义的一个操作序列。这些操作要么都做,要么都不做,是一个不可分割的工作单位。通过事务,SQL Server能将逻辑相关的一组操作绑定在一起,以便服务器保持数据的完整性。

(1)事务四个特性

一、原子性(Atomicity)

       事务是数据库的逻辑工作单位,事务中包括的各项操作要么全做,要么全不做。

二、一致性(Consistency)

       事务执行的结果必须是使数据库从一个一致性状态变到另一个一致性状态。一致性与原子性是密切相关的。(事务中的各项操作,要么全部成功,要么全部失败)

三、隔离性(Isolation)

      一个事务的执行不能被其他事务干扰。

四、持续性/永久性(Durability)

      一个事务一旦提交,它对数据库中数据的改变就应该是永久性的。

public class UserDao {
    Session session = null;
    Transaction tr = null;
    public static void saveuser(){
        
        try {
            //1获取session,建立连接
session = HibernateUtil.getsession();
           //2开启事务
            tr = session.beginTransaction();
            //3 创建实体类对象
            User user = new User();
            user.setName("admin");
            user.setPwd("123");
            //4 使用session的添加方法save(将数据写入了数据库)
            session.save(user);
            //5 提交事务
            tr.commit();
        } catch (Exception e) {
            e.printStackTrace();
            //6 回滚事务
            tr.rollback();
        }finally{
            //7 关闭session,断开连接
            HibernateUtil.closesession(session);
        }
        
    }

 

posted @ 2017-09-13 15:09  小菜鸟大梦想  阅读(329)  评论(0编辑  收藏  举报