------------------------奇怪的是--------------------------------          
        <set name="teachers"
          table="manyconn"
          cascade="save-update"
                 inverse="true"  ----------------********>  加上这个就ok了!!两边都是  inverse="true" ,十分不解???
          >
          <key column="stu_id"/>
          <many-to-many column="tea_id" class="com.hibernate.Teacher" />
        </set>
请指点迷津,谢谢了!!!!

解决方案 »

  1.   

    我建了中间表了,3. manyconn  [ stu_id  ,  tea_id   ]   (联接表)
    这个就是
      

  2.   

    关键是那个改成了true就可以了,是 为什么呢
      

  3.   

    inverse="true"
    使反向查找为TRUE,这样就可以将三个表连接起来,如果没有这一句HIBERNATE就不知道三个表之间有这一层关系
      

  4.   

    sorry,没看仔细!楼上说得有道理
      

  5.   

    inverse="true"表示:反向操作。当等于true时说明:你反向操作吗?true那么就表示反向,反之一样的推理,在实际运用当中,尤其是在多对多时这样的情况长出现,看你上面的错误是看不出什么来的,关键还是你没有弄明白它的起含义。当一操作一个时另外一个也同样的要受到操作。