getSingleResult() не может получить тип данных oid в postgres
В классе для тестирования (junit) кладу в БД данные, среди которых есть тип данных oid (description) без ошибок:
insert into production_studios(id, name, description, date_foundation)
values ('2','Name', '12345','2022-08-14');
Затем пытаюсь эти данные получить:
Hibernate:
select
p1_0.id,
p1_0.date_foundation,
p1_0.description,
p1_0.name
from
production_studios p1_0
jakarta.persistence.PersistenceException: Converting `org.hibernate.HibernateException` to JPA `PersistenceException` : Unable to extract JDBC value for position `3`
Код, в котором вылетает ошибка:
ProductionStudio productionStudio = entityManager.createQuery("select m from ProductionStudio m", ProductionStudio.class).getSingleResult();
Модель:
package com.example.cinema.base.models.entitys;
import com.fasterxml.jackson.annotation.JsonFormat;
import jakarta.persistence.Column;
import jakarta.persistence.Entity;
import jakarta.persistence.GeneratedValue;
import jakarta.persistence.GenerationType;
import jakarta.persistence.Id;
import jakarta.persistence.Lob;
import jakarta.persistence.Table;
import lombok.Getter;
import lombok.Setter;
import org.hibernate.Hibernate;
import java.time.LocalDate;
import java.util.Objects;
@Entity
@Table(name = "production_studios")
@Getter
@Setter
public class ProductionStudio {
@Id
@GeneratedValue(strategy = GenerationType.SEQUENCE)
private Long id;
@Column(name = "date_foundation")
private LocalDate dateFoundation;
@Lob
private String description;
private String name;
@Override
public boolean equals(Object o) {
if (this == o) return true;
if (o == null || Hibernate.getClass(this) != Hibernate.getClass(o)) return false;
ProductionStudio that = (ProductionStudio) o;
return id != null && Objects.equals(id, that.id);
}
@Override
public int hashCode() {
return getClass().hashCode();
}
}
Так выглядят типы данных в Postgres:
Как получить из БД decription типа oid без ошибок и корректно написать запрос для getSingleResult()?
Источник: Stack Overflow на русском