Весенний режим гибернации: Сохранение метаданных в postgresql

#postgresql #spring-boot #hibernate

Вопрос:

У меня возникли проблемы с сохранением объекта в postgresql с помощью hibernate. Моя служба получает объект из репозитория, я редактирую одно свойство объекта, затем сохраняю его, а затем возвращаю DTO. Вот серия:

 public NotificationDto markNotificationAsRead(Long recipientId, Long id){  Notification notification = notificationRepository.findNotificationByUserByRecipientId_idAndId(recipientId, id);  notification.setIsRead(true);  notificationRepository.save(notification);  return buildNotificationDto(notification);  }  

Это хранилище, использующее режим гибернации

Notification findNotificationByUserByRecipientId_idAndId(Long recipientId, Long id);

Ошибка, которую я получаю, когда Hibernate пытается обновить, заключается в:

ОШИБКА: столбец «метаданные» имеет тип json, но выражение имеет тип bytea

Есть ли простой способ обойти проблему сохранения метаданных? ТИА!

Комментарии:

1. Метод обслуживания markNotificationAsRead не имеет отношения к проблеме. Название столбца не имеет значения — оно нам не нужно в вопросе. Важно то, что столбец должен быть отображен как JSON — нам нужно увидеть сущность и то, как вы отображаете соответствующий столбец.

2. В итоге я изменил тип столбца в модели, и теперь он работает, спасибо!

3. Давайте покажем файл NotificationDto.java