日期:2014-05-20  浏览次数:20697 次

hibernate hbm配置问题,烦请大家进来看看。
我有两张表A,B
A与B是many-to-one关系

  <many-to-one name="b" class="pojo.B" lazy="false">  
  <column name="qid"/> //qid是出发地的ID  
  </many-to-one>
A.java里面

B b;
get set方法省略


但是这里我需要重新再映射一遍因为在A里面有两个字段的ID 都是映射到B得主键ID的
例如 B里面存放的是地区,例如 北京 上海
那么在A这里就有 出发地 和 目的地
所以我就在A的配置文件里面又配置了
  <many-to-one name="b" class="pojo.B" lazy="false">  
  <column name="mid"/> //mid是目的地的ID  
  </many-to-one>
但是启动就报错 我想应该是有其它办法的 还请大家指点一下。谢谢。



------解决方案--------------------
<column name="当前A表里面的B表id"/>
------解决方案--------------------
探讨
<column name="当前A表里面的B表id"/>

------解决方案--------------------
我先跟你说下,一对多 跟多对多 

一个用户对应多个单子 是多对一
一个单子对应一个用户 是一对多
这个在用户时 set many to one
在单子时 set one to many

一个user对应多个权限 是多对多
一个权限被多个用户所拥有 是多对多
 那么他们的hbm.xml 都是set many to many 
  
按你的例子
一个地区 可以是出发点 或 终点
一个出发点 可以是很多城市
 那么他们之间的hbm.xml 都是set many to many 多对多的关联
 

------解决方案--------------------
你错误都不贴出来,我怎么知道你错在哪里呢