Джексон - Обзор

Jackson - это простая библиотека на основе Java для сериализации объектов Java в JSON и наоборот.

Особенности

  • Easy to use. - API jackson предоставляет фасад высокого уровня для упрощения часто используемых вариантов использования.

  • No need to create mapping. - API jackson предоставляет сопоставление по умолчанию для большинства сериализуемых объектов.

  • Performance. - jackson работает тихо и быстро, занимает мало памяти и подходит для графов или систем больших объектов.

  • Clean JSON. - jackson создает чистые и компактные результаты JSON, которые легко читать.

  • No Dependency. - Библиотека jackson не требует никаких других библиотек, кроме jdk.

  • Open Source - Библиотека Джексона имеет открытый исходный код и бесплатна для использования.

Три способа обработки JSON

Джексон предлагает три альтернативных способа обработки JSON

  • Streaming API- читает и записывает содержимое JSON как дискретные события. JsonParser читает данные, тогда как JsonGenerator записывает данные. Это самый мощный из трех подходов с наименьшими накладными расходами и самым быстрым в операциях чтения / записи. Это аналог парсера Stax для XML.

  • Tree Model- подготавливает древовидное представление документа JSON в памяти. ObjectMapper строит дерево узлов JsonNode. Это максимально гибкий подход. Это аналог парсера DOM для XML.

  • Data Binding - преобразует JSON в POJO (обычный старый объект Java) и из него, используя метод доступа к свойству или аннотации. Он бывает двух типов.

    • Simple Data Binding - Преобразует JSON в карты Java, списки, строки, числа, логические значения и нулевые объекты и обратно.

    • Full Data Binding - Преобразует JSON в любой тип JAVA и обратно.

    ObjectMapper читает / записывает JSON для обоих типов привязок данных. Привязка данных является наиболее удобным способом и аналогична пареру JAXB для XML.