首页 > 代码库 > Session常用方法
Session常用方法
- save()方法 将一个临时对象转化为辞旧话对象
- load()方法 VS get()方法
- 都是根据OID从数据库中加载一个持久化对象
- 区别1: 假如数据库中不存在与OID对应的记录,load方法会抛出异常,而get()方法返回null;
- 区别2: load方法默认采用延迟加载策略, get方法采用立即检索策略
- update()方法: 将一个游离对象转化为持久化对象
- saveOrUpdate()方法: 包含save()和 update() 方法
- merge()方法: 合并对象
- 取得两次相同对象时,update 会异常,merge()成功执行
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(); //关闭session12 13 Session session1 = sessionFactory.openSession(); //生成一个新的session14 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(); //关闭session22 }
- delete()方法: 删除对象
Session常用方法
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。