Package org.h2.value
Class ValueJson
java.lang.Object
org.h2.value.VersionedValue<Value>
org.h2.value.Value
org.h2.value.ValueBytesBase
org.h2.value.ValueJson
Implementation of the JSON data type.
-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final ValueJson
false
JSON value.private static final byte[]
static final ValueJson
null
JSON value.private static final byte[]
static final ValueJson
true
JSON value.private static final byte[]
static final ValueJson
0
JSON value.Fields inherited from class org.h2.value.ValueBytesBase
hash, value
Fields inherited from class org.h2.value.Value
ARRAY, ASSIGN_TO, BIGINT, BINARY, BLOB, BOOLEAN, CAST_TO, CHAR, CLOB, CONVERT_TO, DATE, DECFLOAT, DOUBLE, EMPTY_VALUES, ENUM, GEOMETRY, GROUP_BINARY_STRING, GROUP_BOOLEAN, GROUP_CHARACTER_STRING, GROUP_COLLECTION, GROUP_DATETIME, GROUP_INTERVAL_DT, GROUP_INTERVAL_YM, GROUP_NULL, GROUP_NUMERIC, GROUP_OTHER, GROUPS, INTEGER, INTERVAL_DAY, INTERVAL_DAY_TO_HOUR, INTERVAL_DAY_TO_MINUTE, INTERVAL_DAY_TO_SECOND, INTERVAL_HOUR, INTERVAL_HOUR_TO_MINUTE, INTERVAL_HOUR_TO_SECOND, INTERVAL_MINUTE, INTERVAL_MINUTE_TO_SECOND, INTERVAL_MONTH, INTERVAL_SECOND, INTERVAL_YEAR, INTERVAL_YEAR_TO_MONTH, JAVA_OBJECT, JSON, MAX_LONG_DECIMAL, MIN_LONG_DECIMAL, NUMERIC, REAL, ROW, SMALLINT, TIME, TIME_TZ, TIMESTAMP, TIMESTAMP_TZ, TINYINT, TYPE_COUNT, UNKNOWN, UUID, VARBINARY, VARCHAR, VARCHAR_IGNORECASE
Fields inherited from interface org.h2.util.HasSQL
ADD_PLAN_INFORMATION, DEFAULT_SQL_FLAGS, NO_CASTS, QUOTE_ONLY_WHEN_REQUIRED, REPLACE_LOBS_FOR_TRACE, TRACE_SQL_FLAGS
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionstatic ValueJson
fromJson
(byte[] bytes) Returns JSON value with the specified content.static ValueJson
Returns JSON value with the specified content.static ValueJson
get
(boolean bool) Returns JSON value with the specified boolean content.static ValueJson
get
(int number) Returns JSON value with the specified numeric content.static ValueJson
get
(long number) Returns JSON value with the specified numeric content.static ValueJson
Returns JSON value with the specified string content.static ValueJson
get
(BigDecimal number) Returns JSON value with the specified numeric content.static ValueJson
getInternal
(byte[] bytes) Returns JSON value with the specified content.Returns JSON item type.private static ValueJson
getSQL
(StringBuilder builder, int sqlFlags) Appends the SQL statement of this object to the specified builder.Get the value as a string.getType()
Returns the data type.int
Get the value type.Methods inherited from class org.h2.value.ValueBytesBase
compareTypeSafe, equals, getBytes, getBytesNoCopy, getMemory, hashCode
Methods inherited from class org.h2.value.Value
add, cache, castTo, charLength, clearCache, compareTo, compareWithNull, containsNull, convertForAssignTo, convertTo, convertTo, convertTo, convertTo, convertTo, convertToAnyArray, convertToAnyRow, convertToBigint, convertToBoolean, convertToChar, convertToDate, convertToDouble, convertToEnum, convertToGeometry, convertToInt, convertToInt, convertToJavaObject, convertToReal, convertToSmallint, convertToTinyint, convertToUuid, divide, getBigDecimal, getBoolean, getByte, getDataConversionError, getDataConversionError, getDouble, getFloat, getHigherOrder, getHigherOrderKnown, getInputStream, getInputStream, getInt, getLong, getReader, getReader, getShort, getSignum, getTypeName, getUnsupportedExceptionForOperation, getValueTooLongException, isFalse, isTrue, modulus, multiply, negate, octetLength, rangeCheck, subtract, toString
Methods inherited from class org.h2.value.VersionedValue
getCommittedValue, getCurrentValue, getOperationId, isCommitted
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
Methods inherited from interface org.h2.util.HasSQL
getSQL, getTraceSQL
-
Field Details
-
NULL_BYTES
private static final byte[] NULL_BYTES -
TRUE_BYTES
private static final byte[] TRUE_BYTES -
FALSE_BYTES
private static final byte[] FALSE_BYTES -
NULL
null
JSON value. -
TRUE
true
JSON value. -
FALSE
false
JSON value. -
ZERO
0
JSON value.
-
-
Constructor Details
-
ValueJson
private ValueJson(byte[] value)
-
-
Method Details
-
getSQL
Description copied from interface:HasSQL
Appends the SQL statement of this object to the specified builder.- Specified by:
getSQL
in interfaceHasSQL
- Overrides:
getSQL
in classValueBytesBase
- Parameters:
builder
- string buildersqlFlags
- formatting flags- Returns:
- the specified string builder
-
getType
Description copied from interface:Typed
Returns the data type. -
getValueType
public int getValueType()Description copied from class:Value
Get the value type.- Specified by:
getValueType
in classValue
- Returns:
- the value type
-
getString
Description copied from class:Value
Get the value as a string. -
getItemType
Returns JSON item type.- Returns:
- JSON item type
-
fromJson
Returns JSON value with the specified content.- Parameters:
s
- JSON representation, will be normalized- Returns:
- JSON value
- Throws:
DbException
- on invalid JSON
-
fromJson
Returns JSON value with the specified content.- Parameters:
bytes
- JSON representation, will be normalized- Returns:
- JSON value
- Throws:
DbException
- on invalid JSON
-
get
Returns JSON value with the specified boolean content.- Parameters:
bool
- boolean value- Returns:
- JSON value
-
get
Returns JSON value with the specified numeric content.- Parameters:
number
- integer value- Returns:
- JSON value
-
get
Returns JSON value with the specified numeric content.- Parameters:
number
- long value- Returns:
- JSON value
-
get
Returns JSON value with the specified numeric content.- Parameters:
number
- big decimal value- Returns:
- JSON value
-
get
Returns JSON value with the specified string content.- Parameters:
string
- string value- Returns:
- JSON value
-
getInternal
Returns JSON value with the specified content.- Parameters:
bytes
- normalized JSON representation- Returns:
- JSON value
-
getNumber
-