Интерфейс Array
- Все суперинтерфейсы:
AutoCloseable
- Все известные реализующие классы:
SerialArray
public interface Array extends AutoCloseable
ARRAY. По умолчанию значение Array представляет собой ссылку на значение SQL ARRAY, действительную в течение транзакции. По умолчанию объект Array реализуется внутри с использованием SQL LOCATOR(array), что означает, что объект Array содержит логический указатель на данные в значении SQL ARRAY, а не сами данные значения ARRAY. Интерфейс Array предоставляет методы для передачи данных значения SQL ARRAY клиенту в виде массива или объекта ResultSet. Если элементы SQL ARRAY имеют тип UDT, для них может быть задано пользовательское отображение. Для создания пользовательского отображения программист должен выполнить два действия:
- создать класс, реализующий интерфейс
SQLDataдля UDT, для которого нужно задать пользовательское отображение. - добавить запись в карту типов, содержащую
- полное имя типа SQL для UDT
- объект
Classдля класса, реализующегоSQLData
Если методам getArray и getResultSet передана карта типов с записью для базового типа, содержащиеся в ней сведения будут использоваться для отображения элементов значения ARRAY. Если карта типов не передана, что обычно и происходит, по умолчанию используется карта типов соединения. Если в карте типов соединения или в карте типов, переданной методу, нет записи для базового типа, элементы отображаются согласно стандартному отображению.
Чтобы освободить ресурсы, используемые объектом Array, приложения должны вызвать метод free() или close(). Любая попытка вызвать метод, отличный от free() или close(), после закрытия объекта Array приведёт к выбрасыванию исключения SQLException.
Все методы интерфейса Array должны быть полностью реализованы, если драйвер JDBC поддерживает этот тип данных.
- С версии:
- 1.2
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
default void |
close() |
Закрывает объект Array и освобождает удерживаемые им ресурсы. |
void |
free() |
Закрывает объект Array и освобождает удерживаемые им ресурсы. |
Object |
getArray() |
Извлекает содержимое значения SQL ARRAY, указанного этим объектом Array, в виде массива языка программирования Java. |
Object |
getArray |
Извлекает срез значения SQL ARRAY, указанного этим объектом Array, начиная с заданного index и содержащий не более count следующих подряд элементов массива SQL. |
Object |
getArray |
Извлекает срез значения SQL ARRAY, указанного этим объектом Array, начиная с заданного index и содержащий не более count следующих подряд элементов массива SQL. |
Object |
getArray |
Извлекает содержимое значения SQL ARRAY, указанного этим объектом Array. |
int |
getBaseType() |
Извлекает тип JDBC элементов массива, указанного этим объектом Array. |
String |
getBaseTypeName() |
Извлекает имя типа SQL элементов массива, указанного этим объектом Array. |
ResultSet |
getResultSet() |
Извлекает результирующий набор, содержащий элементы значения SQL ARRAY, указанного этим объектом Array. |
ResultSet |
getResultSet |
Извлекает результирующий набор с элементами подмассива, начинающегося с индекса index и содержащего не более count следующих подряд элементов. |
ResultSet |
getResultSet |
Извлекает результирующий набор с элементами подмассива, начинающегося с индекса index и содержащего не более count следующих подряд элементов. |
ResultSet |
getResultSet |
Извлекает результирующий набор, содержащий элементы значения SQL ARRAY, указанного этим объектом Array. |
Подробное описание методов
getBaseTypeName
String getBaseTypeName() throws SQLException
Array. Если элементы имеют встроенный тип, возвращается имя типа, используемое для этих элементов в конкретной базе данных. Если элементы имеют пользовательский тип (UDT), этот метод возвращает полное имя типа SQL.- Возвращает:
String— имя встроенного базового типа, используемое в конкретной базе данных; или полное имя типа SQL для базового типа UDT- Выбрасывает:
-
SQLException— если при попытке получить доступ к имени типа возникает ошибка -
SQLFeatureNotSupportedException— если драйвер JDBC не поддерживает этот метод - С версии:
- 1.2
getBaseType
int getBaseType() throws SQLException
Array.- Возвращает:
- константу из класса
Types, представляющую код типа элементов массива, указанного этим объектомArray - Выбрасывает:
-
SQLException— если при попытке получить доступ к базовому типу возникает ошибка -
SQLFeatureNotSupportedException— если драйвер JDBC не поддерживает этот метод - С версии:
- 1.2
getArray
Object getArray() throws SQLException
ARRAY, указанного этим объектом Array, в виде массива языка программирования Java. Эта версия метода getArray использует карту типов, связанную с соединением, для настройки отображения типов. Примечание: Если getArray используется для материализации базового типа, соответствующего примитивному типу данных, реализация определяет, будет ли возвращённый массив массивом этого примитивного типа данных или массивом Object.
- Возвращает:
- массив языка программирования Java, содержащий упорядоченные элементы значения SQL
ARRAY, указанного этим объектомArray - Выбрасывает:
-
SQLException— если при попытке получить доступ к массиву возникает ошибка -
SQLFeatureNotSupportedException— если драйвер JDBC не поддерживает этот метод - С версии:
- 1.2
getArray
Object getArray(Map<String,Class<?>> map) throws SQLException
ARRAY, указанного этим объектом Array. Этот метод использует указанную map для настройки отображения типов, если только базовый тип массива не соответствует пользовательскому типу в map; в этом случае используется стандартное отображение. Эта версия метода getArray использует либо переданную карту типов, либо стандартное отображение; карта типов, связанная с соединением, не используется. Примечание: Если getArray используется для материализации базового типа, соответствующего примитивному типу данных, реализация определяет, будет ли возвращённый массив массивом этого примитивного типа данных или массивом Object.
- Параметры:
-
map— объектjava.util.Map, содержащий отображения имён типов SQL в классы языка программирования Java - Возвращает:
- массив языка программирования Java, содержащий упорядоченные элементы массива SQL, указанного этим объектом
- Выбрасывает:
-
SQLException— если при попытке получить доступ к массиву возникает ошибка -
SQLFeatureNotSupportedException— если драйвер JDBC не поддерживает этот метод - С версии:
- 1.2
getArray
Object getArray(long index, int count) throws SQLException
ARRAY, указанного этим объектом Array, начиная с заданного index и содержащий не более count следующих подряд элементов массива SQL. Этот метод использует карту типов, связанную с соединением, для настройки отображения типов. Примечание: Если getArray используется для материализации базового типа, соответствующего примитивному типу данных, реализация определяет, будет ли возвращённый массив массивом этого примитивного типа данных или массивом Object.
- Параметры:
-
index— индекс первого извлекаемого элемента массива; индекс первого элемента равен 1 -
count— количество следующих подряд элементов массива SQL, которые нужно извлечь - Возвращает:
- массив, содержащий до
countпоследовательных элементов массива SQL, начиная с элементаindex - Выбрасывает:
-
SQLException— если при попытке получить доступ к массиву возникает ошибка -
SQLFeatureNotSupportedException— если драйвер JDBC не поддерживает этот метод - С версии:
- 1.2
getArray
Object getArray(long index, int count, Map<String,Class<?>> map) throws SQLException
ARRAY, указанного этим объектом Array, начиная с заданного index и содержащий не более count следующих подряд элементов массива SQL. Этот метод использует указанную map для настройки отображения типов, если только базовый тип массива не соответствует пользовательскому типу в map; в этом случае используется стандартное отображение. Эта версия метода getArray использует либо переданную карту типов, либо стандартное отображение; карта типов, связанная с соединением, не используется.
Примечание: Если getArray используется для материализации базового типа, соответствующего примитивному типу данных, реализация определяет, будет ли возвращённый массив массивом этого примитивного типа данных или массивом Object.
- Параметры:
-
index— индекс первого извлекаемого элемента массива; индекс первого элемента равен 1 -
count— количество следующих подряд элементов массива SQL, которые нужно извлечь -
map— объектjava.util.Map, содержащий имена типов SQL и классы языка программирования Java, в которые они отображаются - Возвращает:
- массив, содержащий до
countпоследовательных элементов значения SQLARRAY, указанного этим объектомArray, начиная с элементаindex - Выбрасывает:
-
SQLException— если при попытке получить доступ к массиву возникает ошибка -
SQLFeatureNotSupportedException— если драйвер JDBC не поддерживает этот метод - С версии:
- 1.2
getResultSet
ResultSet getResultSet() throws SQLException
ARRAY, указанного этим объектом Array. Если это применимо, элементы массива отображаются с использованием карты типов соединения; в противном случае используется стандартное отображение. Результирующий набор содержит по одной строке для каждого элемента массива и два столбца в каждой строке. Во втором столбце хранится значение элемента, а в первом — индекс этого элемента в массиве (индекс первого элемента массива равен 1). Строки расположены по возрастанию индексов.
- Возвращает:
- объект
ResultSet, содержащий по одной строке для каждого элемента массива, указанного этим объектомArray; строки расположены по возрастанию индексов. - Выбрасывает:
-
SQLException— если при попытке получить доступ к массиву возникает ошибка -
SQLFeatureNotSupportedException— если драйвер JDBC не поддерживает этот метод - С версии:
- 1.2
getResultSet
ResultSet getResultSet(Map<String,Class<?>> map) throws SQLException
ARRAY, указанного этим объектом Array. Этот метод использует указанную map для настройки отображения типов, если только базовый тип массива не соответствует пользовательскому типу в map; в этом случае используется стандартное отображение. Эта версия метода getResultSet использует либо переданную карту типов, либо стандартное отображение; карта типов, связанная с соединением, не используется. Результирующий набор содержит по одной строке для каждого элемента массива и два столбца в каждой строке. Во втором столбце хранится значение элемента, а в первом — индекс этого элемента в массиве (индекс первого элемента массива равен 1). Строки расположены по возрастанию индексов.
- Параметры:
-
map— содержит отображение пользовательских типов SQL в классы языка программирования Java - Возвращает:
- объект
ResultSet, содержащий по одной строке для каждого элемента массива, указанного этим объектомArray; строки расположены по возрастанию индексов. - Выбрасывает:
-
SQLException— если при попытке получить доступ к массиву возникает ошибка -
SQLFeatureNotSupportedException— если драйвер JDBC не поддерживает этот метод - С версии:
- 1.2
getResultSet
ResultSet getResultSet(long index, int count) throws SQLException
index и содержащего не более count следующих подряд элементов. Этот метод использует карту типов соединения для отображения элементов массива, если карта содержит запись для базового типа. В противном случае используется стандартное отображение. Результирующий набор содержит по одной строке для каждого элемента массива SQL, указанного этим объектом; первая строка содержит элемент с индексом index. Результирующий набор содержит не более count строк, расположенных по возрастанию индексов. В каждой строке два столбца: во втором хранится значение элемента, а в первом — индекс этого элемента в массиве.
- Параметры:
-
index— индекс первого извлекаемого элемента массива; индекс первого элемента равен 1 -
count— количество следующих подряд элементов массива SQL, которые нужно извлечь - Возвращает:
- объект
ResultSet, содержащий доcountпоследовательных элементов массива SQL, указанного этим объектомArray, начиная с индексаindex. - Выбрасывает:
-
SQLException— если при попытке получить доступ к массиву возникает ошибка -
SQLFeatureNotSupportedException— если драйвер JDBC не поддерживает этот метод - С версии:
- 1.2
getResultSet
ResultSet getResultSet(long index, int count, Map<String,Class<?>> map) throws SQLException
index и содержащего не более count следующих подряд элементов. Этот метод использует указанную map для настройки отображения типов, если только базовый тип массива не соответствует пользовательскому типу в map; в этом случае используется стандартное отображение. Эта версия метода getResultSet использует либо переданную карту типов, либо стандартное отображение; карта типов, связанная с соединением, не используется. Результирующий набор содержит по одной строке для каждого элемента массива SQL, указанного этим объектом; первая строка содержит элемент с индексом index. Результирующий набор содержит не более count строк, расположенных по возрастанию индексов. В каждой строке два столбца: во втором хранится значение элемента, а в первом — индекс этого элемента в массиве.
- Параметры:
-
index— индекс первого извлекаемого элемента массива; индекс первого элемента равен 1 -
count— количество следующих подряд элементов массива SQL, которые нужно извлечь -
map— объектMap, содержащий отображение имён типов SQL в классы языка программирования Java(tm) - Возвращает:
- объект
ResultSet, содержащий доcountпоследовательных элементов массива SQL, указанного этим объектомArray, начиная с индексаindex. - Выбрасывает:
-
SQLException— если при попытке получить доступ к массиву возникает ошибка -
SQLFeatureNotSupportedException— если драйвер JDBC не поддерживает этот метод - С версии:
- 1.2
free
void free() throws SQLException
Array и освобождает удерживаемые им ресурсы. Если объект Array уже закрыт, вызов этого метода не оказывает никакого эффекта.
- Выбрасывает:
-
SQLException— если при освобождении ресурсов Array возникает ошибка -
SQLFeatureNotSupportedException— если драйвер JDBC не поддерживает этот метод - С версии:
- 1.6
- См. также:
close
default void close() throws SQLException
Array и освобождает удерживаемые им ресурсы. Если объект Array уже закрыт, вызов этого метода не оказывает никакого эффекта.
- Определено в:
-
closeв интерфейсеAutoCloseable - Требования к реализации:
- Реализация по умолчанию вызывает метод
free(). - Выбрасывает:
-
SQLException— если при освобождении ресурсов Array возникает ошибка -
SQLFeatureNotSupportedException— если драйвер JDBC не поддерживает этот метод - С версии:
- 26
- См. также:
© 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.