JPA XML映射文件中的Hibernate特定配置

时间:2014-09-01 06:51:52

标签: java spring hibernate postgresql jpa

我正在使用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映射,但似乎它不支持映射的超类。

1 个答案:

答案 0 :(得分:1)

JPA映射仅支持其本机API。您需要使用hbm文件。

您必须使用以下属性迁移到hbm映射文件:     

点击此处了解更多详情:http://docs.jboss.org/hibernate/orm/3.6/quickstart/en-US/html/hibernate-gsg-tutorial-basic.html