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:
toStringin classjava.util.AbstractMap<java.lang.String,JsonValue>
-
toFormattedString
public java.lang.String toFormattedString()Description copied from interface:JsonValueGet a human readable "pretty" JSON string.- Specified by:
toFormattedStringin interfaceJsonValue- Returns:
- human readable "pretty" JSON string
-
add
Description copied from interface:DbDocAddJsonValueto the top-level document hierarchy.
-