Dev Zone
          偏執(zhí)狂才能生存,人生/事業(yè)的路上需要再堅(jiān)持一下
          但是又怎么說得清堅(jiān)持的結(jié)果,道得盡堅(jiān)持的含義

          今天做了一個(gè)測試,發(fā)現(xiàn)Hibernate的dynamic-update只在兩種條件下生效:

          1。同一session內(nèi),對已經(jīng)persisit的對象進(jìn)行update,這里的“已經(jīng)persist”是指update之前先進(jìn)行了create或者load調(diào)用。代碼示例:

          Session session = openSession();
          User user 
          = (User)session.load(User.class,new Long(12));
          user.setAddress(
          null);
          session.update(user);
          session.flush();

          將hibernate配置成show_sql=true,可以看到update產(chǎn)生的sql語句。

          2。不同session之間,update傳入的對象是另一個(gè)session中的persist對象(對該對象調(diào)用了create或者load方法)。代碼示例:

          Session session1 = openSession();
          User user 
          = (User)session1.load(User.class,new Long(12));

          Session session2 
          = openSession();
          user.setAddress(
          null);
          session2.merge(user);
          session2.flush();


          如果將session2.merge(..)改成update,則會(huì)更新所有可更新的屬性。

          posted on 2005-05-17 22:10 dev 閱讀(2219) 評論(0)  編輯  收藏

          只有注冊用戶登錄后才能發(fā)表評論。


          網(wǎng)站導(dǎo)航:
           
           
          主站蜘蛛池模板: 峨眉山市| 潼关县| 南投市| 大丰市| 沭阳县| 西丰县| 宁德市| 呼图壁县| 张家川| 泸定县| 洛南县| 石台县| 蕉岭县| 甘谷县| 南投县| 胶南市| 玉林市| 宝鸡市| 榆中县| 玛纳斯县| 张家川| 安塞县| 定西市| 建始县| 宜州市| 射阳县| 南皮县| 宝兴县| 尼木县| 平南县| 睢宁县| 墨江| 江川县| 浦县| 文安县| 南丹县| 介休市| 汝南县| 黄陵县| 襄汾县| 防城港市|