所有类


javax.sql.rowset.serial
类 SQLInputImpl

java.lang.Object
  继承者 javax.sql.rowset.serial.SQLInputImpl
所有已实现的接口:
SQLInput

public class SQLInputImpl
   
   
   
   
   
extends Object
implements SQLInput

用于自定义映射用户定义类型 (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 对象,并使用给定的属性数组和类型映射表进行初始化。
 
方法摘要
 ArrayreadArray()
          从流中读取 SQL ARRAY 值并以 Java 编程语言中 Array 对象的形式返回。
 InputStreamreadAsciiStream()
          以 ASCII 字符流的形式返回此 SQLInputImpl 对象中的下一个属性。
 BigDecimalreadBigDecimal()
          以 java.math.BigDecimal 的形式检索此 SQLInputImpl 对象中的下一个属性。
 InputStreamreadBinaryStream()
          以未解释字节流的形式返回此 SQLInputImpl 对象中的下一个属性。
 BlobreadBlob()
          以 Java 编程语言中 Blob 对象的形式检索此 SQLInputImpl 对象头部的 BLOB 值。
 booleanreadBoolean()
          以 Java 编程语言中 boolean 的形式检索此 SQLInputImpl 对象中的下一个属性。
 bytereadByte()
          以 Java 编程语言中 byte 的形式检索此 SQLInputImpl 对象中的下一个属性。
 byte[]readBytes()
          以字节数组的形式检索此 SQLInputImpl 对象中的下一个属性。
 ReaderreadCharacterStream()
          以 Unicode 字符流的形式检索此 SQLInputImpl 对象中的下一个属性。
 ClobreadClob()
          以 Java 编程语言中 Clob 对象的形式检索此 SQLInputImpl 对象头部的 CLOB 值。
 DatereadDate()
          以 java.sql.Date 对象的形式检索此 SQLInputImpl 中的下一个属性。
 doublereadDouble()
          以 Java 编程语言中 double 的形式检索此 SQLInputImpl 对象中的下一个属性。
 floatreadFloat()
          以 Java 编程语言中 float 的形式检索此 SQLInputImpl 对象中的下一个属性。
 intreadInt()
          以 Java 编程语言中 int 的形式检索此 SQLInputImpl 对象中的下一个属性。
 longreadLong()
          以 Java 编程语言中 long 的形式检索此 SQLInputImpl 对象中的下一个属性。
 ObjectreadObject()
          以 Java 编程语言中 Object 的形式检索此 SQLInputImpl 对象的头部值。
 RefreadRef()
          以 Java 编程语言中 Ref 对象的形式检索此 SQLInputImpl 对象的头部值。
 shortreadShort()
          以 Java 编程语言中 short 的形式检索此 SQLInputImpl 对象中的下一个属性。
 StringreadString()
          以 Java 编程语言中 String 的形式检索此 SQLInputImpl 对象中的下一个属性。
 TimereadTime()
          以 java.sql.Time 对象的形式检索此 SQLInputImpl 对象中的下一个属性。
 TimestampreadTimestamp()
          以 java.sql.Timestamp 对象的形式检索此 SQLInputImpl 对象中的下一个属性。
 URLreadURL()
          从流中读取 SQL DATALINK 值并以 Java 编程语言中 URL 对象的形式返回。
 booleanwasNull()
          确认从此 SQLInputImpl 对象读取的上一个值是否为 null
 
从类 java.lang.Object 继承的方法
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

构造方法详细信息

SQLInputImpl

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 - 如果 attributesmap 的值为 null
方法详细信息

readString

public String readString()
                  throws SQLException
以 Java 编程语言中 String 的形式检索此 SQLInputImpl 对象中的下一个属性。

此方法不执行类型安全检查来确定返回类型是否为期望类型;该职责已委托给 SQLData 实现定义的 UDT 映射。

指定者:
接口 SQLInput 中的 readString
返回:
SQLInputImpl 对象中的下一个属性;如果值为 SQL NULL,则返回 null
抛出:
SQLException - 如果读取位置被定位在无效位置,或者流中不存在更多值。

readBoolean

public boolean readBoolean()
                    throws SQLException
以 Java 编程语言中 boolean 的形式检索此 SQLInputImpl 对象中的下一个属性。

此方法不执行类型安全检查来确定返回类型是否为期望类型;该职责已委托给 SQLData 实现定义的 UDT 映射。

指定者:
接口 SQLInput 中的 readBoolean
返回:
SQLInputImpl 对象中的下一个属性;如果值为 SQL NULL,则返回 null
抛出:
SQLException - 如果读取位置被定位在无效位置,或者流中不存在更多值。

readByte

public byte readByte()
              throws SQLException
以 Java 编程语言中 byte 的形式检索此 SQLInputImpl 对象中的下一个属性。

此方法不执行类型安全检查来确定返回类型是否为期望类型;该职责已委托给 SQLData 实现定义的 UDT 映射。

指定者:
接口 SQLInput 中的 readByte
返回:
SQLInputImpl 对象中的下一个属性;如果值为 SQL NULL,则返回 null
抛出:
SQLException - 如果读取位置被定位在无效位置,或者流中不存在更多值。

readShort

public short readShort()
                throws SQLException
以 Java 编程语言中 short 的形式检索此 SQLInputImpl 对象中的下一个属性。

此方法不执行类型安全检查来确定返回类型是否为期望类型;该职责已委托给 SQLData 实现定义的 UDT 映射。

指定者:
接口 SQLInput 中的 readShort
返回:
SQLInputImpl 对象中的下一个属性;如果值为 SQL NULL,则返回 null
抛出:
SQLException - 如果读取位置被定位在无效位置,或者流中不存在更多值。

readInt

public int readInt()
            throws SQLException
以 Java 编程语言中 int 的形式检索此 SQLInputImpl 对象中的下一个属性。

此方法不执行类型安全检查来确定返回类型是否为期望类型;该职责已委托给 SQLData 实现定义的 UDT 映射。

指定者:
接口 SQLInput 中的 readInt
返回:
SQLInputImpl 对象中的下一个属性;如果值为 SQL NULL,则返回 null
抛出:
SQLException - 如果读取位置被定位在无效位置,或者流中不存在更多值。

readLong

public long readLong()
              throws SQLException
以 Java 编程语言中 long 的形式检索此 SQLInputImpl 对象中的下一个属性。

此方法不执行类型安全检查来确定返回类型是否为期望类型;该职责已委托给 SQLData 实现定义的 UDT 映射。

指定者:
接口 SQLInput 中的 readLong
返回:
SQLInputImpl 对象中的下一个属性;如果值为 SQL NULL,则返回 null
抛出:
SQLException - 如果读取位置被定位在无效位置,或者流中不存在更多值。

readFloat

public float readFloat()
                throws SQLException
以 Java 编程语言中 float 的形式检索此 SQLInputImpl 对象中的下一个属性。

此方法不执行类型安全检查来确定返回类型是否为期望类型;该职责已委托给 SQLData 实现定义的 UDT 映射。

指定者:
接口 SQLInput 中的 readFloat
返回:
SQLInputImpl 对象中的下一个属性;如果值为 SQL NULL,则返回 null
抛出:
SQLException - 如果读取位置被定位在无效位置,或者流中不存在更多值。