Hibernate 6 JdbcTypeCode не может преобразовать bytea в массив String[]JAVA

Программисты JAVA общаются здесь
Ответить
Anonymous
 Hibernate 6 JdbcTypeCode не может преобразовать bytea в массив String[]

Сообщение Anonymous »


Когда я перехожу с Spring boot 2.5 на 3.0, он обновил Hibernate до 6.0. У меня есть поле в объекте Java, которое хранится как байт в базе данных PostgreSQL. И я читаю обратно в String[].

Чтобы решить эту проблему, я использую аннотацию @JdbcTypeCode и пытаюсь прочитать значение, но оно не работает.

Проблема в том, что @JdbcTypeCode(SqlTypes.Array) не может преобразовать bytea в Строка[]

@Column(name = "dummy") @JdbcTypeCode(SqlTypes.ARRAY) частная строка [] манекен; С SqlTypes.Array я получаю исключение ниже

org.springframework.orm.jpa.JpaSystemException: невозможно извлечь значение JDBC для позиции 3

Согласно http://www.java2s.com/example/java-api/ ... ray-0.html SqlTypes.Array возвращает Object[], но если я перейду со String[] на Object[], во время компиляции я получу ошибку ниже.

Вызвано: java.lang.ClassCastException: класс org.hibernate.type.descriptor.java.spi.CollectionJavaType не может быть приведен к классу org.hibernate.type.descriptor.java.BasicPluralJavaType (org.hibernate.type.descriptor) .java.spi.CollectionJavaType и org.hibernate.type.descriptor.java.BasicPluralJavaType находятся в безымянном модуле загрузчика «приложение»)

Альтернативный подход опробован

Я попробовал получить данные в формате byte[], как показано ниже,

@Column(name = "dummy") частный байт[] пустышка; общественная строка [] getDummy () { SerializationUtils.deserialize(пустышка); //Это устарело } И попробовал преобразовать с помощью SerializationUtils, но метод десериализации устарел, а при использовании ObjectInputStream мы получаем SecurityHotspot.

Ищу информацию о том, как преобразовать сохраненные байты в базе данных postgres в String[]

Заранее спасибо.
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

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