|
JavaTM Platform Standard Ed. 6 |
|||||||||
| 上一个类 下一个类 | 框架 无框架 | |||||||||
| 摘要: 嵌套 | 字段 | 构造方法 | 方法 | 详细信息: 字段 | 构造方法 | 方法 | |||||||||
java.lang.Objectjavax.sql.rowset.serial.SQLInputImpl
public class SQLInputImpl
用于自定义映射用户定义类型 (UDT) 的输入流。SQLInputImpl 对象是一个包含值流的输入流,这些值是 UDT 的属性。
在对具有自定义映射关系的 SQL 结构类型或不同类型调用 getObject 方法时,驱动程序在后台使用此类;程序员决不直接调用 SQLInputImpl 方法。这里提供这些方法是为了便于编写 RowSet 实现。
SQLInputImpl 类提供一组类似于 ResultSet 获取方法的读取方法。这些方法可以在 SQLInputImpl 对象中读取值。
方法 wasNull 用于确定读取的最后一个值是否是 SQL NULL。
当用实现接口 SQLData 的类的对象调用方法 getObject 时,JDBC 驱动程序调用方法 SQLData.getSQLType 来确定要自定义映射的 UDT 的 SQL 类型。驱动程序创建一个 SQLInputImpl 实例,并用 UDT 的属性填充它。然后,驱动程序将输入流传递给 SQLData.readSQL 方法,该方法依次调用 SQLInputImpl 读取方法从输入流读取属性。
SQLData
| 构造方法摘要 | |
|---|---|
SQLInputImpl(Object[] attributes, Map<String,Class<?>> map) 创建一个 SQLInputImpl 对象,并使用给定的属性数组和类型映射表进行初始化。 |
|
| 方法摘要 | |
|---|---|
Array |
readArray() 从流中读取 SQL ARRAY 值并以 Java 编程语言中 Array 对象的形式返回。 |
InputStream |
readAsciiStream() 以 ASCII 字符流的形式返回此 SQLInputImpl 对象中的下一个属性。 |
BigDecimal |
readBigDecimal() 以 java.math.BigDecimal 的形式获取此 SQLInputImpl 对象中的下一个属性。 |
InputStream |
readBinaryStream() 以未解释字节流的形式返回此 SQLInputImpl 对象中的下一个属性。 |
Blob |
readBlob() 以 Java 编程语言中 Blob 对象的形式获取此 SQLInputImpl 对象头部的 BLOB 值。 |
boolean |
readBoolean() 以 Java 编程语言中 boolean 的形式获取此 SQLInputImpl 对象中的下一个属性。 |
byte |
readByte() 以 Java 编程语言中 byte 的形式获取此 SQLInputImpl 对象中的下一个属性。 |
byte[] |
readBytes() 以字节数组的形式获取此 SQLInputImpl 对象中的下一个属性。 |
Reader |
readCharacterStream() 以 Unicode 字符流的形式获取此 SQLInputImpl 对象中的下一个属性。 |
Clob |
readClob() 以 Java 编程语言中 Clob 对象的形式获取此 SQLInputImpl 对象头部的 CLOB 值。 |
Date |
readDate() 以 java.sql.Date 对象的形式获取此 SQLInputImpl 中的下一个属性。 |
double |
readDouble() 以 Java 编程语言中 double 的形式获取此 SQLInputImpl 对象中的下一个属性。 |
float |
readFloat() 以 Java 编程语言中 float 的形式获取此 SQLInputImpl 对象中的下一个属性。 |
int |
readInt() 以 Java 编程语言中 int 的形式获取此 SQLInputImpl 对象中的下一个属性。 |
long |
readLong() 以 Java 编程语言中 long 的形式获取此 SQLInputImpl 对象中的下一个属性。 |
NClob |
readNClob() 从流中读取 SQL NCLOB 值并以 Java 编程语言中 Clob 对象的形式返回。 |
String |
readNString() 读取流中下一个属性并以 Java 编程语言中 String 的形式返回。 |
Object |
readObject() 以 Java 编程语言中 Object 的形式获取此 SQLInputImpl 对象的头部值。 |
Ref |
readRef() 以 Java 编程语言中 Ref 对象的形式获取此 SQLInputImpl 对象的头部值。 |
RowId |
readRowId() 从流中读取 SQL ROWID 值并以 Java 编程语言中 RowId 对象的形式返回。 |
short |
readShort() 以 Java 编程语言中 short 的形式获取此 SQLInputImpl 对象中的下一个属性。 |
SQLXML |
readSQLXML() 从流中读取 SQL XML 值并以 Java 编程语言中 SQLXML 对象的形式返回。 |
String |
readString() 以 Java 编程语言中 String 的形式获取此 SQLInputImpl 对象中的下一个属性。 |
Time |
readTime() 以 java.sql.Time 对象的形式获取此 SQLInputImpl 对象中的下一个属性。 |
Timestamp |
readTimestamp() 以 java.sql.Timestamp 对象的形式获取此 SQLInputImpl 对象中的下一个属性。 |
URL |
readURL() 从流中读取 SQL DATALINK 值并以 Java 编程语言中 URL 对象的形式返回。 |
boolean |
wasNull() 确认从此 SQLInputImpl 对象读取的上一个值是否为 null。 |
| 从类 java.lang.Object 继承的方法 |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| 构造方法详细信息 |
|---|
public SQLInputImpl(Object[] attributes,
Map<String,Class<?>> map)
throws SQLException
SQLInputImpl 对象,并使用给定的属性数组和类型映射表进行初始化。如果这些属性中有某个 UDT 属性的名称存在于类型映射表条目中,则根据相应的
SQLData 实现映射该属性。
attributes -
Object 实例数组,其中每个元素都是 UDT 属性。数组中属性的顺序与它们在 UDT 定义中所定义的顺序相同。
map - 包含零个或多个条目的
java.util.Map 对象,其中每个条目包含:1) 给出 UDT 完全限定名的
String 2) 用于定义 UDT 映射方式的
SQLData 实现的
Class 对象
SQLException - 如果
attributes 或
map 的值为
null
| 方法详细信息 |
|---|
public String readString()
throws SQLException
String 的形式获取此
SQLInputImpl 对象中的下一个属性。
此方法不执行类型安全检查来确定返回类型是否为期望类型;该职责已委托给 SQLData 实现定义的 UDT 映射。
SQLInput 中的
readString
SQLInputImpl 对象中的下一个属性;如果值为
SQL NULL,则返回
null
SQLException - 如果读取位置被定位在无效位置,或者流中不存在更多值。
public boolean readBoolean()
throws SQLException
boolean 的形式获取此
SQLInputImpl 对象中的下一个属性。
此方法不执行类型安全检查来确定返回类型是否为期望类型;该职责已委托给 SQLData 实现定义的 UDT 映射。
SQLInput 中的
readBoolean
SQLInputImpl 对象中的下一个属性;如果值为
SQL NULL,则返回
null
SQLException - 如果读取位置被定位在无效位置,或者流中不存在更多值。
public byte readByte()
throws SQLException
byte 的形式获取此
SQLInputImpl 对象中的下一个属性。
此方法不执行类型安全检查来确定返回类型是否为期望类型;该职责已委托给 SQLData 实现定义的 UDT 映射。
SQLInput 中的
readByte
SQLInputImpl 对象中的下一个属性;如果值为
SQL NULL,则返回
null
SQLException - 如果读取位置被定位在无效位置,或者流中不存在更多值。
public short readShort()
throws SQLException
short 的形式获取此
SQLInputImpl 对象中的下一个属性。
此方法不执行类型安全检查来确定返回类型是否为期望类型;该职责已委托给 SQLData 实现定义的 UDT 映射。
SQLInput 中的
readShort
SQLInputImpl 对象中的下一个属性;如果值为
SQL NULL,则返回
null
SQLException - 如果读取位置被定位在无效位置,或者流中不存在更多值。
public int readInt()
throws SQLException
int 的形式获取此
SQLInputImpl 对象中的下一个属性。
此方法不执行类型安全检查来确定返回类型是否为期望类型;该职责已委托给 SQLData 实现定义的 UDT 映射。
SQLInput 中的
readInt
SQLInputImpl 对象中的下一个属性;如果值为
SQL NULL,则返回
null
SQLException - 如果读取位置被定位在无效位置,或者流中不存在更多值。
public long readLong()
throws SQLException
long 的形式获取此
SQLInputImpl 对象中的下一个属性。
此方法不执行类型安全检查来确定返回类型是否为期望类型;该职责已委托给 SQLData 实现定义的 UDT 映射。
SQLInput 中的
readLong
SQLInputImpl 对象中的下一个属性;如果值为
SQL NULL,则返回
null
SQLException - 如果读取位置被定位在无效位置,或者流中不存在更多值。
public float readFloat()
throws SQLException
float 的形式获取此
SQLInputImpl 对象中的下一个属性。
此方法不执行类型安全检查来确定返回类型是否为期望类型;该职责已委托给 SQLData 实现定义的 UDT 映射。
SQLInput 中的
readFloat
SQLInputImpl 对象中的下一个属性;如果值为
SQL NULL,则返回
null
SQLException - 如果读取位置被定位在无效位置,或者流中不存在更多值。
public double readDouble()
throws SQLException
double 的形式获取此
SQLInputImpl 对象中的下一个属性。
此方法不执行类型安全检查来确定返回类型是否为期望类型;该职责已委托给 SQLData 实现定义的 UDT 映射。
SQLInput 中的
readDouble
SQLInputImpl 对象中的下一个属性;如果值为
SQL NULL,则返回
null
SQLException - 如果读取位置被定位在无效位置,或者流中不存在更多值。
public BigDecimal readBigDecimal()
throws SQLException
java.math.BigDecimal 的形式获取此
SQLInputImpl 对象中的下一个属性。
此方法不执行类型安全检查来确定返回类型是否为期望类型;该职责已委托给 SQLData 实现定义的 UDT 映射。
SQLInput 中的
readBigDecimal
SQLInputImpl 对象中的下一个属性;如果值为
SQL NULL,则返回
null
SQLException - 如果读取位置被定位在无效位置,或者流中不存在更多值。
public byte[] readBytes()
throws SQLException
SQLInputImpl 对象中的下一个属性。
此方法不执行类型安全检查来确定返回类型是否为期望类型;该职责已委托给 SQLData 实现定义的 UDT 映射。
SQLInput 中的
readBytes
SQLInputImpl 对象中的下一个属性;如果值为
SQL NULL,则返回
null
SQLException - 如果读取位置被定位在无效位置,或者流中不存在更多值。
public Date readDate()
throws SQLException
java.sql.Date 对象的形式获取此
SQLInputImpl 中的下一个属性。
此方法不执行类型安全检查来确定返回类型是否为期望类型;该职责已委托给 SQLData 实现定义的 UDT 映射。
SQLInput 中的
readDate
SQLInputImpl 对象中的下一个属性;如果值为
SQL NULL,则返回
null
SQLException - 如果读取位置被定位在无效位置,或者流中不存在更多值。
public Time readTime()
throws SQLException
java.sql.Time 对象的形式获取此
SQLInputImpl 对象中的下一个属性。
此方法不执行类型安全检查来确定返回类型是否为期望类型;该职责已委托给 SQLData 实现实现的 UDT 映射。
SQLInput 中的
readTime
SQL NULL,则返回
null
SQLException - 如果读取位置被定位在无效位置,或者流中不存在更多值。
public Timestamp readTimestamp()
throws SQLException
java.sql.Timestamp 对象的形式获取此
SQLInputImpl 对象中的下一个属性。
SQLInput 中的
readTimestamp
SQL NULL,则返回
null
SQLException - 如果读取位置被定位在无效位置,或者流中不存在更多值。
public Reader readCharacterStream()
throws SQLException
SQLInputImpl 对象中的下一个属性。
此方法不执行类型安全检查来确定返回类型是否为期望类型;该职责已委托给 SQLData 实现实现的 UDT 映射。
SQLInput 中的
readCharacterStream
SQL NULL,则返回
null
SQLException - 如果读取位置被定位在无效位置,或者流中不存在更多值。
public InputStream readAsciiStream()
throws SQLException
SQLInputImpl 对象中的下一个属性。
此方法不执行类型安全检查来确定返回类型是否为期望类型;该职责已委托给 SQLData 实现实现的 UDT 映射。
SQLInput 中的
readAsciiStream
SQL NULL,则返回
null
SQLException - 如果读取位置被定位在无效位置,或者流中不存在更多值。
public InputStream readBinaryStream()
throws SQLException
SQLInputImpl 对象中的下一个属性。
此方法不执行类型安全检查来确定返回类型是否为期望类型;该职责已委托给 SQLData 实现实现的 UDT 映射。
SQLInput 中的
readBinaryStream
SQL NULL,则返回
null
SQLException - 如果读取位置被定位在无效位置,或者流中不存在更多值。
public Object readObject()
throws SQLException
Object 的形式获取此
SQLInputImpl 对象的头部值。如果不存在自定义映射关系,则返回对象的实际类型由 SQL 类型到 Java 编程语言中类型的默认映射关系确定;如果存在自定义映射关系,则返回对象的类型由此流的类型映射确定。
在将流传递给应用程序之前,启用 JDBC 技术的驱动程序在流中注册类型映射表。
当流头部中的数据为 SQL NULL 时,此方法返回 null。如果数据是具有自定义映射关系的 SQL 结构类型或 distinct 类型,则此方法确定位于流头部的数据的 SQL 类型,构造适当类的对象,并对该对象调用 SQLData.readSQL 方法。然后,readSQL 方法调用适当的 SQLInputImpl.readXXX 方法从流获取属性值。
SQLInput 中的
readObject
Object 的形式返回流头部的值;如果值为 SQL
NULL,则返回
null
SQLException - 如果读取位置被定位在无效位置,或者流中不存在更多值
public Ref readRef()
throws SQLException
Ref 对象的形式获取此
SQLInputImpl 对象的头部值。
SQLInput 中的
readRef
REF 值的
Ref 对象;如果值为
SQL NULL,则返回
null
SQLException - 如果读取位置被定位在无效位置,或者流中不存在更多值。
public Blob readBlob()
throws SQLException
Blob 对象的形式获取此
SQLInputImpl 对象头部的
BLOB 值。
此方法不执行类型安全检查来确定返回类型是否为期望类型;该职责已委托给 SQLData 实现实现的 UDT 映射。
SQLInput 中的
readBlob
BLOB 值的
Blob 对象;如果值为
SQL NULL,则返回
null
SQLException - 如果读取位置被定位在无效位置,或者流中不存在更多值。
public Clob readClob()
throws SQLException
Clob 对象的形式获取此
SQLInputImpl 对象头部的
CLOB 值。
此方法不执行类型安全检查来确定返回类型是否为期望类型;该职责已委托给 SQLData 实现实现的 UDT 映射。
SQLInput 中的
readClob
CLOB 值的
Clob 对象;如果值为
SQL NULL,则返回
null
SQLException - 如果读取位置被定位在无效位置,或者流中不存在更多值。
public Array readArray()
throws SQLException
ARRAY 值并以 Java 编程语言中
Array 对象的形式返回。
此方法不执行类型安全检查来确定返回类型是否为期望类型;该职责已委托给 SQLData 实现实现的 UDT 映射。
SQLInput 中的
readArray
ARRAY 值的
Array 对象;如果值为
SQL NULL,则返回
null
SQLException - 如果读取位置被定位在无效位置,或者流中不存在更多值。
public boolean wasNull()
throws SQLException
SQLInputImpl 对象读取的上一个值是否为
null。
SQLInput 中的
wasNull
null,则返回
true;否则返回
false;默认情况下它将返回 false
SQLException - 如果在确定上一次读取的值是否为
null 值时发生错误。
public URL readURL()
throws SQLException
DATALINK 值并以 Java 编程语言中
URL 对象的形式返回。
此方法不执行类型安全检查来确定返回类型是否为期望类型;该职责已委托给 SQLData 实现的 UDT 映射。
SQLInput 中的
readURL
DATALINK 值的
URL 对象;如果值为
SQL NULL,则返回
null
SQLException - 如果读取位置被定位在无效位置,或者流中不存在更多值。
public NClob readNClob()
throws SQLException
NCLOB 值并以 Java 编程语言中
Clob 对象的形式返回。
SQLInput 中的
readNClob
NClob 对象,表示位于流头部的 SQL
NCLOB 值的数据;如果读取的值为 SQL
NULL,则返回
null
SQLException - 如果发生数据库访问错误
public String readNString()
throws SQLException
String 的形式返回。访问
NCHAR、
NVARCHAR 和
LONGNVARCHAR 列时使用该方法。
SQLInput 中的
readNString
NULL,则返回
null
SQLException - 如果发生数据库访问错误
public SQLXML readSQLXML()
throws SQLException
XML 值并以 Java 编程语言中
SQLXML 对象的形式返回。
SQLInput 中的
readSQLXML
SQLXML 对象,表示位于流头部的 SQL
XML 值的数据;如果读取的值为 SQL
NULL,则返回
null
SQLException - 如果发生数据库访问错误
public RowId readRowId()
throws SQLException
ROWID 值并以 Java 编程语言中
RowId 对象的形式返回。
SQLInput 中的
readRowId
RowId 对象,表示位于流头部的 SQL
ROWID 值的数据;如果读取的值为 SQL
NULL,则返回
null
SQLException - 如果发生数据库访问错误
|
JavaTM Platform Standard Ed. 6 |
|||||||||
| 上一个类 下一个类 | 框架 无框架 | |||||||||
| 摘要: 嵌套 | 字段 | 构造方法 | 方法 | 详细信息: 字段 | 构造方法 | 方法 | |||||||||
版权所有 2007 Sun Microsystems, Inc. 保留所有权利。 请遵守许可证条款。另请参阅文档重新分发政策。