Класс SerialArray
- Все реализованные интерфейсы:
-
Serializable,Cloneable,Array
public class SerialArray extends Object implements Array, Serializable, Cloneable
Array, который является отображением в языке программирования Java значения SQL ARRAY. Класс SerialArray предоставляет конструктор для создания экземпляра SerialArray из объекта Array, методы для получения базового типа и имени SQL для базового типа, а также методы для копирования всего или части объекта SerialArray.
Примечание: для корректной работы этого класса необходимо наличие подключения к источнику данных, чтобы объект SQL Array был материализован (все его элементы были перенесены на клиентский сервер), если это необходимо. В настоящее время логические указатели на данные в источнике данных, такие как локейторы, не поддерживаются.
Безопасность потоков
Объект SerialArray не предназначен для одновременного использования несколькими потоками. Если 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, содержащий все элементы значения SQL ARRAY, которое представляет этот объект SerialArray. |
ResultSet |
getResultSet |
Возвращает объект ResultSet, содержащий элементы подмассива, который начинается с индекса index и содержит до count последовательных элементов. |
ResultSet |
getResultSet |
Возвращает результат набора, содержащего элементы подмассива, который начинается с индекса index и содержит до count последовательных элементов. |
ResultSet |
getResultSet |
Возвращает объект ResultSet, содержащий все элементы значения SQL ARRAY , представленного этим объектом SerialArray. |
int |
hashCode() |
Возвращает код хэша для этого SerialArray. |
Подробное описание конструкторов
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 типа, используемое DBMS для базового типа этого
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 , элементы которого идентичны элементам этого объекта.- Переопределяет:
-
equalsв классеObject - Параметры:
-
obj- Объект для сравнения с этимSerialArray - Возвращает:
-
true, если заданный объект представляетSerialArrayэквивалент этому SerialArray,falseв противном случае - См. также:
hashCode
public int hashCode()
SerialArray вычисляется с использованием хэш-кодов элементов объекта SerialArray- Переопределяет:
-
hashCodeв классеObject - Возвращает:
- значение хэш-кода для этого объекта.
- См. также:
clone
public Object clone()
SerialArray. Копия будет содержать ссылку на клон массива базовых объектов, а не на ссылку на исходный массив базовых объектов этого SerialArray объекта.- Переопределяет:
-
cloneв классеObject - Возвращает:
- клон этого SerialArray
- См. также:
© 1993, 2021, 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/17/docs/api/java.sql.rowset/javax/sql/rowset/serial/SerialArray.html