Loading...

          java .net

          難道是hibernate裝聰明?

          今天開發(fā)中遇到一個奇怪的hibernate錯誤
          我的數(shù)據(jù)庫中一個表中有個字段名叫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>
          而我當執(zhí)行這樣的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 閱讀(1299) 評論(7)  編輯  收藏

          評論

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

          你猜對了  回復  更多評論   

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

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

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

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

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

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

          # 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思想是啥  回復  更多評論   


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


          網(wǎng)站導航:
           

          公告

          希望有一天

          我能用鼠標雙擊我的錢包

          然后選中一張100元

          按住“ctrl+c”

          接著不停的“ctrl+v”

          嘻嘻~~~笑醒~~~



          導航

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

          統(tǒng)計

          常用鏈接

          留言簿(6)

          隨筆分類(102)

          隨筆檔案(398)

          文章分類

          文章檔案(10)

          有趣網(wǎng)絡(luò)

          搜索

          積分與排名

          最新評論

          閱讀排行榜

          評論排行榜

          主站蜘蛛池模板: 金山区| 石河子市| 侯马市| 新余市| 双鸭山市| 芒康县| 历史| 肥乡县| 勃利县| 绥中县| 佛教| 来宾市| 青岛市| 青冈县| 贞丰县| 来安县| 乌鲁木齐市| 焉耆| 刚察县| 澄城县| 农安县| 德阳市| 讷河市| 昌都县| 游戏| 瓦房店市| 孟津县| 丰都县| 临泽县| 大宁县| 蛟河市| 淮北市| 大邑县| 云南省| 吐鲁番市| 孟村| 马边| 建水县| 泾阳县| 曲松县| 那曲县|