|
JavaTM Platform Standard Ed. 6 |
|||||||||
上一个类 下一个类 | 框架 无框架 | |||||||||
摘要: 嵌套 | 字段 | 构造方法 | 方法 | 详细信息: 字段 | 构造方法 | 方法 |
java.lang.Object javax.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. 保留所有权利。 请遵守许可证条款。另请参阅文档重新分发政策。