Как отобразить JSON в orm.xml в JPA - PullRequest
0 голосов
/ 28 марта 2019

Я создал DTO / Entities из openApi gen, и у меня есть orm.xml для сопоставления Java Entity с JPA.Проблема в том, что я хочу, чтобы один из объектов поля (с именем obj, см. Код ниже) в java-классе был сопоставлен с типом данных JSON JSON JSON / JSONB.Я не уверен, как это сделать.

class Test{
  private String id;
  //its not a JsonObject
  private Object obj;
 // usual boiler plate i.e. Default constructors and getters/setters
}

orm.xml ->

<?xml version="1.0" encoding="UTF-8" ?>
<entity-mappings xmlns="http://java.sun.com/xml/ns/persistence/orm"
                 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
                 xsi:schemaLocation="http://java.sun.com/xml/ns/persistence/orm orm_2_0.xsd"
                 version="2.0">



    <entity class="com.Test" access="FIELD">
        <table name="Test"/>

        <attributes>
            <json name="obj"/>

        </attributes>
    </entity>

</entity-mappings>

Но он сохраняется как тип данных psql "byteArray" вместо типа json в базе данных.Пожалуйста, помогите мне понять, как я могу создать сопоставление, которое создает столбец "json" вместо типа данных "byteArray" psql

...