#postgresql #hibernate #spring-data-jpa #jsonb
#postgresql #спящий режим #spring-data-jpa #jsonb
Вопрос:
У меня есть собственный запрос, определенный в spring JpaRepositroy как:
@Query(value="Select * from Employee WHERE....", nativeQuery=true)
List<Employee> getEmployees(....)
В entity у меня есть поле jsonb, определенное как:
import com.vladmihalcea.hibernate.type.json.JsonBinaryType;
....
@Type(type = "jsonb")
@Column(name = "properties", columnDefinition = "jsonb")
private ObjectNode properties;
Эта настройка работает идеально, и она правильно извлекает записи для меня.
Но если я попытаюсь извлечь только некоторые определенные столбцы, изменив запрос как:
@Query(value="Select emp_name, properties from Employee WHERE....", nativeQuery=true)
List<Object[]> getEmployees(....)
Это выдает ошибку как:
Caused by: org.hibernate.MappingException: No Dialect mapping for JDBC type: 1111
И я получаю эту ошибку, только если поле свойств находится в предложении SELECT, иначе это тоже работает нормально.
В чем же причина? И как заставить его работать с полем свойств?
Комментарии:
1. Какие версии hibernate и hibernate-types вы используете?
2. Я использую spring 2.3 (hibernate 5.4.20) с типами гибернации 2.9.11.