我正常是admin类与admin表对应的,hibernate 反转映射的时候,竟然多映射出一个AdminID类来,这是什么原因呢,谁告诉我下,谢谢,admin.hbm.xml中多了一条, <composite-id name="id" class="com.xmg.pojo.AdminId">  晕了...高手求救.

解决方案 »

  1.   

    你把那句删了哪个AdminID类就没了吧?
      

  2.   

    composite-id 用于映射组件类型的标识属性
      

  3.   

    AdiminID是个外键类,它映射到AdiminID这个类,同时在数据库生成AdiminID表,此表主键是AdiminID。把<composite-id name="id" class="com.xmg.pojo.AdminId"> 删除。
      

  4.   


    同意!这是Hibernate的一个设置:Hibernate要求每一张表必须要有主键,如果忘记设主键,它就会把所有的字段组成一个复合主键,于是反转之后就出现了两类,一个Admin类,一个AdminID类,在Admin.hbm.xml映射文件中生成<composite-id name="id" class="com.xmg.pojo.AdminId"> 标签。composite的中文意思就是复合的,复杂的。