public class SerialArray extends Object implements Array, Serializable, Cloneable
Array对象的序列化版本,它是Java编程语言中的SQL ARRAY值的映射。
SerialArray类提供了一个构造函数,用于从Array对象创建一个SerialArray实例,获取基类型的基本类型和SQL名称的方法以及复制SerialArray对象全部或部分的方法。
注意:为了使此类正常运行,必须连接数据源才能使SQL Array对象实现(如果需要,将其所有元素都带到客户端服务器)。 此时,当前不支持对数据源中的数据(如定位器)的逻辑指针。
| Constructor and Description |
|---|
SerialArray(Array array)
构造一个新
SerialArray从给定对象
Array对象。
|
SerialArray(Array array, Map<String,类<?>> map)
从给定的
Array对象构造一个新的
SerialArray对象,当元素为SQL UDT时,使用给定的类型映射来定制每个元素的映射。
|
| Modifier and Type | Method and Description |
|---|---|
Object |
clone()
返回此
SerialArray的克隆。
|
boolean |
equals(Object obj)
将此SerialArray与指定的对象进行比较。
|
void |
free()
该方法可以释放
SeriableArray对象并释放它所拥有的资源。
|
Object |
getArray()
返回一个新数组,该数组是该
SerialArray对象的副本。
|
Object |
getArray(long index, int count)
返回一个新数组,该数组是该
SerialArray对象的一个片段的副本,从给定索引处的元素开始,并包含给定数量的连续元素。
|
Object |
getArray(long index, int count, Map<String,类<?>> map)
返回一个新数组,它是此
SerialArray对象的一个片段的副本,从给定索引处的元素开始,并包含给定数量的连续元素。
|
Object |
getArray(Map<String,类<?>> map)
返回一个新数组,该数组是该
SerialArray对象的副本,当元素为SQL UDT时,使用给定的类型映射来为每个元素的自定义映射。
|
int |
getBaseType()
检索此
SerialArray对象中的元素的SQL类型。
|
String |
getBaseTypeName()
检索此
SerialArray对象中元素的DBMS特定类型名称。
|
ResultSet |
getResultSet()
检索一个
ResultSet对象,该对象包含该
SerialArray对象所代表的
ARRAY值中的所有元素。
|
ResultSet |
getResultSet(long index, int count)
检索保存从索引
索引开始的子阵列的元素的
ResultSet对象,并包含最多
计数连续的元素。
|
ResultSet |
getResultSet(long index, int count, Map<String,类<?>> map)
检索设置保持其开始于检索所述子阵列的元素的结果
ResultSet对象,其中包含在该元件的子阵列
SerialArray对象,开始于索引
指数和包含
count个连续元素。
|
ResultSet |
getResultSet(Map<String,类<?>> map)
检索
ResultSet对象,它包含所有的SQL的元件的
ARRAY由该表示值
SerialArray对象。
|
int |
hashCode()
返回此SerialArray的哈希码。
|
public SerialArray(Array array, Map<String,类<?>> map) throws SerialException, SQLException
Array对象构造一个新的SerialArray对象,当元素是SQL UDT时,使用给定的类型映射来定义每个元素的映射。
如果数组元素是UDT,并且给定的类型映射具有该UDT的条目,则此方法将执行自定义映射。 自定义映射是递归的,这意味着,如果例如,SQL结构化类型的元素是SQL结构类型,其本身具有作为SQL结构类型的元素,那么具有自定义映射的每个结构化类型将根据给定类型地图。
新SerialArray对象包含相同的元素, Array从其中它是建立,除非当基类型是SQL类型对象STRUCT , ARRAY , BLOB , CLOB , DATALINK或JAVA_OBJECT 。 在这种情况下,在新的每一个元素SerialArray目的是适当的串行化的形式,即, SerialStruct , SerialArray , SerialBlob , SerialClob , SerialDatalink ,或SerialJavaObject对象。
注:(1) Array从一个对象SerialArray创建对象,必须已经在SQL ARRAY它传递给构造之前在客户端上值的数据。 否则,新的SerialArray对象将不包含任何数据。
注意:(2)如果Array包含java.sql.Types.JAVA_OBJECT类型,则SerialJavaObject SerialJavaObject构造函数,以确保此对象可串行化。
注意:(3)提供给此构造函数的Array对象不能为任何Array.getArray()方法返回null 。 SerialArray无法序列化空数组值。
array - 要
Array对象
map -一个java.util.Map对象,其中每个条目包含:1)一个String对象给出UDT(SQL结构类型或不同类型)和2)所述的完全合格的名称类对象为SQLData执行定义UDT是如何被映射。
地图参数没有任何效果Blob , Clob , DATALINK ,或JAVA_OBJECT类型。
SerialException - 如果序列化
Array对象发生错误
SQLException - 如果发生数据库访问错误或
数组或
映射值为
null
public SerialArray(Array array) throws SerialException, SQLException
SerialArray从给定对象Array对象。
此构造函数不执行自定义映射。 如果阵列的基本类型是SQL结构类型,并且需要自定义映射,则应使用构造SerialArray(Array array, Map map) 。
新SerialArray对象包含相同的元素, Array从其中它是建立,除非当基类型是SQL类型对象BLOB , CLOB , DATALINK或JAVA_OBJECT 。 在这种情况下,在新的每一个元素SerialArray目的是适当的串行化的形式,即, SerialBlob , SerialClob , SerialDatalink ,或SerialJavaObject对象。
注:(1) Array从一个对象SerialArray创建对象,必须已经在SQL ARRAY它传递给构造之前在客户端上值的数据。 否则,新的SerialArray对象将不包含任何数据。
注意:(2)提供给此构造函数的Array对象不能为任何Array.getArray()方法返回null 。 SerialArray无法序列化null数组值。
array - 要
Array对象
SerialException - 如果串行化
Array对象发生错误
SQLException - 如果发生数据库访问错误或
数组参数为
null 。
public void free()
throws SQLException
SeriableArray对象并释放其拥有的资源。
调用free方法后,该对象无效。
如果free被多次调用,则后续调用free被视为无操作。
free在界面
Array
SQLException - 如果发布错误发生SerialArray的资源
public Object getArray() throws SerialException
SerialArray对象的副本。
getArray在界面
Array
SerialArray对象为
Object Java编程语言
SerialException - 如果发生错误;
如果free以前已经被调用了这个对象
public Object getArray(Map<String,类<?>> map) throws SerialException
SerialArray对象的副本,当元素为SQL UDT时,使用给定的类型映射表示每个元素的自定义映射。
如果数组元素是UDT,并且给定的类型映射具有该UDT的条目,则此方法将执行自定义映射。 自定义映射是递归的,这意味着,如果例如,SQL结构化类型的元素是SQL结构类型,其本身具有作为SQL结构类型的元素,那么具有自定义映射的每个结构化类型将根据给定类型地图。
getArray在界面
Array
map - 一个
java.util.Map对象,其中每个条目由1)
String对象提供UDT的完全限定名称,2)
类实现的
SQLData对象,定义如何映射UDT
SerialArray对象为
Object Java编程语言
SerialException - 如果发生错误;
如果free以前已经被调用了这个对象
public Object getArray(long index, int count) throws SerialException
SerialArray对象的一个片段的副本,从给定索引处的元素开始,并包含给定数量的连续元素。
getArray在界面
Array
index - 要复制的第一个元素的索引到这个SerialArray对象;
第一个元素的索引是0
count - 从给定索引开始的要复制的连续元素的数量
SerialArray对象为
Object Java编程语言
SerialException - 如果发生错误;
如果free以前已经被调用了这个对象
public Object getArray(long index, int count, Map<String,类<?>> map) throws SerialException
SerialArray对象的一个片段的副本,从给定索引处的元素开始,并包含给定数量的连续元素。
如果数组元素是UDT,并且给定的类型映射具有该UDT的条目,则此方法将执行自定义映射。 自定义映射是递归的,这意味着,如果例如,SQL结构化类型的元素是SQL结构类型,其本身具有作为SQL结构类型的元素,那么具有自定义映射的每个结构化类型将根据给定类型地图。
getArray在界面
Array
index - 要复制的第一个元素的这个SerialArray对象的索引;
数组中第一个元素的索引为0
count - 从给定索引开始的要复制的连续元素的数量
map - 一个
java.util.Map对象,其中每个条目由1)提供UDT的完全限定名称的
String对象组成,2)
类实现的
SQLData对象,该对象定义如何映射UDT
SerialArray对象为
Object Java编程语言
SerialException - 如果发生错误;
如果free以前已经被调用了这个对象
public int getBaseType()
throws SerialException
SerialArray对象中的元素的SQL类型。
int返回的是java.sql.Types类中的java.sql.Types 。
getBaseType在界面
Array
java.sql.Types ,表示这个
SerialArray对象中的元素的SQL类型
SerialException - 如果发生错误;
如果free以前曾被调用此对象
public String getBaseTypeName() throws SerialException
SerialArray对象中元素的DBMS特定类型名称。
getBaseTypeName在界面
Array
SerialArray对象的基本类型使用的SQL类型名称
SerialException - 如果发生错误;
如果free以前已经被调用了这个对象
public ResultSet getResultSet(long index, int count) throws SerialException
ResultSet对象,并包含最多计数连续元素。
如果地图包含基本类型的条目,则此方法使用连接的类型映射来映射数组的元素。
否则,使用标准映射。
getResultSet在界面
Array
index - 要复制的第一个元素的这个SerialArray对象的索引;
数组中第一个元素的索引为0
count - 从给定索引开始的要复制的连续元素的数量
ResultSet对象,包含此
SerialArray对象中的指定元素,每个元素分别有一行
SerialException - 如果调用原因设置为
UnsupportedOperationException
public ResultSet getResultSet(Map<String,类<?>> map) throws SerialException
ResultSet对象,它包含所有的SQL的元件的ARRAY由该表示值SerialArray对象。
这种方法使用了类型映射自定义指定映射除非数组的基本类型不匹配在地图上用户定义的类型(UDT),在这种情况下,它使用标准映射。
方法getResultSet此版本使用给定类型映射或标准映射;
它从不使用与连接相关联的类型映射。
getResultSet在界面
Array
map - 一个
java.util.Map对象,其中每个条目由1)提供UDT的完全限定名称的
String对象组成,2)用于定义UDT如何映射的
SQLData实现的
类对象
ResultSet对象,包含此
SerialArray对象中的所有元素,每个元素都有一个单独的行
SerialException - 如果调用原因设置为
UnsupportedOperationException
public ResultSet getResultSet() throws SerialException
ResultSet对象,该对象包含该SerialArray对象所代表的ARRAY值中的所有元素。
如果适当,使用连接的类型映射映射数组的元素;
否则,使用标准映射。
getResultSet在界面
Array
ResultSet对象,包含此
SerialArray对象中的所有元素,每个元素都有一个单独的行
SerialException - 如果调用原因设置为
UnsupportedOperationException
public ResultSet getResultSet(long index, int count, Map<String,类<?>> map) throws SerialException
ResultSet对象,该对象包含此SerialArray对象中的元素的子阵列,从索引索引开始,并包含最多计数连续元素。
这种方法使用了类型映射自定义指定映射除非数组的基本类型不匹配在地图上用户定义的类型(UDT),在这种情况下,它使用标准映射。
方法getResultSet此版本使用给定类型映射或标准映射;
它从不使用与连接相关联的类型映射。
getResultSet在界面
Array
index - 要复制的第一个元素的这个SerialArray对象的索引;
数组中第一个元素的索引为0
count - 从给定索引开始的要复制的连续元素的数量
map - 一个
java.util.Map对象,其中每个条目由1)
String对象提供UDT的完全限定名称,2)
类实现的
SQLData对象,定义如何映射UDT
ResultSet此
SerialArray对象中指定元素的
SerialArray对象,每个元素分别有一行
SerialException - 如果调用原因设置为
UnsupportedOperationException
public boolean equals(Object obj)
true当且仅当参数不是null并且是一个SerialArray对象的元素是相同的这个对象的元素
equals在
Object
obj - 对比这个
SerialArray的对象
true如果给定的对象表示
SerialArray相当于此SerialArray,
false否则
Object.hashCode() , HashMap
public int hashCode()
SerialArray对象使用的元素的哈希码计算SerialArray对象
hashCode在类别
Object
Object.equals(java.lang.Object) ,
System.identityHashCode(java.lang.Object)
Submit a bug or feature
For further API reference and developer documentation, see Java SE Documentation. That documentation contains more detailed, developer-targeted descriptions, with conceptual overviews, definitions of terms, workarounds, and working code examples.
Copyright © 1993, 2014, Oracle and/or its affiliates. All rights reserved.