Как правило, все параметры тела объекта являются параметрами без каких-либо комментариев.Например, в случае JSON или XML вы увидите
@POST
@Consumes({"application/json", "application/xml"})
public Response post(RequestEntity entity) {
}
Здесь MessageBodyReader
, который обрабатывает JSON или XML, будет использоваться для десериализации потока сущностей в RequestEntity
.
* 1007.* То же самое с
FormDataMultiPart
.Существует
MessageBodyReader
для обработки десериализации всего многочастного потока и создания
FormDataBodyPart
для среды выполнения Джерси для передачи методу ресурса при его вызове.
@FormDataParam
трактуется больше как @FormParam
@PathParam
, @QueryParam
и т. Д. У нас может быть несколько параметров.Каждый параметр для этой аннотации представляет отдельную часть многокомпонентного запроса.
Таким образом, у нас есть возможность получить весь запрос в один объект с помощью FormDataMultiPart
;в этом случае мы будем извлекать части программно .Или мы можем декларативно извлечь каждую часть, используя аннотацию @FormDataParam
, где значением аннотации будет имя части.
Если мы использовали FormDataMultiPart
, мы должны были бы извлечь все части вручную из него.Мы будем использовать это в том случае, когда имя каждой части неизвестно.Или есть много частей, где объявление каждой из них не нравится кодеру.