首页 新闻 会员 周边 捐助

hibernate 游离状态和持久化

0
悬赏园豆:20 [已解决问题] 解决于 2014-12-29 14:36
    @Test    
        public void testSave() throws Exception{
            Session session = sessionFactory.openSession();
            Transaction tx = session.beginTransaction();
            //------------------------
            try {
                User user = new User();
                user.setName("张三");//临时状态
                
                session.save(user);
                user.setName("李四");//持久化
            
                tx.commit();
                
                user.setName("王五");//  这里是持久化还是游离!,不是session关闭之后转变为游离么?session还没有关闭啊?如果是持久化数据库为什么不更新
            } catch (Exception e) {
                tx.rollback();
                throw e;
            } finally {
                session.close();
            }
        
        
99°的开水的主页 99°的开水 | 初学一级 | 园豆:184
提问于:2014-12-20 15:50
< >
分享
最佳答案
0

你好。你上面已经执行了save操作,并且已经commit了。但是下面user.setName没有进行保存操作,只是所有只是一个临时状态。也就是游离态。

收获园豆:20
飞翔的程序猴 | 初学一级 |园豆:92 | 2014-12-22 09:55
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册