隨筆 - 170  文章 - 536  trackbacks - 0
          <2006年7月>
          2526272829301
          2345678
          9101112131415
          16171819202122
          23242526272829
          303112345

          常用鏈接

          我參與的團隊

          隨筆分類(103)

          搜索

          •  

          積分與排名

          • 積分 - 414331
          • 排名 - 135

          最新評論

          閱讀排行榜

          用 Hibernate 碰到一個很傻的問題,在 iCustomer 中有這樣的關聯,有服務記錄,該記錄會與 Customer 關聯,當時為了在不需要的時候不在 VO 里 new 出 Customer,用了這樣的寫法。

          public Customer getCustomer() {
          ?if (null == customer) {
          ??customer = new Customer();
          ?}
          ?return customer;
          }

          這樣看似沒有問題,當使用到 Customer 的時候才會創建該對象。但是每次卻會報告臟數據錯誤,其實最重要的是我忽略了一個問題,這個方法同樣會被 Hibernate 調用,在 null 的時候給 new 出一個相應的 Customer,這樣就會出現問題了,如果你把 Customer 設成 null,Hibernate 調用該方法時就會自動給你 new 一個 Customer,并沒有任何 id,這樣在保存的時候會引發臟數據錯誤。所以一定要避免這樣的寫法。

          別人給出的建議是把這樣的 new Customer 的邏輯放在外面寫,手動處理 Customer 的創建。頁面上傳遞的是 Customer 的 id,后臺手動加載 Customer 的 PO,然后 set 給 Support。

          posted on 2006-07-04 18:30 steady 閱讀(805) 評論(0)  編輯  收藏

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


          網站導航:
           
          主站蜘蛛池模板: 彩票| 建平县| 垦利县| 丰县| 利川市| 定远县| 金乡县| 蒙自县| 洞口县| 禹城市| 温州市| 忻州市| 赤城县| 大英县| 阳江市| 卢氏县| 饶河县| 会泽县| 怀远县| 司法| 徐闻县| 呼伦贝尔市| 杭锦后旗| 梅州市| 离岛区| 疏附县| 庆安县| 新干县| 什邡市| 金塔县| 柳林县| 木兰县| 郸城县| 许昌市| 什邡市| 公安县| 长春市| 河东区| 文化| 安平县| 秀山|