首页 > 代码库 > 仅hibernate操作
仅hibernate操作
public void testSave1() { Session session = null; Transaction tx = null; try { session = HibernateUtils.getSession(); tx = session.beginTransaction(); User1 user = new User1(); user.setName("李四"); user.setPassword("123"); user.setCreateTime(new Date()); user.setExpireTime(new Date()); //因为user的主键生成策略采用的是uuid,所以调用完成save后,只是将user纳入到了session 的管理 //不会发出insert语句,但是id已经生成,session中existsInDatebase状态为false session.save(user); //调用flush,hibernate会清理缓存,执行sql //如果数据库的隔离级别设置为未提交读,那么我们可以看到flush过的数据 //并且session中existsInDatebase状态为true session.flush(); //提交事务 //默认情况下commit操作会先执行flush清理缓存,所以不用显示的调用flush //commit后数据是无法回滚的 tx.commit(); }catch(Exception e) { e.printStackTrace(); tx.rollback(); }finally { HibernateUtils.closeSession(session); } }
获取session,如何打开实物管理!
结束关闭!
本文出自 “东方小阁” 博客,请务必保留此出处http://lailai.blog.51cto.com/3362373/1545188
仅hibernate操作
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。