Jackson - Panoramica

Jackson è una semplice libreria basata su Java per serializzare oggetti Java in JSON e viceversa.

Caratteristiche

  • Easy to use. - jackson API fornisce una facciata di alto livello per semplificare i casi d'uso comunemente usati.

  • No need to create mapping. - L'API jackson fornisce la mappatura predefinita per la maggior parte degli oggetti da serializzare.

  • Performance. - jackson è abbastanza veloce e ha un basso ingombro di memoria ed è adatto per sistemi o grafici di oggetti di grandi dimensioni.

  • Clean JSON. - jackson crea risultati JSON puliti e compatti di facile lettura.

  • No Dependency. - la libreria jackson non richiede altre librerie oltre a jdk.

  • Open Source - La libreria jackson è open source ed è gratuita.

Tre modi per elaborare JSON

Jackson offre tre modi alternativi per elaborare JSON

  • Streaming API- legge e scrive contenuto JSON come eventi discreti. JsonParser legge i dati mentre JsonGenerator scrive i dati. È l'approccio più potente tra i tre ed è di overhead più basso e più veloce nelle opzioni di lettura / scrittura. È analogo al parser Stax per XML.

  • Tree Model- prepara una rappresentazione ad albero in memoria del documento JSON. ObjectMapper crea la struttura ad albero dei nodi JsonNode. È l'approccio più flessibile. È analogo al parser DOM per XML.

  • Data Binding - converte JSON in e da POJO (Plain Old Java Object) utilizzando la funzione di accesso alle proprietà o utilizzando le annotazioni. È di due tipi.

    • Simple Data Binding - Converte JSON in e da Java Maps, elenchi, stringhe, numeri, booleani e oggetti nulli.

    • Full Data Binding - Converte JSON in e da qualsiasi tipo JAVA.

    ObjectMapper legge / scrive JSON per entrambi i tipi di associazioni di dati. Il Data Binding è il modo più conveniente ed è analogo al parer JAXB per XML.