Класс SerialArray
- Все реализуемые интерфейсы:
Serializable, AutoCloseable, Cloneable, Array
public class SerialArray extends Object implements Array, Serializable, Cloneable
Array, представляющего собой отображение значения SQL ARRAY в языке программирования Java. Класс SerialArray предоставляет конструктор для создания экземпляра SerialArray из объекта Array, методы для получения базового типа и имени SQL для базового типа, а также методы для копирования всего объекта SerialArray или его части.
Примечание. Для корректной работы этого класса при необходимости должна быть доступна связь с источником данных, чтобы материализовать объект SQL Array (передать все его элементы на клиентский сервер). В настоящее время логические указатели на данные в источнике данных, такие как локаторы, не поддерживаются.
Потокобезопасность
Объект SerialArray небезопасно использовать из нескольких параллельных потоков. Если объект SerialArray используется более чем одним потоком, доступ к нему следует контролировать с помощью соответствующей синхронизации.- С версии:
- 1.5
- См. также:
Краткое описание конструкторов
| Конструктор | Описание |
|---|---|
SerialArray |
Создает новый объект SerialArray из заданного объекта Array. |
SerialArray |
Создает новый объект SerialArray из заданного объекта Array, используя заданную карту типов для пользовательского отображения каждого элемента, если элементы являются SQL UDT. |
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
Object |
clone() |
Возвращает клон этого объекта SerialArray. |
boolean |
equals |
Сравнивает этот объект SerialArray с указанным объектом. |
void |
free() |
Этот метод освобождает объект SerialArray и высвобождает удерживаемые им ресурсы. |
Object |
getArray() |
Возвращает новый массив, являющийся копией этого объекта SerialArray. |
Object |
getArray |
Возвращает новый массив, являющийся копией среза этого объекта SerialArray, начиная с элемента по заданному индексу и включающего заданное количество последовательных элементов. |
Object |
getArray |
Возвращает новый массив, являющийся копией среза этого объекта SerialArray, начиная с элемента по заданному индексу и включающего заданное количество последовательных элементов. |
Object |
getArray |
Возвращает новый массив, являющийся копией этого объекта SerialArray, используя заданную карту типов для пользовательского отображения каждого элемента, если элементы являются SQL UDT. |
int |
getBaseType() |
Получает тип SQL элементов этого объекта SerialArray. |
String |
getBaseTypeName() |
Получает имя типа, специфичное для СУБД, для элементов этого объекта SerialArray. |
ResultSet |
getResultSet() |
Получает объект ResultSet, содержащий все элементы значения ARRAY, представленного этим объектом SerialArray. |
ResultSet |
getResultSet |
Получает объект ResultSet, содержащий элементы подмассива, начинающегося с индекса index и включающего до count последовательных элементов. |
ResultSet |
getResultSet |
Получает результирующий набор, содержащий элементы подмассива, начинающегося с Получает объект ResultSet, содержащий подмассив элементов этого объекта SerialArray, начиная с индекса index и включающий до count последовательных элементов. |
ResultSet |
getResultSet |
Получает объект ResultSet, содержащий все элементы значения SQL ARRAY, представленного этим объектом SerialArray. |
int |
hashCode() |
Возвращает хеш-код этого объекта SerialArray. |
Методы, объявленные в классе Object
finalize, getClass, notify, notifyAll, toString, wait, wait, wait | Модификатор и тип | Метод | Описание |
|---|---|---|
protected void |
finalize() |
Устарело, будет удалено: этот элемент API может быть удален в будущей версии. Финализация объявлена устаревшей и может быть удалена в одном из будущих выпусков. |
final Class |
getClass() |
Возвращает класс времени выполнения этого объекта Object. |
final void |
notify() |
Пробуждает один поток, ожидающий на мониторе этого объекта. |
final void |
notifyAll() |
Пробуждает все потоки, ожидающие на мониторе этого объекта. |
String |
toString() |
Возвращает строковое представление объекта. |
final void |
wait() |
Заставляет текущий поток ждать пробуждения, обычно посредством вызова notify или interrupt. |
final void |
wait |
Заставляет текущий поток ждать пробуждения, обычно посредством вызова notify или interrupt, либо до истечения заданного промежутка реального времени. |
final void |
wait |
Заставляет текущий поток ждать пробуждения, обычно посредством вызова notify или interrupt, либо до истечения заданного промежутка реального времени. |
Подробное описание конструкторов
SerialArray
public SerialArray(Array array, Map<String,Class<?>> map) throws SerialException, SQLException
SerialArray из заданного объекта Array, используя заданную карту типов для пользовательского отображения каждого элемента, если элементы являются SQL UDT. Этот метод выполняет пользовательское отображение, если элементы массива являются UDT и заданная карта типов содержит запись для этого UDT. Пользовательское отображение выполняется рекурсивно: например, если элементом структурированного типа SQL является структурированный тип SQL, содержащий элемент, который также является структурированным типом SQL, то каждый структурированный тип с пользовательским отображением будет отображен согласно заданной карте типов.
Новый объект SerialArray содержит те же элементы, что и объект Array, на основе которого он создан, за исключением случаев, когда базовый тип является типом SQL STRUCT, ARRAY, BLOB, CLOB, DATALINK или JAVA_OBJECT. В этом случае каждый элемент нового объекта SerialArray представляет собой соответствующую сериализованную форму, то есть объект SerialStruct, SerialArray, SerialBlob, SerialClob, SerialDatalink или SerialJavaObject.
Примечание (1). Объект Array, из которого создается объект SerialArray, должен материализовать данные значения SQL ARRAY на клиенте до передачи конструктору. В противном случае новый объект SerialArray не будет содержать данных.
Примечание (2). Если Array содержит типы java.sql.Types.JAVA_OBJECT, вызывается конструктор SerialJavaObject, проверяющий возможность сериализации этого объекта.
Примечание (3). Объект Array, переданный этому конструктору, не может возвращать null для каких-либо методов Array.getArray(). SerialArray не может сериализовать значения null массива.
- Параметры:
-
array— объектArray, который требуется сериализовать -
map— объектjava.util.Map, в котором каждая запись состоит из: 1) объектаString, содержащего полное имя UDT (структурированного или отличного типа SQL), и 2) объектаClassдля реализацииSQLData, определяющей способ отображения UDT. Параметр map не влияет на типыBlob,Clob,DATALINKилиJAVA_OBJECT. - Исключения:
-
SerialException— если при сериализации объектаArrayпроизошла ошибка -
SQLException— если произошла ошибка доступа к базе данных или значения array либо map равныnull
SerialArray
public SerialArray(Array array) throws SerialException, SQLException
SerialArray из заданного объекта Array. Этот конструктор не выполняет пользовательское отображение. Если базовый тип массива является структурированным типом SQL и требуется пользовательское отображение, следует использовать конструктор SerialArray(Array array, Map map).
Новый объект SerialArray содержит те же элементы, что и объект Array, на основе которого он создан, за исключением случаев, когда базовый тип является типом SQL BLOB, CLOB, DATALINK или JAVA_OBJECT. В этом случае каждый элемент нового объекта SerialArray представляет собой соответствующую сериализованную форму, то есть объект SerialBlob, SerialClob, SerialDatalink или SerialJavaObject.
Примечание (1). Объект Array, из которого создается объект SerialArray, должен материализовать данные значения SQL ARRAY на клиенте до передачи конструктору. В противном случае новый объект SerialArray не будет содержать данных.
Примечание (2). Объект Array, переданный этому конструктору, не может возвращать null для каких-либо методов Array.getArray(). SerialArray не может сериализовать значения массива null.
- Параметры:
-
array— объектArray, который требуется сериализовать - Исключения:
-
SerialException— если при сериализации объектаArrayпроизошла ошибка -
SQLException— если произошла ошибка доступа к базе данных или параметр array равенnull.
Подробное описание методов
free
public void free() throws SQLException
SerialArray и высвобождает удерживаемые им ресурсы. После вызова метода free объект становится недействительным. При многократном вызове free последующие вызовы free не выполняют никаких действий.
- Определен в:
-
freeв интерфейсеArray - Исключения:
-
SQLException— если при освобождении ресурсов SerialArray произошла ошибка - С версии:
- 1.6
- См. также:
getArray
public Object getArray() throws SerialException
SerialArray.- Определен в:
-
getArrayв интерфейсеArray - Возвращает:
- копию этого объекта
SerialArrayв видеObjectязыка программирования Java - Исключения:
-
SerialException— если произошла ошибка или если для этого объекта ранее был вызван методfree
getArray
public Object getArray(Map<String,Class<?>> map) throws SerialException
SerialArray, используя заданную карту типов для пользовательского отображения каждого элемента, если элементы являются SQL UDT. Этот метод выполняет пользовательское отображение, если элементы массива являются UDT и заданная карта типов содержит запись для этого UDT. Пользовательское отображение выполняется рекурсивно: например, если элементом структурированного типа SQL является структурированный тип SQL, содержащий элемент, который также является структурированным типом SQL, то каждый структурированный тип с пользовательским отображением будет отображен согласно заданной карте типов.
- Определен в:
-
getArrayв интерфейсеArray - Параметры:
-
map— объектjava.util.Map, в котором каждая запись состоит из: 1) объектаString, содержащего полное имя UDT, и 2) объектаClassдля реализацииSQLData, определяющей способ отображения UDT - Возвращает:
- копию этого объекта
SerialArrayв видеObjectязыка программирования Java - Исключения:
-
SerialException— если произошла ошибка или если для этого объекта ранее был вызван методfree
getArray
public Object getArray(long index, int count) throws SerialException
SerialArray, начиная с элемента по заданному индексу и включающего заданное количество последовательных элементов.- Определен в:
-
getArrayв интерфейсеArray - Параметры:
-
index— индекс первого копируемого элемента в объектеSerialArray; индекс первого элемента равен0 -
count— количество последовательных элементов, которые требуется скопировать, начиная с заданного индекса - Возвращает:
- копию указанных элементов объекта
SerialArrayв видеObjectязыка программирования Java - Исключения:
-
SerialException— если произошла ошибка или если для этого объекта ранее был вызван методfree
getArray
public Object getArray(long index, int count, Map<String,Class<?>> map) throws SerialException
SerialArray, начиная с элемента по заданному индексу и включающего заданное количество последовательных элементов. Этот метод выполняет пользовательское отображение, если элементы массива являются UDT и заданная карта типов содержит запись для этого UDT. Пользовательское отображение выполняется рекурсивно: например, если элементом структурированного типа SQL является структурированный тип SQL, содержащий элемент, который также является структурированным типом SQL, то каждый структурированный тип с пользовательским отображением будет отображен согласно заданной карте типов.
- Определен в:
-
getArrayв интерфейсеArray - Параметры:
-
index— индекс первого копируемого элемента в объектеSerialArray; индекс первого элемента массива равен0 -
count— количество последовательных элементов, которые требуется скопировать, начиная с заданного индекса -
map— объектjava.util.Map, в котором каждая запись состоит из: 1) объектаString, содержащего полное имя UDT, и 2) объектаClassдля реализацииSQLData, определяющей способ отображения UDT - Возвращает:
- копию указанных элементов объекта
SerialArrayв видеObjectязыка программирования Java - Исключения:
-
SerialException— если произошла ошибка или если для этого объекта ранее был вызван методfree
getBaseType
public int getBaseType() throws SerialException
SerialArray. Возвращаемое значение int является одной из констант класса java.sql.Types.- Определен в:
-
getBaseTypeв интерфейсеArray - Возвращает:
- одну из констант
java.sql.Types, указывающую тип SQL элементов этого объектаSerialArray - Исключения:
-
SerialException— если произошла ошибка или если для этого объекта ранее был вызван методfree
getBaseTypeName
public String getBaseTypeName() throws SerialException
SerialArray.- Определен в:
-
getBaseTypeNameв интерфейсеArray - Возвращает:
- имя типа SQL, используемое СУБД для базового типа этого объекта
SerialArray - Исключения:
-
SerialException— если произошла ошибка или если для этого объекта ранее был вызван методfree
getResultSet
public ResultSet getResultSet(long index, int count) throws SerialException
ResultSet, содержащий элементы подмассива, начинающегося с индекса index и включающего до count последовательных элементов. Этот метод использует карту типов соединения для отображения элементов массива, если карта содержит запись для базового типа. В противном случае используется стандартное отображение.- Определен в:
-
getResultSetв интерфейсеArray - Параметры:
-
index— индекс первого копируемого элемента в объектеSerialArray; индекс первого элемента массива равен0 -
count— количество последовательных элементов, которые требуется скопировать, начиная с заданного индекса - Возвращает:
- объект
ResultSet, содержащий указанные элементы объектаSerialArray, с отдельной строкой для каждого элемента - Исключения:
-
SerialException— если вызван с причиной, заданной какUnsupportedOperationException
getResultSet
public ResultSet getResultSet(Map<String,Class<?>> map) throws SerialException
ResultSet, содержащий все элементы значения SQL ARRAY, представленного этим объектом SerialArray. Этот метод использует указанную карту для настройки отображения типов, если только базовый тип массива не соответствует пользовательскому типу (UDT) в map; в таком случае используется стандартное отображение. В этой версии метода getResultSet используется либо заданная карта типов, либо стандартное отображение; карта типов, связанная с соединением, не используется.- Определен в:
-
getResultSetв интерфейсеArray - Параметры:
-
map— объектjava.util.Map, в котором каждая запись состоит из: 1) объектаString, содержащего полное имя UDT, и 2) объектаClassдля реализацииSQLData, определяющей способ отображения UDT - Возвращает:
- объект
ResultSet, содержащий все элементы этого объектаSerialArray, с отдельной строкой для каждого элемента - Исключения:
-
SerialException— если вызван с причиной, заданной какUnsupportedOperationException
getResultSet
public ResultSet getResultSet() throws SerialException
ResultSet, содержащий все элементы значения ARRAY, представленного этим объектом SerialArray. При необходимости элементы массива отображаются с использованием карты типов соединения; в противном случае используется стандартное отображение.- Определен в:
-
getResultSetв интерфейсеArray - Возвращает:
- объект
ResultSet, содержащий все элементы этого объектаSerialArray, с отдельной строкой для каждого элемента - Исключения:
-
SerialException— если вызван с причиной, заданной какUnsupportedOperationException
getResultSet
public ResultSet getResultSet(long index, int count, Map<String,Class<?>> map) throws SerialException
ResultSet, содержащий подмассив элементов этого объекта SerialArray, начиная с индекса index и включающий до count последовательных элементов. Этот метод использует указанную карту для настройки отображения типов, если только базовый тип массива не соответствует пользовательскому типу (UDT) в map; в таком случае используется стандартное отображение. В этой версии метода getResultSet используется либо заданная карта типов, либо стандартное отображение; карта типов, связанная с соединением, не используется.- Определен в:
-
getResultSetв интерфейсеArray - Параметры:
-
index— индекс первого копируемого элемента в объектеSerialArray; индекс первого элемента массива равен0 -
count— количество последовательных элементов, которые требуется скопировать, начиная с заданного индекса -
map— объектjava.util.Map, в котором каждая запись состоит из: 1) объектаString, содержащего полное имя UDT, и 2) объектаClassдля реализацииSQLData, определяющей способ отображения UDT - Возвращает:
- объект
ResultSet, содержащий указанные элементы объектаSerialArray, с отдельной строкой для каждого элемента - Исключения:
-
SerialException— если вызван с причиной, заданной какUnsupportedOperationException
equals
public boolean equals(Object obj)
true тогда и только тогда, когда аргумент не является null и представляет собой объект
SerialArray, элементы которого идентичны элементам этого объектаhashCode
clone
© 1993, 2025, 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.