public class SQLInputImpl extends Object implements SQLInput
SQLInputImpl
对象是包含作为UDT的属性的值的流的输入流。
当在具有自定义映射的SQL结构化或不同类型上调用方法getObject
时,此类由驱动程序使用; 程序员从不直接调用SQLInputImpl
方法。 他们在这里提供给那些写RowSet
实现的人的方便。
SQLInputImpl
类提供了一组ResultSet
吸气剂方法的读取器方法。 这些方法可以读取SQLInputImpl
对象中的值。
方法wasNull
用于确定最后读取的值是否为SQL NULL
。
当该方法getObject
被调用实现该接口的类的对象SQLData
,JDBC驱动程序调用该方法SQLData.getSQLType
确定UDT的SQL类型而定制映射。 驱动程序创建一个SQLInputImpl
的实例,并使用UDT的属性进行填充。 然后,驱动程序将输入流传SQLData.readSQL
方法SQLData.readSQL
,该方法又调用SQLInputImpl
读取器方法从输入流读取属性。
SQLData
Constructor and Description |
---|
SQLInputImpl(Object[] attributes, Map<String,类<?>> map)
创建一个
SQLInputImpl 对象,该对象使用给定的属性数组和给定的类型映射进行初始化。
|
Modifier and Type | Method and Description |
---|---|
Array |
readArray()
从流中读取SQL
ARRAY 值,并将其作为Java编程语言中的
Array 对象返回。
|
InputStream |
readAsciiStream()
将此
SQLInputImpl 对象中的下一个属性作为ASCII字符流返回。
|
BigDecimal |
readBigDecimal()
将此
SQLInputImpl 对象中的下一个属性
SQLInputImpl 为
java.math.BigDecimal 。
|
InputStream |
readBinaryStream()
将此
SQLInputImpl 对象中的下一个属性作为未解释的字节流返回。
|
Blob |
readBlob()
在
SQLInputImpl 对象的头部
BLOB 值,作为Java编程语言中的
Blob 对象。
|
boolean |
readBoolean()
获取此的下一个属性
SQLInputImpl 对象为
boolean 的Java编程语言。
|
byte |
readByte()
获取此的下一个属性
SQLInputImpl 对象为
byte 的Java编程语言。
|
byte[] |
readBytes()
将此
SQLInputImpl 对象中的下一个属性作为字节数组
SQLInputImpl 。
|
Reader |
readCharacterStream()
将此
SQLInputImpl 对象中的下一个属性作为Unicode字符流检索。
|
Clob |
readClob()
在
SQLInputImpl 对象的头部
CLOB 值作为Java编程语言中的
Clob 对象。
|
Date |
readDate()
获取此的下一个属性
SQLInputImpl 为
java.sql.Date 的对象。
|
double |
readDouble()
获取此的下一个属性
SQLInputImpl 对象为
double 的Java编程语言。
|
float |
readFloat()
获取此的下一个属性
SQLInputImpl 对象为
float 的Java编程语言。
|
int |
readInt()
获取此的下一个属性
SQLInputImpl 对象为
int 的Java编程语言。
|
long |
readLong()
获取此的下一个属性
SQLInputImpl 对象为
long 的Java编程语言。
|
NClob |
readNClob()
从流中读取SQL
NCLOB 值,并将其作为Java编程语言中的
Clob 对象返回。
|
String |
readNString()
读取流中的下一个属性,并将其作为Java编程语言中的
String 返回。
|
Object |
readObject()
以
SQLInputImpl 对象的头部的
Object 获取Java编程语言中的Object的值。
|
Ref |
readRef()
以该Java编程语言的
SQLInputImpl 对象的形式
Ref 此
SQLInputImpl 对象的头部的值。
|
RowId |
readRowId()
从流中读取SQL
ROWID 值,并将其作为Java编程语言中的
RowId 对象返回。
|
short |
readShort()
获取此的下一个属性
SQLInputImpl 对象为
short 的Java编程语言。
|
SQLXML |
readSQLXML()
从流中读取SQL
XML 值,并将其作为Java编程语言中的
SQLXML 对象返回。
|
String |
readString()
获取此的下一个属性
SQLInputImpl 对象为
String 的Java编程语言。
|
Time |
readTime()
将此
SQLInputImpl 对象中的下一个属性
SQLInputImpl 为
java.sql.Time 对象。
|
Timestamp |
readTimestamp()
将此
SQLInputImpl 对象中的下一个属性
SQLInputImpl 为
java.sql.Timestamp 对象。
|
URL |
readURL()
从流中读取SQL
DATALINK 值,并将其作为Java编程语言中的
URL 对象返回。
|
boolean |
wasNull()
确定从此
SQLInputImpl 对象读取的最后一个值是否为
null 。
|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
readObject
public SQLInputImpl(Object[] attributes, Map<String,类<?>> map) throws SQLException
SQLInputImpl
对象,该对象使用给定的属性数组和给定的类型映射进行初始化。
如果任何属性是一个UDT在类型映射中的条目,其名称是,则该属性将根据相应的映射SQLData
实现。
attributes
- 一个Object
实例的数组,其中每个元素都是UDT的属性。
数组中属性的顺序与UDT定义中定义属性的顺序相同。
map
- 一个
java.util.Map
零个或多个条目的
java.util.Map
对象,其中每个条目包括1)
String
给出UDT的完全限定名称; 2)
类
实现的
SQLData
对象,定义如何映射UDT
SQLException
- 如果
attributes
或
map
是
null
价值
public String readString() throws SQLException
SQLInputImpl
对象为String
的Java编程语言。
此方法不执行类型安全检查以确定返回的类型是否为预期类型; 这个责任被委托给由SQLData
实现定义的UDT映射。
readString
在界面
SQLInput
SQLInputImpl
对象的下一个属性;
如果值为SQL NULL
,返回null
SQLException
- 如果读取位置位于无效位置,或者流中没有其他值。
public boolean readBoolean() throws SQLException
SQLInputImpl
对象为boolean
的Java编程语言。
此方法不执行类型安全检查以确定返回的类型是否为预期类型; 这个责任被委托给由SQLData
实现定义的UDT映射。
readBoolean
在界面
SQLInput
SQLInputImpl
对象的下一个属性;
如果是SQL NULL
,返回null
SQLException
- 如果读取位置位于无效位置,或者流中没有更多值。
public byte readByte() throws SQLException
SQLInputImpl
对象为byte
的Java编程语言。
此方法不执行类型安全检查以确定返回的类型是否为预期类型; 这个责任被委托给由SQLData
实现定义的UDT映射。
readByte
在界面
SQLInput
SQLInputImpl
对象的下一个属性;
如果是SQL NULL
,返回null
SQLException
- 如果读取位置位于无效位置,或者流中没有其他值
public short readShort() throws SQLException
SQLInputImpl
对象为short
的Java编程语言。
此方法不执行类型安全检查以确定返回的类型是否为预期类型; 这个责任被委托给由SQLData
实现定义的UDT映射。
readShort
在界面
SQLInput
SQLInputImpl
对象的下一个属性;
如果是SQL NULL
,返回null
SQLException
- 如果读取位置位于无效位置,或者流中没有更多值
public int readInt() throws SQLException
SQLInputImpl
对象中的下一个int
为Java编程语言中的int。
此方法不执行类型安全检查以确定返回的类型是否为预期类型; 这个责任被委托给由SQLData
实现定义的UDT映射。
readInt
在界面
SQLInput
SQLInputImpl
对象的下一个属性;
如果是SQL NULL
,返回null
SQLException
- 如果读取位置位于无效位置,或者流中没有更多值
public long readLong() throws SQLException
SQLInputImpl
对象为long
的Java编程语言。
此方法不执行类型安全检查以确定返回的类型是否为预期类型; 这个责任被委托给由SQLData
实现定义的UDT映射。
readLong
在界面
SQLInput
SQLInputImpl
对象的下一个属性;
如果是SQL NULL
,返回null
SQLException
- 如果读取位置位于无效位置,或者流中没有更多值
public float readFloat() throws SQLException
SQLInputImpl
对象为float
的Java编程语言。
此方法不执行类型安全检查以确定返回的类型是否为预期类型; 这个责任被委托给由SQLData
实现定义的UDT映射。
readFloat
在界面
SQLInput
SQLInputImpl
对象的下一个属性;
如果值为SQL NULL
,则返回null
SQLException
- 如果读取位置位于无效位置,或者流中没有更多值
public double readDouble() throws SQLException
SQLInputImpl
对象为double
的Java编程语言。
此方法不执行类型安全检查以确定返回的类型是否为预期类型; 这个责任被委托给由SQLData
实现定义的UDT映射。
readDouble
在界面
SQLInput
SQLInputImpl
对象的下一个属性;
如果值为SQL NULL
,则返回null
SQLException
- 如果读取位置位于无效位置,或者流中没有更多值
public BigDecimal readBigDecimal() throws SQLException
SQLInputImpl
对象中的下一个属性为java.math.BigDecimal
。
此方法不执行类型安全检查以确定返回的类型是否为预期类型; 这个责任被委托给由SQLData
实现定义的UDT映射。
readBigDecimal
在界面
SQLInput
SQLInputImpl
对象的下一个属性;
如果值为SQL NULL
,返回null
SQLException
- 如果读取位置位于无效位置,或者流中没有更多值
public byte[] readBytes() throws SQLException
SQLInputImpl
对象中的下一个属性作为字节数组SQLInputImpl
。
此方法不执行类型安全检查以确定返回的类型是否为预期类型; 这个责任被委托给由SQLData
实现定义的UDT映射。
readBytes
在界面
SQLInput
SQLInputImpl
对象的下一个属性;
如果值为SQL NULL
,返回null
SQLException
- 如果读取位置位于无效位置,或者流中没有更多值
public Date readDate() throws SQLException
SQLInputImpl
为java.sql.Date
对象。
此方法不执行类型安全检查以确定返回的类型是否为预期类型; 这个责任被委托给由SQLData
实现定义的UDT映射。
readDate
在界面
SQLInput
SQLInputImpl
对象的下一个属性;
如果值为SQL NULL
,返回null
SQLException
- 如果读取位置位于无效位置,或者流中没有更多值
public Time readTime() throws SQLException
SQLInputImpl
对象中的下一个属性SQLInputImpl
为java.sql.Time
对象。
此方法不执行类型安全检查,以确定是否返回的类型有这个责任交给了UDT映射为由实现所期望的类型SQLData
实施。
readTime
在界面
SQLInput
SQL NULL
,返回null
SQLException
- 如果读取位置位于无效位置;
或者如果流中没有其他值。
public Timestamp readTimestamp() throws SQLException
SQLInputImpl
对象中的下一个属性
SQLInputImpl
为
java.sql.Timestamp
对象。
readTimestamp
在界面
SQLInput
SQL NULL
,返回null
SQLException
- 如果读取位置位于无效位置;
或者如果流中没有其他值。
public Reader readCharacterStream() throws SQLException
SQLInputImpl
对象中的下一个属性作为Unicode字符流检索。
此方法不执行类型安全检查,以确定是否返回的类型有这个责任交给了UDT映射为由实现所期望的类型SQLData
实施。
readCharacterStream
在界面
SQLInput
SQL NULL
,返回null
SQLException
- 如果读取位置位于无效位置;
或者如果流中没有其他值。
public InputStream readAsciiStream() throws SQLException
SQLInputImpl
对象中的下一个属性作为ASCII字符流返回。
此方法不执行类型安全检查,以确定是否返回的类型有这个责任交给了UDT映射为由实现所期望的类型SQLData
实施。
readAsciiStream
在界面
SQLInput
SQL NULL
,返回null
SQLException
- 如果读取位置位于无效位置;
或者如果流中没有其他值。
public InputStream readBinaryStream() throws SQLException
SQLInputImpl
对象中的下一个属性返回为未解释的字节流。
此方法不执行类型安全检查,以确定是否返回的类型有这个责任交给了UDT映射为由实现所期望的类型SQLData
实施。
readBinaryStream
在界面
SQLInput
SQL NULL
,返回null
SQLException
- 如果读取位置位于无效位置;
或者如果流中没有其他值。
public Object readObject() throws SQLException
SQLInputImpl
对象的头部的Object
获取Java编程语言中的Object的值。
返回的对象的实际类型由SQL编程语言中的类型的默认映射确定,除非有自定义映射,在这种情况下,返回的对象的类型由此流的类型映射决定。
启用JDBC技术的驱动程序在将流传送到应用程序之前,先注册一个类型映射。
当流头的数据是SQL NULL
时,此方法返回null
。 如果基准是具有自定义映射的SQL结构或不同类型,则此方法确定流头上的基准的SQL类型,构造适当类的对象,并调用该对象上的方法SQLData.readSQL
。 然后, readSQL
方法调用相应的SQLInputImpl.readXXX
方法从流中检索属性值。
readObject
在界面
SQLInput
Object
在Java编程语言;
null
如果值为SQL NULL
SQLException
- 如果读取位置位于无效位置;
或者如果流中没有其他值。
public Ref readRef() throws SQLException
SQLInputImpl
对象作为
Ref
对象在Java编程语言中检索该值。
readRef
在界面
SQLInput
Ref
对象,表示流的头部的SQL REF
值;
如果值为SQL NULL
返回null
SQLException
- 如果读取位置位于无效位置;
或者如果流中没有其他值。
public Blob readBlob() throws SQLException
SQLInputImpl
对象的头部BLOB
值,作为Java编程语言中的Blob
对象。
此方法不执行类型安全检查,以确定是否返回的类型有这个责任交给了UDT映射为由实现所期望的类型SQLData
实施。
readBlob
在界面
SQLInput
Blob
对象,表示此流的头部的SQL BLOB
值;
如果是SQL NULL
,返回null
SQLException
- 如果读取位置位于无效位置;
或者如果流中没有其他值。
public Clob readClob() throws SQLException
SQLInputImpl
对象的头部CLOB
值作为Java编程语言中的Clob
对象。
此方法不执行类型安全检查,以确定是否返回的类型有这个责任交给了UDT映射为由实现所期望的类型SQLData
实施。
readClob
在界面
SQLInput
Clob
对象,表示流的头部的SQL CLOB
值;
如果值为SQL NULL
,返回null
SQLException
- 如果读取位置位于无效位置;
或者如果流中没有其他值。
public Array readArray() throws SQLException
ARRAY
值,并将其作为Java编程语言中的Array
对象返回。
此方法不执行类型安全检查,以确定是否返回的类型有这个责任交给了UDT映射为由实现所期望的类型SQLData
实施。
readArray
在界面
SQLInput
Array
对象,表示流头部的SQL ARRAY
值;
*如果值为SQL NULL
,返回null
SQLException
- 如果读取位置位于无效位置;
或者如果流中没有其他值。
public boolean wasNull() throws SQLException
SQLInputImpl
对象读取的最后一个值是否为
null
。
wasNull
在界面
SQLInput
true
如果最近读取的SQL值是null
;
否则, false
;
默认情况下将返回false
SQLException
- 如果发生错误,确定最后读取的
null
值;
public URL readURL() throws SQLException
DATALINK
值,并将其作为Java编程语言中的URL
对象返回。
此方法不执行类型安全检查,以确定是否返回的类型有这个责任交给了UDT映射为由实现所期望的类型SQLData
实施。
readURL
在界面
SQLInput
URL
对象,表示流头部的SQL DATALINK
值;
*如果值为SQL NULL
,返回null
SQLException
- 如果读取位置位于无效位置;
或者如果流中没有其他值。
public NClob readNClob() throws SQLException
NCLOB
值,并将其作为Java编程语言中的
Clob
对象返回。
readNClob
在界面
SQLInput
NCLOB
值的NClob
对象;
null
如果读取的值是SQL NULL
SQLException
- 如果发生数据库访问错误
public String readNString() throws SQLException
String
返回。
访问时,它适用于使用NCHAR
, NVARCHAR
和LONGNVARCHAR
列。
readNString
在界面
SQLInput
NULL
,则返回null
SQLException
- 如果发生数据库访问错误
public SQLXML readSQLXML() throws SQLException
XML
值,并将其作为Java编程语言中的
SQLXML
对象返回。
readSQLXML
在界面
SQLInput
SQLXML
数据头的SQL XML
值的SQLXML
对象;
null
如果读取的值是SQL NULL
SQLException
- 如果发生数据库访问错误
public RowId readRowId() throws SQLException
ROWID
值,并将其作为Java编程语言中的
RowId
对象返回。
readRowId
在接口
SQLInput
RowId
对象,表示数据头的SQL ROWID
值;
null
如果读取的值是SQL NULL
SQLException
- 如果发生数据库访问错误