Как использовать функции jsonb в спящем режиме 6?JAVA

Программисты JAVA общаются здесь
Anonymous
Как использовать функции jsonb в спящем режиме 6?

Сообщение Anonymous »

Мы используем функцию Postgres jsonb_agg в API запроса критериев следующим образом:

Код: Выделить всё

cb.function(
JSONB_AGG_FUNCTION_NAME,
JsonNode.class,
someJoin.get(someField)
)
и сопоставьте результат с проекцией с помощью конструктора:

Код: Выделить всё

Projection (, com.fasterxml.jackson.databind.JsonNode node)
В Hibernate 5 мы зарегистрировали функцию jsonb_agg, используя следующий подход:

Код: Выделить всё

public class ExtendedPgDialect extends PostgreSQLDialect {

public static final String JSONB_AGG_FUNCTION_NAME = "jsonb_agg";

public ExtendedPgDialect() {
registerFunction(JSONB_AGG_FUNCTION_NAME,
new StandardSQLFunction(JSONB_AGG_FUNCTION_NAME, JsonNodeBinaryType.INSTANCE));
}
}
Но в Hibernate 6.6.33.Final мы не можем зарегистрировать эту функцию и не можем использовать ее для запроса данных.
Также мы использовали тип (JsonNodeBinaryType) из библиотеки io.hypersistence:hypersistence-utils-hibernate-53. Как зарегистрировать функцию jsonb_agg в Hibernate 6 для сопоставления с типом Java JsonNode?

Подробнее здесь: https://stackoverflow.com/questions/798 ... ibernate-6

Вернуться в «JAVA»