<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    隨筆-124  評論-194  文章-0  trackbacks-0
    當ManyToMany或者ManyToOne定義時,JoinTable中referencedColumnName指向的是非主鍵(non PK columns),將 報ClassCastException。這里有個簡單解決辦法。

    如下面這個定義,一個HOSTGROUP可以包含多個HOST,而一個HOST也可以屬于多個HOSTGROUP,hostgroup_id是HOSTGROUP表的主鍵,但是host_object_id不是HOST表的主鍵,卻也可以唯一標識HOST,這個時候就會出現上述異常。

    @Entity
    @Table(name 
    = "hostgroups")
    public class CurHostGroup {

        @ManyToMany(fetch 
    = FetchType.LAZY)
        @JoinTable(name 
    = "hostgroup_members", joinColumns = @JoinColumn(name = "hostgroup_id", referencedColumnName = "hostgroup_id"), inverseJoinColumns = @JoinColumn(name = "host_object_id", referencedColumnName = "host_object_id"))
        
    private Set<CurHost> hosts = new HashSet<CurHost>(0);
    };

    有個非常簡單的解決辦法,讓HOST表關聯的類CurHost implements Serializable即可,要是不知道這個,能憋死人。當然這樣做,CurHost就不是POJO了。
    posted on 2008-10-27 17:30 我愛佳娃 閱讀(4017) 評論(1)  編輯  收藏 所屬分類: DB相關 、Hibernate

    評論:
    # re: ManyToMany關系中,使用非主鍵聯合的方法 2013-08-25 11:14 | miketho
    怎么沒有映射表呢,我不太會看注解的方式呀!  回復  更多評論
      
    主站蜘蛛池模板: 波多野结衣一区二区免费视频| 69国产精品视频免费| 日韩免费一区二区三区| 亚洲熟妇无码AV| 成人毛片视频免费网站观看| 亚洲色大成网站www尤物| 午夜神器成在线人成在线人免费 | 亚洲AV无码精品色午夜果冻不卡 | 麻豆国产精品入口免费观看| 亚洲精品天堂在线观看| 免费观看a级毛片| 亚洲AV无码一区二区三区久久精品 | 日韩在线观看免费完整版视频| 免费国产成人高清在线观看麻豆| 精品一区二区三区免费毛片| 国产99视频精品免费视频7| 一级毛片a免费播放王色| 久久青草亚洲AV无码麻豆| 18成禁人视频免费网站| 2017亚洲男人天堂一| 成人免费视频国产| 一级毛片高清免费播放| 国产成人精品日本亚洲| 免费观看激色视频网站bd| 亚洲女子高潮不断爆白浆| 亚洲AV无码一区二区三区国产| 97在线免费视频| 亚洲伊人精品综合在合线| 性做久久久久免费观看| 国产一级a毛一级a看免费人娇| 久久亚洲私人国产精品| 成人超污免费网站在线看| 精品乱子伦一区二区三区高清免费播放| 国产V亚洲V天堂A无码| 青草草色A免费观看在线| 国产青草亚洲香蕉精品久久| 久久亚洲国产精品一区二区| 毛片在线看免费版| 久久www免费人成精品香蕉| 亚洲国产高清在线精品一区| 免费中文字幕不卡视频|