java.lang.Object
javax.sql.rowset.serial.SQLOutputImpl
- 所有已实现的接口:
-
SQLOutput
用于将自定义映射的用户定义类型(UDT)的属性写回数据库的输出流。驱动程序在内部使用此接口,其方法永远不会被应用程序员直接调用。
当应用程序调用方法PreparedStatement.setObject时,驱动程序会检查要写入的值是否是具有自定义映射的UDT。如果是,则类型映射中将包含实现此UDT的SQLData的Class对象的条目。如果要写入的值是SQLData的实例,则驱动程序将创建一个SQLOutputImpl的实例并将其传递给方法SQLData.writeSQL。然后,方法writeSQL会调用适当的SQLOutputImpl.writeXXX方法,将SQLData对象中的数据写入SQLOutputImpl输出流,作为SQL用户定义类型的表示。
- 自从:
- 1.5
-
Constructor Summary
ConstructorsConstructorDescriptionSQLOutputImpl(Vector<?> attributes, Map<String, ?> map) 创建一个使用给定属性向量和类型映射初始化的新SQLOutputImpl对象。 -
Method Summary
Modifier and TypeMethodDescriptionvoidwriteArray(Array x) 将Java编程语言中的Array对象写入此SQLOutputImpl对象。void将ASCII字符流写入此SQLOutputImpl对象。void将Java编程语言中的java.math.BigDecimal对象写入此SQLOutputImpl对象。void将未解释的字节流写入此SQLOutputImpl对象。void将Java编程语言中的Blob对象写入此SQLOutputImpl对象。voidwriteBoolean(boolean x) 将Java编程语言中的boolean写入此SQLOutputImpl对象。voidwriteByte(byte x) 将Java编程语言中的byte写入此SQLOutputImpl对象。voidwriteBytes(byte[] x) 将Java编程语言中的bytes数组写入此SQLOutputImpl对象。void将Unicode字符流写入此SQLOutputImpl对象。void将Java编程语言中的Clob对象写入此SQLOutputImpl对象。void将Java编程语言中的java.sql.Date对象写入此SQLOutputImpl对象。voidwriteDouble(double x) 将Java编程语言中的double写入此SQLOutputImpl对象。voidwriteFloat(float x) 将Java编程语言中的float写入此SQLOutputImpl对象。voidwriteInt(int x) 将Java编程语言中的int写入此SQLOutputImpl对象。voidwriteLong(long x) 将Java编程语言中的long写入此SQLOutputImpl对象。voidwriteNClob(NClob x) 将SQLNCLOB值写入流中。void将下一个属性作为Java编程语言中的String写入流中。void将给定的SQLData对象中包含的数据写入流中。void将Java编程语言中的Ref对象写入此SQLOutputImpl对象。voidwriteRowId(RowId x) 将SQLROWID值写入流中。voidwriteShort(short x) 将Java编程语言中的short写入此SQLOutputImpl对象。void将SQLXML值写入流中。void将Java编程语言中的String写入此SQLOutputImpl对象。void将Java编程语言中的Struct对象写入此SQLOutputImpl对象。void将Java编程语言中的java.sql.Time对象写入此SQLOutputImpl对象。void将Java编程语言中的java.sql.Timestamp对象写入此SQLOutputImpl对象。void将Java编程语言中的java.sql.Type.DATALINK对象写入此SQLOutputImpl对象。Methods declared in class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods declared in interface java.sql.SQLOutput
writeObject
-
Constructor Details
-
SQLOutputImpl
创建一个使用给定属性向量和类型映射初始化的新SQLOutputImpl对象。驱动程序将使用类型映射来确定要调用哪个SQLData.writeSQL方法。然后,此方法将按顺序调用适当的SQLOutputImpl写入方法,从而将属性写入新的输出流。- 参数:
-
attributes- 包含要映射到Java编程语言中一个或多个对象的UDT属性的Vector对象 -
map- 包含零个或多个条目的java.util.Map对象,每个条目由1)给出UDT的完全限定名称的String和2)定义如何映射UDT的SQLData实现的Class对象组成 - 抛出:
-
SQLException- 如果attributes或map是null值
-
-
Method Details
-
writeString
将Java编程语言中的String写入此SQLOutputImpl对象。驱动程序在将其返回到数据库之前将其转换为SQLCHAR、VARCHAR或LONGVARCHAR。- 指定者:
-
writeString在接口SQLOutput - 参数:
-
x- 要传递给数据库的值 - 抛出:
-
SQLException- 如果SQLOutputImpl对象正在被尝试将UDT的属性值写入数据库的SQLData对象使用
-
writeBoolean
将Java编程语言中的boolean写入此SQLOutputImpl对象。驱动程序在将其返回到数据库之前将其转换为SQLBIT。- 指定者:
-
writeBoolean在接口SQLOutput - 参数:
-
x- 要传递给数据库的值 - 抛出:
-
SQLException- 如果SQLOutputImpl对象正在被尝试将UDT的属性值写入数据库的SQLData对象使用
-
writeByte
将Java编程语言中的byte写入此SQLOutputImpl对象。驱动程序在将其返回到数据库之前将其转换为SQLBIT。- 指定者:
-
writeByte在接口SQLOutput - 参数:
-
x- 要传递给数据库的值 - 抛出:
-
SQLException- 如果SQLOutputImpl对象正在被尝试将UDT的属性值写入数据库的SQLData对象使用
-
writeShort
将Java编程语言中的short写入此SQLOutputImpl对象。驱动程序在将其返回到数据库之前将其转换为SQLSMALLINT。- 指定者:
-
writeShort在接口SQLOutput - 参数:
-
x- 要传递给数据库的值 - 抛出:
-
SQLException- 如果SQLOutputImpl对象正在被尝试将UDT的属性值写入数据库的SQLData对象使用
-
writeInt
将Java编程语言中的int写入此SQLOutputImpl对象。驱动程序在将其返回到数据库之前将其转换为SQLINTEGER。- 指定者:
-
writeInt在接口SQLOutput - 参数:
-
x- 要传递给数据库的值 - 抛出:
-
SQLException- 如果SQLOutputImpl对象正在被尝试将UDT的属性值写入数据库的SQLData对象使用
-
writeLong
将Java编程语言中的long写入此SQLOutputImpl对象。驱动程序在将其返回到数据库之前将其转换为SQLBIGINT。- 指定者:
-
writeLong在接口SQLOutput - 参数:
-
x- 要传递给数据库的值 - 抛出:
-
SQLException- 如果SQLOutputImpl对象正在被尝试将UDT的属性值写入数据库的SQLData对象使用
-
writeFloat
将Java编程语言中的float写入此SQLOutputImpl对象。驱动程序在将其返回到数据库之前将其转换为SQLREAL。- 指定者:
-
writeFloat在接口SQLOutput - 参数:
-
x- 要传递到数据库的值 - 抛出:
-
SQLException- 如果SQLOutputImpl对象正在被尝试将UDT的属性值写入数据库的SQLData对象使用。
-
writeDouble
将Java编程语言中的double写入此SQLOutputImpl对象。驱动程序在将其返回到数据库之前将其转换为SQLDOUBLE。- 指定者:
-
writeDouble在接口SQLOutput - 参数:
-
x- 要传递到数据库的值 - 抛出:
-
SQLException- 如果SQLOutputImpl对象正在被尝试将UDT的属性值写入数据库的SQLData对象使用。
-
writeBigDecimal
将Java编程语言中的java.math.BigDecimal对象写入此SQLOutputImpl对象。驱动程序在将其返回到数据库之前将其转换为SQLNUMERIC。- 指定者:
-
writeBigDecimal在接口SQLOutput - 参数:
-
x- 要传递到数据库的值 - 抛出:
-
SQLException- 如果SQLOutputImpl对象正在被尝试将UDT的属性值写入数据库的SQLData对象使用。
-
writeBytes
将Java编程语言中的bytes数组写入此SQLOutputImpl对象。驱动程序在将其返回到数据库之前将其转换为SQLVARBINARY或LONGVARBINARY。- 指定者:
-
writeBytes在接口SQLOutput - 参数:
-
x- 要传递到数据库的值 - 抛出:
-
SQLException- 如果SQLOutputImpl对象正在被尝试将UDT的属性值写入数据库的SQLData对象使用。
-
writeDate
将Java编程语言中的java.sql.Date对象写入此SQLOutputImpl对象。驱动程序在将其返回到数据库之前将其转换为SQLDATE。- 指定者:
-
writeDate在接口SQLOutput - 参数:
-
x- 要传递到数据库的值 - 抛出:
-
SQLException- 如果SQLOutputImpl对象正在被尝试将UDT的属性值写入数据库的SQLData对象使用。
-
writeTime
将Java编程语言中的java.sql.Time对象写入此SQLOutputImpl对象。驱动程序在将其返回到数据库之前将其转换为SQLTIME。- 指定者:
-
writeTime在接口SQLOutput - 参数:
-
x- 要传递到数据库的值 - 抛出:
-
SQLException- 如果SQLOutputImpl对象正在被尝试将UDT的属性值写入数据库的SQLData对象使用。
-
writeTimestamp
将Java编程语言中的java.sql.Timestamp对象写入此SQLOutputImpl对象。驱动程序在将其返回到数据库之前将其转换为SQLTIMESTAMP。- 指定者:
-
writeTimestamp在接口SQLOutput - 参数:
-
x- 要传递到数据库的值 - 抛出:
-
SQLException- 如果SQLOutputImpl对象正在被尝试将UDT的属性值写入数据库的SQLData对象使用。
-
writeCharacterStream
将Unicode字符流写入此SQLOutputImpl对象。驱动程序将必要的Unicode到数据库CHAR格式的转换。- 指定者:
-
writeCharacterStream在接口SQLOutput - 参数:
-
x- 要传递到数据库的值 - 抛出:
-
SQLException- 如果SQLOutputImpl对象正在被尝试将UDT的属性值写入数据库的SQLData对象使用。
-
writeAsciiStream
将ASCII字符流写入此SQLOutputImpl对象。驱动程序将必要的ASCII到数据库CHAR格式的转换。- 指定者:
-
writeAsciiStream在接口SQLOutput - 参数:
-
x- 要传递到数据库的值 - 抛出:
-
SQLException- 如果SQLOutputImpl对象正在被尝试将UDT的属性值写入数据库的SQLData对象使用。
-
writeBinaryStream
将未解释的字节流写入此SQLOutputImpl对象。- 指定者:
-
writeBinaryStream在接口SQLOutput - 参数:
-
x- 要传递到数据库的值 - 抛出:
-
SQLException- 如果SQLOutputImpl对象正在被尝试将UDT的属性值写入数据库的SQLData对象使用。
-
writeObject
将给定的SQLData对象中包含的数据写入流。当SQLData对象为null时,此方法将在流中写入SQLNULL。否则,它调用给定对象的SQLData.writeSQL方法,该方法将对象的属性写入流。方法
SQLData.writeSQ的实现调用适当的SQLOutputImpl.writeXXX方法,以按顺序写入对象的每个属性。这些属性必须从SQLInput输入流中读取,并按照用户定义类型的SQL定义中列出的顺序写入到SQLOutputImpl输出流中。- 指定者:
-
writeObject在接口SQLOutput - 参数:
-
x- 表示SQL结构化或不同类型数据的对象 - 抛出:
-
SQLException- 如果SQLOutputImpl对象正在被尝试将UDT的属性值写入数据库的SQLData对象使用。
-
writeRef
将Java编程语言中的Ref对象写入此SQLOutputImpl对象。驱动程序在将其返回到数据库之前将其转换为可序列化的SerialRefSQLREF值。- 指定者:
-
writeRef在接口SQLOutput中 - 参数:
-
x- 表示 SQLREF值的对象 - 抛出:
-
SQLException- 如果SQLOutputImpl对象正在被SQLData对象使用,尝试将 UDT 的属性值写入数据库。
-
writeBlob
将 Java 编程语言中的Blob对象写入此SQLOutputImpl对象。驱动程序在将其返回到数据库之前将其转换为可序列化的SerialBlobSQLBLOB值。- 指定者:
-
writeBlob在接口SQLOutput中 - 参数:
-
x- 表示 SQLBLOB值的对象 - 抛出:
-
SQLException- 如果SQLOutputImpl对象正在被SQLData对象使用,尝试将 UDT 的属性值写入数据库。
-
writeClob
将 Java 编程语言中的Clob对象写入此SQLOutputImpl对象。驱动程序在将其返回到数据库之前将其转换为可序列化的SerialClobSQLCLOB值。- 指定者:
-
writeClob在接口SQLOutput中 - 参数:
-
x- 表示 SQLCLOB值的对象 - 抛出:
-
SQLException- 如果SQLOutputImpl对象正在被SQLData对象使用,尝试将 UDT 的属性值写入数据库。
-
writeStruct
将 Java 编程语言中的Struct对象写入此SQLOutputImpl对象。驱动程序在将其返回到数据库之前将此值转换为 SQL 结构化类型。当 SQL 结构化类型已映射到 Java 编程语言中的
Struct对象(标准映射)时,应使用此方法。如果 SQL 结构化类型已自定义映射到 Java 编程语言中的类,则应使用方法writeObject。- 指定者:
-
writeStruct在接口SQLOutput中 - 参数:
-
x- 表示 SQL 结构化类型的属性的对象 - 抛出:
-
SQLException- 如果SQLOutputImpl对象正在被SQLData对象使用,尝试将 UDT 的属性值写入数据库。
-
writeArray
将 Java 编程语言中的Array对象写入此SQLOutputImpl对象。驱动程序在将其返回到数据库之前将此值转换为可序列化的SerialArraySQLARRAY值。- 指定者:
-
writeArray在接口SQLOutput中 - 参数:
-
x- 表示 SQLARRAY值的对象 - 抛出:
-
SQLException- 如果SQLOutputImpl对象正在被SQLData对象使用,尝试将 UDT 的属性值写入数据库。
-
writeURL
将 Java 编程语言中的java.sql.Type.DATALINK对象写入此SQLOutputImpl对象。驱动程序在将其返回到数据库之前将此值转换为可序列化的SerialDatalinkSQLDATALINK值。- 指定者:
-
writeURL在接口SQLOutput中 - 参数:
-
url- 表示 SQLDATALINK值的对象 - 抛出:
-
SQLException- 如果SQLOutputImpl对象正在被SQLData对象使用,尝试将 UDT 的属性值写入数据库。
-
writeNString
将下一个属性作为 Java 编程语言中的String写入流。当驱动程序将其发送到流时,将其转换为 SQLNCHAR或NVARCHAR或LONGNVARCHAR值(取决于参数相对于驱动程序对NVARCHAR值的限制的大小)。- 指定者:
-
writeNString在接口SQLOutput中 - 参数:
-
x- 要传递给数据库的值 - 抛出:
-
SQLException- 如果发生数据库访问错误 - 自:
- 1.6
-
writeNClob
将 SQLNCLOB值写入流。- 指定者:
-
writeNClob在接口SQLOutput中 - 参数:
-
x- 表示 SQLNCLOB值数据的NClob对象 - 抛出:
-
SQLException- 如果发生数据库访问错误 - 自:
- 1.6
-
writeRowId
将 SQLROWID值写入流。- 指定者:
-
writeRowId在接口SQLOutput中 - 参数:
-
x- 表示 SQLROWID值数据的RowId对象 - 抛出:
-
SQLException- 如果发生数据库访问错误 - 自:
- 1.6
-
writeSQLXML
将 SQLXML值写入流。- 指定者:
-
writeSQLXML在接口SQLOutput中 - 参数:
-
x- 表示 SQLXML值数据的SQLXML对象 - 抛出:
-
SQLException- 如果发生数据库访问错误 - 自:
- 1.6
-