首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 软件管理 > 软件架构设计 >

莫不是是hibernate装聪明

2012-10-29 
难道是hibernate装聪明?今天开发中遇到一个奇怪的hibernate错误我的数据库中一个表中有个字段名叫id,但是

难道是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>
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的都认为成主键??不解 不解

热点排行