blob: b8ed53086fca8149244a7dac62f4c273eda83858 [file] [log] [blame]
/**
Contains basic mapper (conversion) functionality that
allows for converting between regular streaming json content and
Java objects (beans or Tree Model: support for both is via
{@link org.codehaus.jackson.map.ObjectMapper} class, as well
as convenience methods included in
{@link org.codehaus.jackson.JsonParser}
<p>
Object mapper will convert Json content to ant from
basic Java wrapper types (Integer, Boolean, Double),
Collection types (List, Map), Java Beans,
Strings and nulls.
<p>
Tree mapper builds dynamically typed tree of <code>JsonNode</code>s
from Json content (and writes such trees as Json),
similar to how DOM model works with xml.
Main benefits over Object mapping are:
<ul>
<li>No null checks are needed (dummy
nodes are created as necessary to represent "missing" Object fields
and Array elements)
</li>
<li>No type casts are usually needed: all public access methods are defined
in basic JsonNode class, and when "incompatible" method (such as Array
element access on, say, Boolean node) is used, returned node is
virtual "missing" node.
</li>
</ul>
Because of its dynamic nature, Tree mapping is often convenient
for basic path access and tree navigation, where structure of
the resulting tree is known in advance.
*/
package org.codehaus.jackson.map;