Topic: 一个hibernate的类映射问题,请教

  Print this page

1.一个hibernate的类映射问题,请教 Copy to clipboard
Posted by: ericlam
Posted on: 2005-07-04 15:37

hibernate有三种类的映射模式,但我试图适用混和模式的时候,提示配置文件不正确(hbm.xml)

类如下
class abstract A {
// some property
}

class abstract B extends A{
Set members = new HashSet();
}

class C extends B{

}

class D extends A {
}

类层次有可能是扩展的,但是属性基本上都是基类A的属性,B类这个分支增加了一个many to many的属性。按照我的想法,想B往下的分支,使用一个表映射,其余的所有类,也就是A加上A的其它子类,用一个表映射。当然了,目前A和B都是抽象类,具体类只有C和D,但是B可能会扩展其它子类,A也可能扩展其它具体的子类。

上面并非很复杂的模型,按理用混和方式应该可以可以满足的,可是,我模仿参考文档写下面的配置

    <subclass name="com.mysoftware.hello.B" discriminator-value="B">
      <join table="T_TableB">
        <set name="members" table="T_XT_TableB_User">
          <key column="tableid"/>
          <many-to-many column="user_id" class="com.mysoftware.hello.User"/>
        </set>
      </join>
    </subclass>

运行时候提示join不能有set元素等等信息

我现在只有使用<union-subclass,也就是一个具体类,一个表的方式来映射,但是不太符合我的设计想法,请问以上是怎么回事?


   Powered by Jute Powerful Forum® Version Jute 1.5.6 Ent
Copyright © 2002-2021 Cjsdn Team. All Righits Reserved. 闽ICP备05005120号-1
客服电话 18559299278    客服信箱 714923@qq.com    客服QQ 714923