#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