JSONB в Hibernate?

Нужно подружить Hibernate с PostgreSQL, делаю следующи образом:

Определяют свой UserType
public class JSONType implements UserType {

    @Override
    public int[] sqlTypes() {
        return new int[]{Types.JAVA_OBJECT};
    }

    @Override
    public Class<JSONObject/*MyJson*/> returnedClass() {
        return JSONObject.class;
    }

....

}


Указываю тип и к нему класс

@org.hibernate.annotations.TypeDef(name = "JSONType", typeClass = JSONObject.class)

В Entity одно из полей

@Column
    @Type(type = "JSONType")
    private JSONObject data;


И наконец -то дописываю тип в диалект
public class MyPostgreSQL94Dialect extends PostgreSQL94Dialect {

    public MyPostgreSQL94Dialect() {
        this.registerColumnType(Types.JAVA_OBJECT, "jsonb");
    }
}


(его, естественно указываю в persistence.xml

Но получается следующее:
таблица генерируется с типом "байт"

b51563ce82284df487c0c4a7612b7d31.png

В чем может быть ошибка?
  • Вопрос задан
  • 1362 просмотра
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы