各位高手:
    是这样的。小弟现在在写hibernate的映射文件,其中一个类中a,有两个外键,分属另外两个类(b,c)的主键,那么现在我要写双向一对多关联,那请问,当我写a类的映射文件的时候,是不是写两个many-to-one,然后再在b和c中分别写一个one-to-many呀?

解决方案 »

  1.   

      <composite-id name="ccpk" class="vo.ccPK">  
                <key-many-to-one name="course" class="vo.Course">  
                    <column name="coId" length="10" />  
                </key-many-to-one>  
                <key-many-to-one name="student" class="vo.Student">  
                    <column name="sId" length="10" />  
                </key-many-to-one>  
       </composite-id> 
    看看这个很清楚
    http://www.javaeye.com/topic/201564
      

  2.   


    这个是做了复合主键,我建议你还是做一个代理主键,然后按照你的想法,配置2个many to one,这样简单很多,而且方便管理。
      

  3.   

    这个要看你的维护关系了,如果你的一对多关系是单向维护的话,只需要在a配置文件用many-to-one
    如果你的维护关系是双向维护的话则在另一端使用one-to-many