Package com.mysql.cj.xdevapi
Class DbDocImpl
java.lang.Object
java.util.AbstractMap<K,V>
java.util.TreeMap<java.lang.String,JsonValue>
com.mysql.cj.xdevapi.DbDocImpl
- All Implemented Interfaces:
DbDoc
,JsonValue
,java.io.Serializable
,java.lang.Cloneable
,java.util.Map<java.lang.String,JsonValue>
,java.util.NavigableMap<java.lang.String,JsonValue>
,java.util.SortedMap<java.lang.String,JsonValue>
public class DbDocImpl extends java.util.TreeMap<java.lang.String,JsonValue> implements DbDoc
Represents a JSON object:
{} or {key : value} or {key : value, key : value, ...}key is a JSON string. value is any of JSON object, array, number, string, true, false, null. Example of valid JSON object:
{ "field1" : "value 1", "field2" : 1.234544E+26, "field3" : true, "field4" : false, "field5" : null, "field6" : { "inner field 1" : "inner value 1", "inner field 2" : 2, "inner field 3" : true, "inner field 4" : false, "inner field 5" : null, "inner field 6" : [], "inner field 7" : {} }, "field7" : ["arr1", 3, true, false, null, [], {}] }To create
DbDoc
from existing string representation you need to use JsonParser.parseDoc(java.io.StringReader)
method:
DbDoc doc = JsonParser.parseDoc(new StringReader("{\"key1\" : \"value1\"}"));You can construct JSON document by
DbDoc
, JsonString
, JsonNumber
, JsonArray
and JsonLiteral
methods and get JSON
string representation by using toString()
method. For example, to get the document shown above:
DbDoc doc = new DbDoc().add("field1", new JsonString().setValue("value 1")).add("field2", new JsonNumber().setValue("12345.44E22")) .add("field3", JsonLiteral.TRUE).add("field4", JsonLiteral.FALSE).add("field5", JsonLiteral.NULL) .add("field6", new DbDoc().add("inner field 1", new JsonString().setValue("inner value 1")).add("inner field 2", new JsonNumber().setValue("2")) .add("inner field 3", JsonLiteral.TRUE).add("inner field 4", JsonLiteral.FALSE).add("inner field 5", JsonLiteral.NULL) .add("inner field 6", new JsonArray()).add("inner field 7", new DbDoc())) .add("field7", new JsonArray().addValue(new JsonString().setValue("arr1")).addValue(new JsonNumber().setValue("3")).addValue(JsonLiteral.TRUE) .addValue(JsonLiteral.FALSE).addValue(JsonLiteral.NULL).addValue(new JsonArray()).addValue(new DbDoc())); doc.toString();
- See Also:
- Serialized Form
-
Nested Class Summary
-
Constructor Summary
Constructors Constructor Description DbDocImpl()
-
Method Summary
Methods inherited from class java.util.TreeMap
ceilingEntry, ceilingKey, clear, clone, comparator, containsKey, containsValue, descendingKeySet, descendingMap, entrySet, firstEntry, firstKey, floorEntry, floorKey, forEach, get, headMap, headMap, higherEntry, higherKey, keySet, lastEntry, lastKey, lowerEntry, lowerKey, navigableKeySet, pollFirstEntry, pollLastEntry, put, putAll, remove, replace, replace, replaceAll, size, subMap, subMap, tailMap, tailMap, values
-
Constructor Details
-
DbDocImpl
public DbDocImpl()
-
-
Method Details
-
toString
public java.lang.String toString()- Overrides:
toString
in classjava.util.AbstractMap<java.lang.String,JsonValue>
-
toFormattedString
public java.lang.String toFormattedString()Description copied from interface:JsonValue
Get a human readable "pretty" JSON string.- Specified by:
toFormattedString
in interfaceJsonValue
- Returns:
- human readable "pretty" JSON string
-
add
Description copied from interface:DbDoc
AddJsonValue
to the top-level document hierarchy.
-