码迷,mamicode.com
首页 > 其他好文 > 详细

Session常用方法

时间:2014-11-28 17:41:25      阅读:283      评论:0      收藏:0      [点我收藏+]

标签:style   blog   io   color   os   sp   on   数据   div   

  1. save()方法 将一个临时对象转化为辞旧话对象
  2. load()方法 VS get()方法
    1. 都是根据OID从数据库中加载一个持久化对象
    2. 区别1: 假如数据库中不存在与OID对应的记录,load方法会抛出异常,而get()方法返回null;
    3. 区别2: load方法默认采用延迟加载策略, get方法采用立即检索策略
  3. update()方法: 将一个游离对象转化为持久化对象
  4. saveOrUpdate()方法: 包含save()和 update() 方法
  5. merge()方法: 合并对象
    1.   取得两次相同对象时,update 会异常,merge()成功执行
    2.  1     public void testMerge(){
       2         Session session = sessionFactory.openSession();    //生成一个新的session
       3         session.beginTransaction();    //开启事物
       4         
       5         Student stu = (Student) session.get(Student.class, Integer.valueOf(1));
       6         stu.setName("lisi");
       7         
       8         session.save(stu);
       9         
      10         session.getTransaction().commit();    //提交事务
      11         session.close();                    //关闭session
      12         
      13         Session session1 = sessionFactory.openSession();    //生成一个新的session
      14         session1.beginTransaction();    //开启事物
      15         Student stu1 = (Student) session1.get(Student.class, Integer.valueOf(1));
      16         stu.setName("lisi1");
      17 //        session1.update(stu);        //异常
      18         session1.merge(stu);        //成功执行
      19         
      20         session1.getTransaction().commit();    //提交事务
      21         session1.close();                    //关闭session
      22     }
  6. delete()方法: 删除对象

Session常用方法

标签:style   blog   io   color   os   sp   on   数据   div   

原文地址:http://www.cnblogs.com/sidianshui/p/4128922.html

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