SerialStruct (Java SE 10 & JDK 10 )
- java.lang.Object
-
- javax.sql.rowset.serial.SerialStruct
-
- All Implemented Interfaces:
Serializable,Cloneable,Struct
public class SerialStruct extends Object implements Struct, Serializable, Cloneable
A serialized mapping in the Java programming language of an SQL structured type. Each attribute that is not already serialized is mapped to a serialized form, and if an attribute is itself a structured type, each of its attributes that is not already serialized is mapped to a serialized form.
In addition, the structured type is custom mapped to a class in the Java programming language if there is such a mapping, as are its attributes, if appropriate.
The
SerialStructclass provides a constructor for creating an instance from aStructobject, a method for retrieving the SQL type name of the SQL structured type in the database, and methods for retrieving its attribute values.Thread safety
A SerialStruct is not safe for use by multiple concurrent threads. If a SerialStruct is to be used by more than one thread then access to the SerialStruct should be controlled by appropriate synchronization.
- Since:
- 1.5
- See Also:
- Serialized Form
-
-
Constructor Summary
Constructors Constructor Description SerialStruct(SQLData in, Map<String,Class<?>> map)Constructs a
SerialStructobject from the givenSQLDataobject, using the given type map to custom map it to a class in the Java programming language.SerialStruct(Struct in, Map<String,Class<?>> map)Constructs a
SerialStructobject from the givenStructobject, using the givenjava.util.Mapobject for custom mapping the SQL structured type or any of its attributes that are SQL structured types.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description Objectclone()Returns a clone of this
SerialStruct.booleanequals(Object obj)Compares this SerialStruct to the specified object.
Object[]getAttributes()Retrieves an array of
Objectvalues containing the attributes of the SQL structured type that thisSerialStructobject represents.Object[]getAttributes(Map<String,Class<?>> map)Retrieves the attributes for the SQL structured type that this
SerialStructrepresents as an array ofObjectvalues, using the given type map for custom mapping if appropriate.StringgetSQLTypeName()Retrieves the SQL type name for this
SerialStructobject.inthashCode()Returns a hash code for this
SerialStruct.
-
-
-
Constructor Detail
-
SerialStruct
public SerialStruct(Struct in, Map<String,Class<?>> map) throws SerialException
Constructs a
SerialStructobject from the givenStructobject, using the givenjava.util.Mapobject for custom mapping the SQL structured type or any of its attributes that are SQL structured types.- Parameters:
in- an instance ofStructmap- ajava.util.Mapobject in which each entry consists of 1) aStringobject giving the fully qualified name of a UDT and 2) theClassobject for theSQLDataimplementation that defines how the UDT is to be mapped- Throws:
SerialException- if an error occurs- See Also:
Struct
-
SerialStruct
public SerialStruct(SQLData in, Map<String,Class<?>> map) throws SerialException
Constructs a
SerialStructobject from the givenSQLDataobject, using the given type map to custom map it to a class in the Java programming language. The type map gives the SQL type and the class to which it is mapped. TheSQLDataobject defines the class to which the SQL type will be mapped.- Parameters:
in- an instance of theSQLDataclass that defines the mapping of the SQL structured type to one or more objects in the Java programming languagemap- ajava.util.Mapobject in which each entry consists of 1) aStringobject giving the fully qualified name of a UDT and 2) theClassobject for theSQLDataimplementation that defines how the UDT is to be mapped- Throws:
SerialException- if an error occurs
-
-
Method Detail
-
getSQLTypeName
public String getSQLTypeName() throws SerialException
Retrieves the SQL type name for this
SerialStructobject. This is the name used in the SQL definition of the structured type- Specified by:
getSQLTypeNamein interfaceStruct- Returns:
- a
Stringobject representing the SQL type name for the SQL structured type that thisSerialStructobject represents - Throws:
SerialException- if an error occurs
-
getAttributes
public Object[] getAttributes() throws SerialException
Retrieves an array of
Objectvalues containing the attributes of the SQL structured type that thisSerialStructobject represents.- Specified by:
getAttributesin interfaceStruct- Returns:
- an array of
Objectvalues, with each element being an attribute of the SQL structured type that thisSerialStructobject represents - Throws:
SerialException- if an error occurs
-
getAttributes
public Object[] getAttributes(Map<String,Class<?>> map) throws SerialException
Retrieves the attributes for the SQL structured type that this
SerialStructrepresents as an array ofObjectvalues, using the given type map for custom mapping if appropriate.- Specified by:
getAttributesin interfaceStruct- Parameters:
map- ajava.util.Mapobject in which each entry consists of 1) aStringobject giving the fully qualified name of a UDT and 2) theClassobject for theSQLDataimplementation that defines how the UDT is to be mapped- Returns:
- an array of
Objectvalues, with each element being an attribute of the SQL structured type that thisSerialStructobject represents - Throws:
SerialException- if an error occurs
-
equals
public boolean equals(Object obj)
Compares this SerialStruct to the specified object. The result is
trueif and only if the argument is notnulland is aSerialStructobject whose attributes are identical to this object's attributes- Overrides:
equalsin classObject- Parameters:
obj- The object to compare thisSerialStructagainst- Returns:
trueif the given object represents aSerialStructequivalent to this SerialStruct,falseotherwise- See Also:
Object.hashCode(),HashMap
-
hashCode
public int hashCode()
Returns a hash code for this
SerialStruct. The hash code for aSerialStructobject is computed using the hash codes of the attributes of theSerialStructobject and itsSQLTypeName- Overrides:
hashCodein classObject- Returns:
- a hash code value for this object.
- See Also:
Object.equals(java.lang.Object),System.identityHashCode(java.lang.Object)
-
clone
public Object clone()
Returns a clone of this
SerialStruct. The copy will contain a reference to a clone of the underlying attribs array, not a reference to the original underlying attribs array of thisSerialStructobject.
-
-
Report a bug or suggest an enhancement
For further API reference and developer documentation see the Java SE Documentation, which contains more detailed, developer-targeted descriptions with conceptual overviews, definitions of terms, workarounds, and working code examples.
Java is a trademark or registered trademark of Oracle and/or its affiliates in the US and other countries.
Copyright © 1993, 2018, Oracle and/or its affiliates, 500 Oracle Parkway, Redwood Shores, CA 94065 USA.
All rights reserved. Use is subject to license terms and the documentation redistribution policy.