Hibernate学习之三种状态及生命周期(图)

    xiaoxiao2021-03-25  74

    三种状态:

     

    生命周期:

    代码表示:

    ? //三种状态      public void testThreeState(){          TUser user= new TUser();          user.setName( "spark" );  //此时user处于Transient                     try {              Transaction tx=session.beginTransaction();              session.save(user); //user对象已经由hibernate纳入管理器,处于persistent状态              tx.commit();              session.close();   //user对象此时为Detached状态,因为与其关联的session已经关闭                             Transaction tx2=session2.beginTransaction();              session2.update(user); //user对象借助session2,由hibernate纳入管理容器,恢复persistent状态   update并没有发送sql语句              user.setName( "spark_1" ); //处于persistent状态,其属性变更将自动由hibernate固话到数据库中   !!!!              tx2.commit();           //commit之前调用session.flush()在其中发送sql语句          } catch (HibernateException e) {              e.printStackTrace();          }      }

     

    转载请注明原文地址: https://ju.6miu.com/read-19612.html

    最新回复(0)