在orm.xml(Spring Data / JPA 2.1 / Hibernate 5.3.7 / Postgresql)中定义@Type?

时间:2019-03-07 14:36:42

标签: postgresql hibernate jpa spring-data jsonb

我们需要对Postgresql中具有jsonb字段的对象执行CRUD操作。我了解我们可以创建一个用户类型,并在模型中使用@Type(type =“ jsonb”)对其进行注释。但是,我们要在orm.xml中定义元数据的映射,而不是注释。我们也尝试使用转换器,但仍然没有成功。是否有可能通过orm.xml实现此目标,以及如何实现?谢谢。

1 个答案:

答案 0 :(得分:1)

@Type不属于JPA规范。它是特定于Hibernate的。

orm.xml是JPA注释的替代方法。

Hibernate注释的替代方法是hbm.xml-休眠映射文件。

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE hibernate-mapping PUBLIC 
"-//Hibernate/Hibernate Mapping DTD//EN"
"http://www.hibernate.org/dtd/hibernate-mapping-3.0.dtd"> 

<hibernate-mapping>
    <class name="" table="">
        <id></id>
        <property>
            <type name="">
            </type>
        </property>
    </class>
</hibernate-mapping>