我有三张表如下表A 基础数据 ,表B1 和 表B2其中 表B1 和 B2 分别和 A 的ID关联,现在我想查询 A 表, 请问如何控制表A 跟表B1 关联还是跟表B2 关联的呢?

解决方案 »

  1.   

    你查询表A影响不到其他表把,除非你设置了cascade,用load查询或者inverse,把控制权给对方管
      

  2.   

    查询表A不影响其他表,但是查询表A的时候,表A中会有个B1对象,但是现在是查询表A的时候 有时候是需要关联B1,有时候需要关联B2,不知道能否动态的设置表A和B1关联还是 跟B2关联?
      

  3.   

    cascade啊
    设置cascade 有一下几个属性
    (1)none:在保存,删除或修改当前对象时,不对其附属对象(关联对象)进行级联操作。它是默认值。
    (2)save-update:在保存,更新当前对象时,级联保存,更新附属对象(临时对象,游离对象)。
    (3)delete:在删除当前对象时,级联删除附属对象。
    (4)all:所有情况下均进行级联操作,即包含save-update和delete等等操作。
    (5)delete-orphan:删除此对象的同时删除与当前对象解除关系的孤儿对象(仅仅使用于一对多关联关系中)。
      

  4.   

    额,楼主说的查询,这个和cascade没有关系的吧
    你这个既然都关联,那么A中除了有B1对象,也就会有B2对象
    如果要求不高,那么A查出来的同时,B1和B2也都会被查出来,那么想用哪个就用哪个,另一个不去管它就好了如果想限制一个要一个不要的话,楼主去翻一下缓存的相关资料,具体记不太清楚了。