Чтение Глава 8: JAX-RS Entity Provider в документации Джерси. Это объясняет, как (де) сериализация осуществляется в Джерси. Это объясняет использование MessageBodyReader
s и MessageBodyWriter
s для преобразования данных в объект Java и обратно в сериализованные потоки.
В конце главы вы увидите провайдеров по умолчанию, с которыми поставляется Джерси из коробки
byte[] (*/*)
String (*/*)
InputStream (*/*)
Reader (*/*)
File (*/*)
DataSource (*/*)
Source (text/xml, application/xml and media types of the form application/*+xml)
JAXBElement (text/xml, application/xml and media types of the form application/*+xml)
MultivaluedMap<K,V> (application/x-www-form-urlencoded)
Form (application/x-www-form-urlencoded)
StreamingOutput ((*/*)) - this class can be used as an lightweight MessageBodyWriter<T> that can be returned from a resource method
Boolean, Character and Number (text/plain) - corresponding primitive types supported via boxing/unboxing conversion
Помимо основных провайдеров, в Джерси также есть провайдеры не по умолчанию для обработки таких вещей, как преобразование JSON в POJO (и наоборот) и обработка Multipart. Вы можете прочитать больше об этом в Глава 9 . Если не существует провайдера для удовлетворения наших потребностей в конверсии, то мы также можем просто написать нашего собственного читателя или писателя, чтобы справиться с этим.