Проблема: у меня есть объект Document, в котором есть множество столбцов, сопоставления «один к одному», «один ко многим» и «многие ко многим» с некоторыми другими объектами.
Пример:
Документ:
Я бы,
заглавие,
тело,
авторы,
зрители,
...
Используя REST, я хочу обновить какой-то конкретный документ, контроллер получает сериализованный объект Document, вызывая метод слияния EntityManager, сохраняя нулевые результаты в базе данных, если контроллер получил, например, только тело, тогда я хочу обновить только тело, но объединить удаляет записи для заголовка, авторов и зрителей и т. д.
Я понимаю, что это стандартное поведение EntityManager, но я спрашиваю, какой метод наиболее предпочтителен для обновления сущностей без получения всей сущности из внешнего интерфейса или какой-либо другой конечной точки. Должен ли я загружать объект из базы данных, используя полученный идентификатор, вручную установить все поля, а затем сохранить в базе данных или использовать другой метод.
У меня нет проблем с написанием вручную всех установщиков для копирования изменений, но сущности действительно большие по размеру с большим количеством связей. Запрашиваемая наилучшая практика в этом случае.
Я знаю о DTO, но мне нужен альтернативный подход при использовании сущностей для контроллеров и методов обслуживания.
Может быть, я спрашиваю что-то неоднозначное, но, прежде чем понизить голосование, прокомментируйте ...