Класс SerialArray

Все реализованные интерфейсы:
Serializable, Cloneable, Array
public class SerialArray
extends Object
implements Array, Serializable, Cloneable

Сериализованная версия объекта Array, являющегося отображением значения SQL ARRAY на языке программирования Java.

Класс SerialArray предоставляет конструктор для создания экземпляра SerialArray из объекта Array, методы для получения базового типа и имени SQL для базового типа, а также методы для копирования всего или части объекта SerialArray.

Примечание: для правильной работы этого класса необходимо наличие подключения к источнику данных, чтобы объект SQL Array при необходимости был материализован (все его элементы были загружены на клиентский сервер). В настоящее время логические указатели на данные в источнике данных, такие как локейторы, не поддерживаются.

Безопасность потоков

Объект SerialArray не является безопасным для одновременного использования несколькими потоками. Если SerialArray будет использоваться более чем одним потоком, доступ к SerialArray должен контролироваться соответствующей синхронизацией.
С момента:
1.5
См. также:
Сериализованная форма

Конструкторы

Конструктор Описание
SerialArray​(Array array)

Создает новый объект SerialArray из заданного объекта Array.

SerialArray​(Array array, Map<String,​Class<?>> map)

Создает новый объект SerialArray из заданного объекта Array, используя заданный тип карты для настраиваемого отображения каждого элемента, когда элементы являются SQL UDT.

Методы

Модификатор и тип Метод Описание
Object clone()

Возвращает клон этого SerialArray.

boolean equals​(Object obj)

Сравнивает этот SerialArray со заданным объектом.

void free()

Этот метод освобождает объект SerialArray и освобождает ресурсы, которые он содержит.

Object getArray()

Возвращает новый массив, который является копией этого объекта SerialArray.

Object getArray​(long index, int count)

Возвращает новый массив, который является копией среза этого объекта SerialArray, начиная с элемента с заданным индексом и содержащего заданное количество последовательных элементов.

Object getArray​(long index, int count, Map<String,​Class<?>> map)

Возвращает новый массив, который является копией среза этого объекта SerialArray, начиная с элемента с заданным индексом и содержащего заданное количество последовательных элементов.

Object getArray​(Map<String,​Class<?>> map)

Возвращает новый массив, который является копией этого объекта SerialArray, используя заданную карту типов для настраиваемого отображения каждого элемента, когда элементы являются SQL UDT.

int getBaseType()

Возвращает тип SQL элементов в этом объекте SerialArray.

String getBaseTypeName()

Возвращает имя типа, специфичное для СУБД, для элементов в этом объекте SerialArray.

ResultSet getResultSet()

Возвращает объект ResultSet, содержащий все элементы в значении SQL ARRAY, которое представляет этот объект SerialArray.

ResultSet getResultSet​(long index, int count)

Возвращает объект ResultSet, содержащий элементы подмассива, начинающегося с индекса index и содержащего до count последовательных элементов.

ResultSet getResultSet​(long index, int count, Map<String,​Class<?>> map)

Возвращает набор результатов, содержащий элементы подмассива, начинающегося с Получает объект ResultSet, содержащий подмассив элементов в этом объекте SerialArray, начиная с индекса index и содержащего до count последовательных элементов.

ResultSet getResultSet​(Map<String,​Class<?>> map)

Возвращает объект ResultSet, содержащий все элементы значения SQL ARRAY, представленного этим объектом SerialArray.

int hashCode()

Возвращает хэш-код для этого SerialArray.

Методы, объявленные в классе java.lang.Object

finalize, getClass, notify, notifyAll, toString, wait, wait, wait

Конструкторы

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 не может сериализовать нулевые значения массивов.

Параметры:
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

Извлекает тип SQL элементов в этом объекте 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)

Сравнивает этот SerialArray с указанным объектом. Результатом является true тогда и только тогда, когда аргумент не null и является объектом SerialArray, элементы которого идентичны элементам этого объекта.

Переопределяет:
equals в классе Object
Параметры:
obj - Объект для сравнения с этим SerialArray
Возвращает:
true если заданный объект представляет SerialArray эквивалентный этому SerialArray, false в противном случае
См. также:
Object.hashCode(), HashMap

hashCode

public int hashCode()

Возвращает хеш-код для этого SerialArray. Хеш-код для объекта SerialArray вычисляется с использованием хеш-кодов элементов объекта SerialArray

Переопределяет:
hashCode в классе Object
Возвращает:
значение хеш-кода для этого объекта.
См. также:
Object.equals(java.lang.Object), System.identityHashCode(java.lang.Object)

clone

public Object clone()

Возвращает копию этого SerialArray. Копия будет содержать ссылку на клон массива базовых объектов, а не на ссылку на исходный массив базовых объектов этого объекта SerialArray.

Переопределяет:
clone в классе Object
Возвращает:
клон этого SerialArray
См. также:
Cloneable

© 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/SerialArray.html

Spec-Zone .ru
спецификации, руководства, описания, API