Class Oracle21JsonPlatform
java.lang.Object
org.eclipse.persistence.json.JsonPlatform
org.eclipse.persistence.platform.database.oracle.json.Oracle21JsonPlatform
- All Implemented Interfaces:
DatabaseJsonPlatform
Oracle 21c JSON database platform.
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionconvertDataValueToJsonValue
(Object jdbcValue) INTERNAL: Convert JDBCResultSet
type to JSON value field.<T> T
convertJsonValueToDataValue
(JsonValue jsonValue) INTERNAL: Convert JSON value field to JDBC statement type.<T> T
getJsonDataFromResultSet
(ResultSet resultSet, int columnNumber, Class<T> type) Retrieve JSON data from JDBCResultSet
.void
updateClassTypes
(Map<String, Class<?>> classTypeMapping) Update the mapping of Oracle 21c database types to class types for the schema framework.void
updateFieldTypes
(Hashtable<Class<?>, FieldTypeDefinition> fieldTypeMapping) Update the mapping of JSON class types to Oracle 21c database types for the schema framework.Methods inherited from class org.eclipse.persistence.json.JsonPlatform
isJsonType
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface org.eclipse.persistence.internal.databaseaccess.DatabaseJsonPlatform
customParameterMarker, unwrap
-
Constructor Details
-
Oracle21JsonPlatform
public Oracle21JsonPlatform()
-
-
Method Details
-
updateClassTypes
Update the mapping of Oracle 21c database types to class types for the schema framework.- Parameters:
classTypeMapping
-Map
with mappings to be updated.
-
updateFieldTypes
Update the mapping of JSON class types to Oracle 21c database types for the schema framework.- Specified by:
updateFieldTypes
in interfaceDatabaseJsonPlatform
- Overrides:
updateFieldTypes
in classJsonPlatform
- Parameters:
fieldTypeMapping
-Map
with mappings to be updated.
-
convertJsonValueToDataValue
INTERNAL: Convert JSON value field to JDBC statement type. Postgres JSON storage type isJSONB
and target Java type isPGobject
.- Overrides:
convertJsonValueToDataValue
in classJsonPlatform
- Type Parameters:
T
- classification type- Parameters:
jsonValue
- source JSON value field- Returns:
- converted JDBC statement type
- Throws:
PersistenceException
-
convertDataValueToJsonValue
INTERNAL: Convert JDBCResultSet
type to JSON value field.- Overrides:
convertDataValueToJsonValue
in classJsonPlatform
- Parameters:
jdbcValue
- source classification type value from JDBC- Returns:
- converted JSON field value
-
getJsonDataFromResultSet
public <T> T getJsonDataFromResultSet(ResultSet resultSet, int columnNumber, Class<T> type) throws SQLException Retrieve JSON data from JDBCResultSet
. JSON data retrieved from Postgres JDBCResultSet
are returned asOracleJsonValue
instance.JsonTypeConverter
will convertOracleJsonValue
toJsonValue
.- Type Parameters:
T
- target type to return- Parameters:
resultSet
- source JDBCResultSet
columnNumber
- index of column in JDBCResultSet
type
- target class to return, this class will be used to cast returned value- Returns:
- JSON data from JDBC
ResultSet
asString
to be parsed by commonJsonTypeConverter
- Throws:
SQLException
- if data could not be retrieved
-