我用的是JPA和Hibernate。对于我的应用程序中定义的实体,我使用注释,但是有些实体作为第三方代码出现,没有任何映射。因此,我必须通过XML映射它们(至少我认为我必须这样做):
<entity-mappings ...>
    <access>FIELD</access>
    <mapped-superclass class="com.acme.common.model.Request">
        <attributes>
            <id name="id"/>
        </attributes>
    </mapped-superclass>
</entity-mappings>因为这是JPA映射,所以它工作得很好,除了我必须使用Hibernate特定的自定义类型将PostgreSQL的uuid类型映射到java.util.UUID的情况之外。
使用注释,这是小菜一碟:
@Entity
public class Partner {
    @Id
    @Type(type = "org.hibernate.type.PostgresUUIDType")
    private UUID id = IdGenerator.generate();
}问题是,我不知道如何通过XML实现同样的操作。
我考虑过使用Hibernate的原生XML映射,但它似乎不支持映射的超类。
发布于 2014-09-01 13:40:19
JPA映射只支持其本机API。您需要使用hbm文件。
您必须迁移到具有以下属性的hbm映射文件:
有关更多细节,请在这里查看:http://docs.jboss.org/hibernate/orm/3.6/quickstart/en-US/html/hibernate-gsg-tutorial-basic.html
https://stackoverflow.com/questions/25600292
复制相似问题