日出星辰

          Hibernate學(xué)習(xí)之三種狀態(tài)及生命周期(圖)

          三種狀態(tài):

           

          生命周期:

          代碼表示:

          //三種狀態(tài)
          	public void testThreeState(){
          		TUser user=new TUser();
          		user.setName("spark");  //此時(shí)user處于Transient
          		
          		try {
          			Transaction tx=session.beginTransaction();
          			session.save(user); //user對(duì)象已經(jīng)由hibernate納入管理器,處于persistent狀態(tài)
          			tx.commit();
          			session.close();   //user對(duì)象此時(shí)為Detached狀態(tài),因?yàn)榕c其關(guān)聯(lián)的session已經(jīng)關(guān)閉
          			
          			Transaction tx2=session2.beginTransaction();
          			session2.update(user);//user對(duì)象借助session2,由hibernate納入管理容器,恢復(fù)persistent狀態(tài)   update并沒(méi)有發(fā)送sql語(yǔ)句
          			user.setName("spark_1");//處于persistent狀態(tài),其屬性變更將自動(dòng)由hibernate固話到數(shù)據(jù)庫(kù)中   !!!!
          			tx2.commit();           //commit之前調(diào)用session.flush()在其中發(fā)送sql語(yǔ)句
          		} catch (HibernateException e) {
          			e.printStackTrace();
          		}
          	}
          

          posted on 2011-08-23 11:36 日出星辰 閱讀(88) 評(píng)論(0)  編輯  收藏


          只有注冊(cè)用戶(hù)登錄后才能發(fā)表評(píng)論。


          網(wǎng)站導(dǎo)航:
           
          主站蜘蛛池模板: 清镇市| 敦煌市| 辉南县| 金昌市| 温州市| 屯留县| 郑州市| 贡山| 闽侯县| 建水县| 饶河县| 公安县| 西平县| 阆中市| 怀集县| 临朐县| 恩施市| 芦溪县| 西乌珠穆沁旗| 惠东县| 新乡市| 阜新市| 丽水市| 横山县| 桃源县| 肃北| 潮安县| 丰台区| 靖江市| 罗平县| 绩溪县| 清远市| 民乐县| 赤峰市| 怀化市| 仁化县| 灵寿县| 灌云县| 虞城县| 岳池县| 澄迈县|