Класс SerialClob
- java.lang.Object
-
- javax.sql.rowset.serial.SerialClob
- Все реализованные интерфейсы:
-
Serializable,Cloneable,Clob
public class SerialClob extends Object implements Clob, Serializable, Cloneable
Сериализованное отображение в языке программирования Java значения SQL CLOB.
Класс SerialClob предоставляет конструктор для создания экземпляра из объекта Clob. Обратите внимание, что объект Clob должен был перенести данные значения SQL CLOB на клиент перед созданием объекта SerialClob из него. Данные значения SQL CLOB могут быть материализованы на клиенте как поток Unicode-символов.
Методы SerialClob позволяют получить подстроку из объекта SerialClob или найти начало шаблона символов.
Безопасность потоков
Объект SerialClob не безопасен для использования несколькими одновременными потоками. Если SerialClob будет использоваться более чем одним потоком, доступ к SerialClob должен контролироваться соответствующей синхронизацией.
- С:
- 1.5
- См. также:
- Сериализованная форма
Конструкторы
| Конструктор | Описание |
|---|---|
SerialClob(char[] ch) | Создает объект |
SerialClob(Clob clob) | Создает объект |
Методы
| Модификатор и тип | Метод | Описание |
|---|---|---|
Object | clone() | Возвращает копию этого |
boolean | equals(Object obj) | Сравнивает этот SerialClob с указанным объектом. |
void | free() | Этот метод освобождает объект |
InputStream | getAsciiStream() | Возвращает значение |
Reader | getCharacterStream() | Возвращает данные этого объекта |
Reader | getCharacterStream(long pos,
long length) | Возвращает объект |
String | getSubString(long pos,
int length) | Возвращает копию подстроки, содержащейся в этом объекте |
int | hashCode() | Возвращает хэш-код для этого |
long | length() | Возвращает количество символов в массиве символов этого объекта |
long | position(String searchStr,
long start) | Возвращает позицию в этом объекте |
long | position(Clob searchStr,
long start) | Возвращает позицию в этом объекте |
OutputStream | setAsciiStream(long pos) | Возвращает поток для записи символов Ascii в значение |
Writer | setCharacterStream(long pos) | Возвращает поток для записи потока Unicode-символов в значение |
int | setString(long pos,
String str) | Записывает заданный Java-объект |
int | setString(long pos,
String str,
int offset,
int length) | Записывает |
void | truncate(long length) | Усекает значение |
Методы, объявленные в классе java.lang.Object
finalize, getClass, notify, notifyAll, toString, wait, wait, wait Конструкторы
SerialClob
public SerialClob(char[] ch)
throws SerialException,
SQLException Создает объект SerialClob , являющийся сериализованной версией заданного массива char.
Новый объект SerialClob инициализируется данными из массива char, что позволяет отключенным объектам RowSet установить сериализованный объект Clob без обращения к источнику данных.
- Параметры:
-
ch- массив char, представляющий объектClobдля сериализации - Исключения:
-
SerialException- если при сериализации произошла ошибка -
SQLException- если произошла ошибка SQL
SerialClob
public SerialClob(Clob clob)
throws SerialException,
SQLException Создает объект SerialClob , являющийся сериализованной версией заданного объекта Clob .
Новый объект SerialClob инициализируется данными из объекта Clob; следовательно, объект Clob должен был ранее перенести данные значения SQL CLOB на клиент из базы данных. В противном случае новый объект SerialClob не будет содержать данных.
Примечание: Объект Clob , переданный в этот конструктор, должен возвращать значения не null для методов Clob.getCharacterStream() и Clob.getAsciiStream. Этот конструктор SerialClob не может сериализовать объект Clob в этом случае и вызовет исключение SQLException .
- Параметры:
-
clob- объектClob, из которого должен быть создан этот объектSerialClob; не может быть null - Исключения:
-
SerialException- если при сериализации произошла ошибка -
SQLException- если произошла ошибка SQL при получении CLOB; если объектClobимеет значение null; или если любой из методовClob.getCharacterStream()иClob.getAsciiStream()объектаClobвозвращает null - См. также:
Clob
Методы
length
public long length()
throws SerialException Извлекает количество символов в массиве символов этого объекта SerialClob.
- Указано в:
-
lengthв интерфейсеClob - Возвращает:
- a
longуказывающий длину в символах массива символов этого объектаSerialClob - Исключения:
-
SerialException- если произошла ошибка; еслиfreeбыл ранее вызван для этого объекта
getCharacterStream
public Reader getCharacterStream()
throws SerialException Возвращает данные этого объекта SerialClob в виде потока символов Unicode. В отличие от связанного метода, getAsciiStream, поток создается независимо от того, был ли объект SerialClob создан с объектом Clob или массивом char.
- Указано в:
-
getCharacterStreamв интерфейсеClob - Возвращает:
- объект
java.io.Readerсодержащий данные этого объектаSerialClob - Исключения:
-
SerialException- если произошла ошибка; еслиfreeбыл ранее вызван для этого объекта - См. также:
Clob.setCharacterStream(long)
getAsciiStream
public InputStream getAsciiStream()
throws SerialException,
SQLException Извлекает значение CLOB, обозначенное этим объектом SerialClob, в виде ASCII-потока. Этот метод переадресует вызов getAsciiStream базовому объекту Clob в случае, если этот объект SerialClob создан с объектом Clob. Если этот объект SerialClob создан с массивом char, выбрасывается объект SerialException.
- Указано в:
-
getAsciiStreamв интерфейсеClob - Возвращает:
- объект
java.io.InputStreamсодержащий данные этого объектаSerialClob - Исключения:
-
SerialException- если этот объектSerialClobне был создан с объектомClob; еслиfreeбыл ранее вызван для этого объекта -
SQLException- если произошла ошибка доступа к значениюCLOB, представленному объектомClob, который использовался для создания этого объектаSerialClob - См. также:
Clob.setAsciiStream(long)
getSubString
public String getSubString(long pos,
int length)
throws SerialException Возвращает копию подстроки, содержащейся в этом объекте SerialClob, начиная с указанной позиции и продолжаясь на указанное количество символов.
- Указано в:
-
getSubStringв интерфейсеClob - Параметры:
-
pos- позиция первого символа в подстроке, которая должна быть скопирована; первый символ объектаSerialClobнаходится в позиции1; не должно быть меньше1, и сумма начальной позиции и длины подстроки должна быть меньше длины этого объектаSerialClob -
length- количество символов в подстроке, которая должна быть возвращена; не должно быть больше длины этого объектаSerialClob, и сумма начальной позиции и длины подстроки должна быть меньше длины этого объектаSerialClob - Возвращает:
- объект
Stringсодержащий подстроку этого объектаSerialClob, начинающуюся с указанной позиции и содержащую указанное количество последовательных символов - Исключения:
-
SerialException- если какой-либо из аргументов находится за границами; еслиfreeбыл ранее вызван для этого объекта
position
public long position(String searchStr,
long start)
throws SerialException,
SQLException Возвращает позицию в этом объекте SerialClob, где начинается данный объект String, начиная поиск с указанной позиции. Этот метод возвращает -1, если шаблон не найден.
- Указано в:
-
positionв интерфейсеClob - Параметры:
-
searchStr- объектString, который нужно найти -
start- позиция в этом объектеSerialClob, с которой нужно начать поиск; первая позиция -1; не должно быть меньше1и больше длины этого объектаSerialClob - Возвращает:
- позиция, в которой начинается данный объект
String, начиная поиск с указанной позиции;-1, если данный объектStringне найден или начальная позиция находится за границами; нумерация позиций для возвращаемого значения начинается с1 - Исключения:
-
SerialException- если методfreeбыл ранее вызван для этого объекта -
SQLException- если произошла ошибка доступа к значению Clob из базы данных.
position
public long position(Clob searchStr,
long start)
throws SerialException,
SQLException Возвращает позицию в этом объекте SerialClob, где начинается данная сигнатура Clob, начиная поиск с указанной позиции. Этот метод возвращает -1, если шаблон не найден.
- Указано в:
-
positionв интерфейсеClob - Параметры:
-
searchStr- объектClob, который нужно найти -
start- позиция в этом объектеSerialClob, с которой нужно начать поиск; первая позиция -1; не должно быть меньше1и больше длины этого объектаSerialClob - Возвращает:
- позиция, в которой начинается данный объект
Clobв этом объектеSerialClob, в указанной начальной позиции или после неё - Исключения:
-
SerialException- если произошла ошибка при поиске сигнатуры Clob; если методfreeбыл ранее вызван для этого объекта -
SQLException- если произошла ошибка доступа к значению Clob из базы данных
setString
public int setString(long pos,
String str)
throws SerialException Записывает данную строку Java String в значение CLOB, которое представляет этот объект SerialClob, в позиции pos.
- Указано в:
-
setStringв интерфейсеClob - Параметры:
-
pos- позиция, с которой нужно начать запись в значениеCLOB, которое представляет этот объектSerialClob; первая позиция -1; не должно быть меньше1и больше длины этого объектаSerialClob -
str- строка, которая должна быть записана в значениеCLOB, которое представляет этот объектSerialClob - Возвращает:
- количество записанных символов
- Исключения:
-
SerialException- если произошла ошибка доступа к значениюCLOB; если установлена неверная позиция; если установлено неверное значение смещения; если количество байтов для записи больше длиныSerialClob; или если объединенные значения длины и смещения больше, чем буфер Clob; если методfreeбыл ранее вызван для этого объекта
setString
public int setString(long pos,
String str,
int offset,
int length)
throws SerialException Записывает len символов str, начиная с символа offset, в значение CLOB, которое представляет этот объект Clob.
- Указано в:
-
setStringв интерфейсеClob - Параметры:
-
pos- позиция, с которой нужно начать запись в значениеCLOB, которое представляет этот объектSerialClob; первая позиция -1; не должно быть меньше1и больше длины этого объектаSerialClob -
str- строка, которая должна быть записана в значениеCLOB, которое представляет этот объектClob -
offset- смещение вstr, с которого нужно начать чтение символов для записи -
length- количество символов для записи - Возвращает:
- количество записанных символов
- Исключения:
-
SerialException- если произошла ошибка доступа к значениюCLOB; если установлена неверная позиция; если установлено неверное значение смещения; если количество байтов для записи больше длиныSerialClob; или если объединенные значения длины и смещения больше, чем буфер Clob; если методfreeбыл ранее вызван для этого объекта
setAsciiStream
public OutputStream setAsciiStream(long pos)
throws SerialException,
SQLException Извлекает поток, который будет использоваться для записи символов ASCII в значение CLOB, которое представляет этот объект SerialClob, начиная с позиции pos. Этот метод переадресует вызов setAsciiStream() базовому объекту Clob в случае, если этот объект SerialClob создан с объектом Clob. Если этот объект SerialClob создан с массивом char, выбрасывается объект SerialException.
- Указано в:
-
setAsciiStreamв интерфейсеClob - Параметры:
-
pos- позиция, с которой нужно начать запись в объектCLOB - Возвращает:
- поток, в который можно записывать символы с кодировкой ASCII
- Исключения:
-
SerialException- если SerialClob не создан с объектом Clob; если методfreeбыл ранее вызван для этого объекта -
SQLException- если произошла ошибка доступа к значениюCLOB - См. также:
getAsciiStream()
setCharacterStream
public Writer setCharacterStream(long pos)
throws SerialException,
SQLException Возвращает поток, который используется для записи потока символов Юникода в значение CLOB, которое представляет этот объект SerialClob, в позиции pos. Этот метод передает вызов setCharacterStream() базовому объекту Clob в случае, если этот объект SerialClob инициализирован объектом Clob. Если этот объект SerialClob инициализирован массивом char, выбрасывается исключение SerialException.
- Определено в:
-
setCharacterStreamв интерфейсеClob - Параметры:
-
pos- позиция, с которой начинается запись в значениеCLOB - Возвращает:
- поток, в который можно записывать символы, закодированные в Юникоде
- Исключения:
-
SerialException- если SerialClob не инициализирован объектом Clob; если методfreeбыл ранее вызван для этого объекта -
SQLException- если произошла ошибка при доступе к значениюCLOB - См. также:
getCharacterStream()
truncate
public void truncate(long length)
throws SerialException Усекает значение CLOB, которое представляет этот объект SerialClob, так, чтобы его длина составляла len символов.
Усечение объекта SerialClob до длины 0 приводит к очистке его содержимого.
- Определено в:
-
truncateв интерфейсеClob - Параметры:
-
length- длина, в байтах, до которой должно быть усечено значениеCLOB - Исключения:
-
SerialException- если произошла ошибка при доступе к значениюCLOB; если методfreeбыл ранее вызван для этого объекта
getCharacterStream
public Reader getCharacterStream(long pos,
long length)
throws SQLException Возвращает объект Reader, содержащий частичное значение SerialClob, начиная с символа, указанного pos, длиной в length символов.
- Определено в:
-
getCharacterStreamв интерфейсеClob - Параметры:
-
pos- смещение до первого символа частичного значения, которое нужно получить. Первый символ вSerialClobнаходится в позиции 1. -
length- длина в символах частичного значения, которое нужно получить. - Возвращает:
-
Readerчерез который можно прочитать частичное значениеSerialClob - Исключения:
-
SQLException- если pos меньше 1 или если pos больше числа символов вSerialClobили если pos + length больше числа символов вSerialClob; -
SerialException- если методfreeбыл ранее вызван для этого объекта - С:
- 1.6
free
public void free()
throws SQLException Этот метод освобождает объект SerialClob и высвобождает ресурсы, которые он удерживает. Объект становится недействительным после вызова метода free.
Если free вызывается несколько раз, последующие вызовы free обрабатываются как нетранзакции.
- Определено в:
-
freeв интерфейсеClob - Исключения:
-
SQLException- если произошла ошибка при высвобождении ресурсов Clob - С:
- 1.6
equals
public boolean equals(Object obj)
Сравнивает этот SerialClob с заданным объектом. Результат —
true, если и только если аргумент не null и является объектом
SerialClob, который представляет ту же последовательность символов, что и этот объект.
- Переопределяет:
-
equalsв классеObject - Параметры:
-
obj- Объект для сравнения с этимSerialClob - Возвращает:
-
trueесли заданный объект представляет эквивалентныйSerialClobэтому SerialClob,falseв противном случае - См. также:
-
Object.hashCode(),HashMap
hashCode
public int hashCode()
Возвращает хеш-код для этого SerialClob.
- Переопределяет:
-
hashCodeв классеObject - Возвращает:
- значение хеш-кода для этого объекта.
- См. также:
-
Object.equals(java.lang.Object),System.identityHashCode(java.lang.Object)
clone
public Object clone()
Возвращает копию этого SerialClob. Копия будет содержать ссылку на клонированный внутренний массив символов, а не на ссылку на исходный внутренний массив символов этого объекта SerialClob Объект Clob будет установлен в null.
© 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.
https://docs.oracle.com/en/java/javase/11/docs/api/java.sql.rowset/javax/sql/rowset/serial/SerialClob.html