Класс SQLOutputImpl
- java.lang.Object
-
- javax.sql.rowset.serial.SQLOutputImpl
- Все реализованные интерфейсы:
- SQLOutput
public class SQLOutputImpl extends Object implements SQLOutput
Поток вывода для записи атрибутов пользовательского типа данных (UDT) с пользовательским отображением обратно в базу данных. Драйвер использует этот интерфейс внутри, и его методы никогда не вызываются программистом приложения напрямую.
Когда приложение вызывает метод PreparedStatement.setObject, драйвер проверяет, является ли значение, которое нужно записать, UDT с пользовательским отображением. Если да, в карте типов будет запись, содержащая объект Class для класса, который реализует SQLData для этого UDT. Если значение, которое нужно записать, является экземпляром SQLData, драйвер создаст экземпляр SQLOutputImpl и передаст его в метод SQLData.writeSQL. Метод writeSQL в свою очередь вызовет соответствующие методы SQLOutputImpl.writeXXX для записи данных из объекта SQLData в поток вывода SQLOutputImpl как представление SQL пользовательского типа данных.
Конструкторы
| Конструктор и описание |
|---|
SQLOutputImpl(Vector<?> attributes,
Map<String,?> map) Создаёт новый объект |
Методы
| Модификатор и тип | Метод и описание |
|---|---|
void |
writeArray(Array x) Записывает объект |
void |
writeAsciiStream(InputStream x) Записывает поток ASCII-символов в этот объект |
void |
writeBigDecimal(BigDecimal x) Записывает объект |
void |
writeBinaryStream(InputStream x) Записывает поток неинтерпретируемых байтов в этот объект |
void |
writeBlob(Blob x) Записывает объект |
void |
writeBoolean(boolean x) Записывает |
void |
writeByte(byte x) Записывает |
void |
writeBytes(byte[] x) Записывает массив |
void |
writeCharacterStream(Reader x) Записывает поток Unicode-символов в этот объект |
void |
writeClob(Clob x) Записывает объект |
void |
writeDate(Date x) Записывает объект |
void |
writeDouble(double x) Записывает |
void |
writeFloat(float x) Записывает |
void |
writeInt(int x) Записывает |
void |
writeLong(long x) Записывает |
void |
writeNClob(NClob x) Записывает значение SQL |
void |
writeNString(String x) Записывает следующий атрибут в поток как |
void |
writeObject(SQLData x) Записывает в поток данные, содержащиеся в данном объекте |
void |
writeRef(Ref x) Записывает объект |
void |
writeRowId(RowId x) Записывает значение SQL |
void |
writeShort(short x) Записывает |
void |
writeSQLXML(SQLXML x) Записывает значение SQL |
void |
writeString(String x) Записывает |
void |
writeStruct(Struct x) Записывает объект |
void |
writeTime(Time x) Записывает объект |
void |
writeTimestamp(Timestamp x) Записывает объект |
void |
writeURL(URL url) Записывает объект |
Методы, унаследованные от класса java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait Методы, унаследованные от интерфейса java.sql.SQLOutput
writeObject Конструкторы
SQLOutputImpl
public SQLOutputImpl(Vector<?> attributes,
Map<String,?> map)
throws SQLException Создаёт новый объект SQLOutputImpl , инициализированный заданным вектором атрибутов и картой типов. Драйвер будет использовать карту типов для определения, какой метод SQLData.writeSQL вызывать. Этот метод затем вызовет соответствующие методы записи атрибутов SQLOutputImpl в нужном порядке и таким образом запишет атрибуты в новый поток вывода.
- Параметры:
-
attributes- объектVector, содержащий атрибуты UDT, которые должны быть отображены на один или несколько объектов языка программирования Java -
map- объектjava.util.Map, содержащий ноль или более записей, при этом каждая запись состоит из 1)String, содержащего полное квалифицированное имя UDT, и 2) объектаClassдля реализацииSQLData, определяющего способ отображения UDT - Исключения:
-
SQLException- еслиattributesилиmapимеют значениеnull
Методы
writeString
public void writeString(String x)
throws SQLException Записывает строку String языка программирования Java в этот объект SQLOutputImpl . Драйвер преобразует её в SQL CHAR, VARCHAR, или LONGVARCHAR перед возвращением в базу данных.
- Определено в:
-
writeStringв интерфейсеSQLOutput - Параметры:
-
x- значение, передаваемое в базу данных - Исключения:
-
SQLException- если объектSQLOutputImplиспользуется объектомSQLData, пытающимся записать значения атрибутов UDT в базу данных.
writeBoolean
public void writeBoolean(boolean x)
throws SQLException Записывает логическое значение boolean языка программирования Java в этот объект SQLOutputImpl . Драйвер преобразует его в SQL BIT перед возвращением в базу данных.
- Определено в:
-
writeBooleanв интерфейсеSQLOutput - Параметры:
-
x- значение, передаваемое в базу данных - Исключения:
-
SQLException- если объектSQLOutputImplиспользуется объектомSQLData, пытающимся записать значения атрибутов UDT в базу данных.
writeByte
public void writeByte(byte x)
throws SQLException Записывает байтовое значение byte языка программирования Java в этот объект SQLOutputImpl . Драйвер преобразует его в SQL BIT перед возвращением в базу данных.
- Определено в:
-
writeByteв интерфейсеSQLOutput - Параметры:
-
x- значение, передаваемое в базу данных - Исключения:
-
SQLException- если объектSQLOutputImplиспользуется объектомSQLData, пытающимся записать значения атрибутов UDT в базу данных.
writeShort
public void writeShort(short x)
throws SQLException Записывает короткое целое значение short языка программирования Java в этот объект SQLOutputImpl . Драйвер преобразует его в SQL SMALLINT перед возвращением в базу данных.
- Определено в:
-
writeShortв интерфейсеSQLOutput - Параметры:
-
x- значение, передаваемое в базу данных - Исключения:
-
SQLException- если объектSQLOutputImplиспользуется объектомSQLData, пытающимся записать значения атрибутов UDT в базу данных.
writeInt
public void writeInt(int x)
throws SQLException Записывает целое число int языка программирования Java в этот объект SQLOutputImpl . Драйвер преобразует его в SQL INTEGER перед возвращением в базу данных.
- Определено в:
-
writeIntв интерфейсеSQLOutput - Параметры:
-
x- значение, передаваемое в базу данных - Исключения:
-
SQLException- если объектSQLOutputImplиспользуется объектомSQLData, пытающимся записать значения атрибутов UDT в базу данных.
writeLong
public void writeLong(long x)
throws SQLException Записывает длинное целое число long языка программирования Java в этот объект SQLOutputImpl . Драйвер преобразует его в SQL BIGINT перед возвращением в базу данных.
- Определено в:
-
writeLongв интерфейсеSQLOutput - Параметры:
-
x- значение, передаваемое в базу данных - Исключения:
-
SQLException- если объектSQLOutputImplиспользуется объектомSQLData, пытающимся записать значения атрибутов UDT в базу данных.
writeFloat
public void writeFloat(float x)
throws SQLException Записывает число с плавающей точкой float языка программирования Java в этот объект SQLOutputImpl . Драйвер преобразует его в SQL REAL перед возвращением в базу данных.
- Определено в:
-
writeFloatв интерфейсеSQLOutput - Параметры:
-
x- значение, передаваемое в базу данных - Исключения:
-
SQLException- если объектSQLOutputImplиспользуется объектомSQLData, пытающимся записать значения атрибутов UDT в базу данных.
writeDouble
public void writeDouble(double x)
throws SQLException Записывает двойное число double языка программирования Java в этот объект SQLOutputImpl . Драйвер преобразует его в SQL DOUBLE перед возвращением в базу данных.
- Определено в:
-
writeDoubleв интерфейсеSQLOutput - Параметры:
-
x- значение, передаваемое в базу данных - Исключения:
-
SQLException- если объектSQLOutputImplиспользуется объектомSQLData, пытающимся записать значения атрибутов UDT в базу данных.
writeBigDecimal
public void writeBigDecimal(BigDecimal x)
throws SQLException Записывает объект java.math.BigDecimal языка программирования Java в этот объект SQLOutputImpl . Драйвер преобразует его в SQL NUMERIC перед возвращением в базу данных.
- Определено в:
-
writeBigDecimalв интерфейсеSQLOutput - Параметры:
-
x- значение, передаваемое в базу данных - Исключения:
-
SQLException- если объектSQLOutputImplиспользуется объектомSQLData, пытающимся записать значения атрибутов UDT в базу данных.
writeBytes
public void writeBytes(byte[] x)
throws SQLException Записывает массив байтов bytes языка программирования Java в этот объект SQLOutputImpl . Драйвер преобразует его в SQL VARBINARY или LONGVARBINARY перед возвращением в базу данных.
- Определено в:
-
writeBytesв интерфейсеSQLOutput - Параметры:
-
x- значение, передаваемое в базу данных - Исключения:
-
SQLException- если объектSQLOutputImplиспользуется объектомSQLData, пытающимся записать значения атрибутов UDT в базу данных.
writeDate
public void writeDate(Date x)
throws SQLException Записывает объект java.sql.Date языка программирования Java в этот объект SQLOutputImpl . Драйвер преобразует его в SQL DATE перед возвращением в базу данных.
- Определено в:
-
writeDateв интерфейсеSQLOutput - Параметры:
-
x- значение, передаваемое в базу данных - Исключения:
-
SQLException- если объектSQLOutputImplиспользуется объектомSQLData, пытающимся записать значения атрибутов UDT в базу данных.
writeTime
public void writeTime(Time x)
throws SQLException Записывает объект java.sql.Time языка программирования Java в этот объект SQLOutputImpl . Драйвер преобразует его в SQL TIME перед возвращением в базу данных.
- Определено в:
-
writeTimeв интерфейсеSQLOutput - Параметры:
-
x- значение, передаваемое в базу данных - Исключения:
-
SQLException- если объектSQLOutputImplиспользуется объектомSQLData, пытающимся записать значения атрибутов UDT в базу данных.
writeTimestamp
public void writeTimestamp(Timestamp x)
throws SQLException Записывает объект java.sql.Timestamp языка программирования Java в этот объект SQLOutputImpl . Драйвер преобразует его в SQL TIMESTAMP перед возвращением в базу данных.
- Определено в:
-
writeTimestampв интерфейсеSQLOutput - Параметры:
-
x- значение, передаваемое в базу данных - Исключения:
-
SQLException- если объектSQLOutputImplиспользуется объектомSQLData, пытающимся записать значения атрибутов UDT в базу данных.
writeCharacterStream
public void writeCharacterStream(Reader x)
throws SQLException Записывает поток символов Юникод в этот объект SQLOutputImpl . Драйвер выполнит все необходимые преобразования из Юникода в формат базы данных CHAR.
- Определено в:
-
writeCharacterStreamв интерфейсеSQLOutput - Параметры:
-
x- значение, передаваемое в базу данных - Исключения:
-
SQLException- если объектSQLOutputImplиспользуется объектомSQLData, пытающимся записать значения атрибутов UDT в базу данных.
writeAsciiStream
public void writeAsciiStream(InputStream x)
throws SQLException Записывает поток ASCII-символов в этот объект SQLOutputImpl . Драйвер выполнит все необходимые преобразования из ASCII в формат базы данных CHAR.
- Указано в:
-
writeAsciiStreamв интерфейсеSQLOutput - Параметры:
-
x- значение для передачи в базу данных - Исключения:
-
SQLException- если объектSQLOutputImplиспользуется объектомSQLDataдля записи атрибутов типа UDT в базу данных.
writeBinaryStream
public void writeBinaryStream(InputStream x)
throws SQLException Записывает поток неинтерпретируемых байтов в этот объект SQLOutputImpl.
- Указано в:
-
writeBinaryStreamв интерфейсеSQLOutput - Параметры:
-
x- значение для передачи в базу данных - Исключения:
-
SQLException- если объектSQLOutputImplиспользуется объектомSQLDataдля записи атрибутов типа UDT в базу данных.
writeObject
public void writeObject(SQLData x)
throws SQLException Записывает в поток данные, содержащиеся в заданном объекте SQLData. Если объект SQLData является null, этот метод записывает SQL NULL в поток. В противном случае, он вызывает метод SQLData.writeSQL заданного объекта, который записывает атрибуты объекта в поток.
Реализация метода SQLData.writeSQ вызывает соответствующие методы SQLOutputImpl.writeXXX для записи каждого атрибута объекта в порядке. Атрибуты должны быть прочитаны из потока ввода SQLInput и записаны в поток вывода SQLOutputImpl в том же порядке, в котором они были перечислены в SQL-определении пользовательского типа.
- Указано в:
-
writeObjectв интерфейсеSQLOutput - Параметры:
-
x- объект, представляющий данные SQL-структурированного или отличительного типа - Исключения:
-
SQLException- если объектSQLOutputImplиспользуется объектомSQLDataдля записи атрибутов типа UDT в базу данных.
writeRef
public void writeRef(Ref x)
throws SQLException Записывает объект Ref языка программирования Java в этот объект SQLOutputImpl. Драйвер преобразует его в сериализуемое значение SQL SerialRef REF перед возвратом в базу данных.
- Указано в:
-
writeRefв интерфейсеSQLOutput - Параметры:
-
x- объект, представляющий значение SQLREF - Исключения:
-
SQLException- если объектSQLOutputImplиспользуется объектомSQLDataдля записи атрибутов типа UDT в базу данных.
writeBlob
public void writeBlob(Blob x)
throws SQLException Записывает объект Blob языка программирования Java в этот объект SQLOutputImpl. Драйвер преобразует его в сериализуемое значение SQL SerialBlob BLOB перед возвратом в базу данных.
- Указано в:
-
writeBlobв интерфейсеSQLOutput - Параметры:
-
x- объект, представляющий значение SQLBLOB - Исключения:
-
SQLException- если объектSQLOutputImplиспользуется объектомSQLDataдля записи атрибутов типа UDT в базу данных.
writeClob
public void writeClob(Clob x)
throws SQLException Записывает объект Clob языка программирования Java в этот объект SQLOutputImpl. Драйвер преобразует его в сериализуемое значение SQL SerialClob CLOB перед возвратом в базу данных.
- Указано в:
-
writeClobв интерфейсеSQLOutput - Параметры:
-
x- объект, представляющий значение SQLCLOB - Исключения:
-
SQLException- если объектSQLOutputImplиспользуется объектомSQLDataдля записи атрибутов типа UDT в базу данных.
writeStruct
public void writeStruct(Struct x)
throws SQLException Записывает объект Struct языка программирования Java в этот объект SQLOutputImpl. Драйвер преобразует это значение в SQL-структурированный тип перед возвратом в базу данных.
Этот метод должен использоваться, когда SQL-структурированный тип был сопоставлен с объектом Struct в языке программирования Java (стандартное сопоставление). Метод writeObject должен использоваться, если SQL-структурированный тип был настроен на сопоставление с классом в языке программирования Java.
- Указано в:
-
writeStructв интерфейсеSQLOutput - Параметры:
-
x- объект, представляющий атрибуты SQL-структурированного типа - Исключения:
-
SQLException- если объектSQLOutputImplиспользуется объектомSQLDataдля записи атрибутов типа UDT в базу данных.
writeArray
public void writeArray(Array x)
throws SQLException Записывает объект Array языка программирования Java в этот объект SQLOutputImpl. Драйвер преобразует это значение в сериализуемое значение SQL SerialArray ARRAY перед возвратом в базу данных.
- Указано в:
-
writeArrayв интерфейсеSQLOutput - Параметры:
-
x- объект, представляющий значение SQLARRAY - Исключения:
-
SQLException- если объектSQLOutputImplиспользуется объектомSQLDataдля записи атрибутов типа UDT в базу данных.
writeURL
public void writeURL(URL url)
throws SQLException Записывает объект java.sql.Type.DATALINK языка программирования Java в этот объект SQLOutputImpl. Драйвер преобразует это значение в сериализуемое значение SQL SerialDatalink DATALINK перед возвратом в базу данных.
- Указано в:
-
writeURLв интерфейсеSQLOutput - Параметры:
-
url- объект, представляющий значение SQLDATALINK - Исключения:
-
SQLException- если объектSQLOutputImplиспользуется объектомSQLDataдля записи атрибутов типа UDT в базу данных.
writeNString
public void writeNString(String x)
throws SQLException Записывает следующий атрибут в поток как String на языке программирования Java. Драйвер преобразует его в значение SQL NCHAR или NVARCHAR или LONGNVARCHAR (в зависимости от размера аргумента по отношению к ограничениям драйвера на значения NVARCHAR), когда отправляет его в поток.
- Указано в:
-
writeNStringв интерфейсеSQLOutput - Параметры:
-
x- значение для передачи в базу данных - Исключения:
-
SQLException- если произошла ошибка доступа к базе данных - С:
- 1.6
writeNClob
public void writeNClob(NClob x)
throws SQLException Записывает значение SQL NCLOB в поток.
- Указано в:
-
writeNClobв интерфейсеSQLOutput - Параметры:
-
x- объектNClob, представляющий данные SQLNCLOB - Исключения:
-
SQLException- если произошла ошибка доступа к базе данных - С:
- 1.6
writeRowId
public void writeRowId(RowId x)
throws SQLException Записывает значение SQL ROWID в поток.
- Указано в:
-
writeRowIdв интерфейсеSQLOutput - Параметры:
-
x- объектRowId, представляющий данные SQLROWID - Исключения:
-
SQLException- если произошла ошибка доступа к базе данных - С:
- 1.6
writeSQLXML
public void writeSQLXML(SQLXML x)
throws SQLException Записывает значение SQL XML в поток.
- Указано в:
-
writeSQLXMLв интерфейсеSQLOutput - Параметры:
-
x- объектSQLXML, представляющий данные SQLXML - Исключения:
-
SQLException- если произошла ошибка доступа к базе данных - С:
- 1.6
© 1993, 2020, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.