Loading...

          java .net

          難道是hibernate裝聰明?

          今天開發中遇到一個奇怪的hibernate錯誤
          我的數據庫中一個表中有個字段名叫id,但是它并不是主鍵
          用hibernate映射后為

          XML語言:
          1 <id name="apprId" type="java.lang.Long">
          2     <column name="APPR_ID" precision="11" scale="0" />
          3     <generator class="assigned" />
          4 </id>
          5 <property name="Id" type="java.lang.Long">
          6     <column name="ID" precision="11" scale="0" />
          7 </property>
          而我當執行這樣的hibernate的HQL的時候
          SQL語言:
          1 from RcUApprInfo as model where model.Id = ?

          hibernate解析成sql語句竟然是
          SQL語言:
          1 select ...... from rc_u_appr_info where as model where model.APPR_ID = ?

          跟蹤了好幾遍,都是這樣

          在確定自己的代碼沒問題后,想到可能是hibernate理解錯了
          于是將Id改成了別的名
          再試,竟然沒問題了
          難道hibernate將凡是叫Id的都認為成主鍵??不解 不解

          posted on 2008-09-04 16:33 閱讀(1302) 評論(7)  編輯  收藏

          評論

          # re: 難道是hibernate裝聰明? 2008-09-04 17:55 xx

          你猜對了  回復  更多評論   

          # re: 難道是hibernate裝聰明? 2008-09-04 20:42 lai

          可能是設置了where條件,你看下hbm  回復  更多評論   

          # re: 難道是hibernate裝聰明? 2008-09-05 10:03 Lancelot

          明明是你自己不符合業界的使用習慣,還埋怨Hibernate。
          不過我可以負責人的告訴你,Hibernate是不會犯這種弱智錯誤的,因為Hibernate是知道哪個屬性是你作為Identity的。  回復  更多評論   

          # re: 難道是hibernate裝聰明? 2008-09-05 10:43

          @Lancelot
          我沒有符合業界的使用習慣,我認真承認,當時數據庫字段設計有些隨意
          但您“不過我可以負責人的告訴你,Hibernate是不會犯這種弱智錯誤的,因為Hibernate是知道哪個屬性是你作為Identity的。”
          事實勝于雄辯
          它真的這么發生了  回復  更多評論   

          # re: 難道是hibernate裝聰明? 2008-09-05 10:44

          @lai
          hbm配置文件都是用MyEclipse自動映射生成的,沒有添加任何where條件
          感謝回復  回復  更多評論   

          # re: 難道是hibernate裝聰明?[未登錄] 2008-09-05 15:49 soleghost

          coc思想  回復  更多評論   

          # re: 難道是hibernate裝聰明? 2008-09-05 16:32

          coc思想是啥  回復  更多評論   


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


          網站導航:
           

          公告

          希望有一天

          我能用鼠標雙擊我的錢包

          然后選中一張100元

          按住“ctrl+c”

          接著不停的“ctrl+v”

          嘻嘻~~~笑醒~~~



          導航

          <2008年9月>
          31123456
          78910111213
          14151617181920
          21222324252627
          2829301234
          567891011

          統計

          常用鏈接

          留言簿(6)

          隨筆分類(102)

          隨筆檔案(398)

          文章分類

          文章檔案(10)

          有趣網絡

          搜索

          積分與排名

          最新評論

          閱讀排行榜

          評論排行榜

          主站蜘蛛池模板: 宁南县| 四子王旗| 柘城县| 合作市| 衡阳市| 新泰市| 苗栗县| 汝南县| 宁都县| 邢台县| 兖州市| 都兰县| 杭锦旗| 新余市| 淮阳县| 平乐县| 屯昌县| 洪江市| 正阳县| 新密市| 涡阳县| 东海县| 久治县| 益阳市| 黑河市| 原平市| 民丰县| 新龙县| 托克托县| 西畴县| 翁源县| 房产| 建阳市| 凤庆县| 绥化市| 许昌县| 苍梧县| 融水| 绥棱县| 临邑县| 信宜市|