#spring #spring-boot #rest
Вопрос:
Мне нужно изменить одно значение (шаблон) в моей сущности A:
class A {
private Template template
}
Моя конечная точка выглядит так:
/warehouse/company/{companyId}/template/default
с телом:
class MyDto {
private Long templateId
}
Каково наилучшее решение для этой операции? Я хочу изменить только одно значение в своей сущности: на основе MyDto
того, что я должен извлечь шаблон из базы данных и установить A.setTemplate(newTemplateFromDB)
.
Лучшим вариантом было бы PATCH
без RequestBody
, но тело запроса необходимо…
Ответ №1:
Вы определенно должны использовать PATCH
, потому что вы частично обновляете свой ресурс ( A
), а не полностью обновляете его. Если вы хотите обновить весь ресурс, заменив данные своей базы данных тем, что вы получаете в конечной точке, то вам следует использовать PUT
.
Я просто не понимаю, почему вы говорите, что лучшим вариантом было бы обойтись без тела запроса.