Spec-Zone.ru › OpenJDK 21

Интерфейс оболочки

Все известные подинтерфейсы:
CachedRowSet, CallableStatement, Connection, DatabaseMetaData, DataSource, FilteredRowSet, JdbcRowSet, JoinRowSet, ParameterMetaData, PreparedStatement, ResultSet, ResultSetMetaData, RowSet, RowSetMetaData, Statement, SyncResolver, WebRowSet
Все известные реализующие классы:
RowSetMetaDataImpl
public interface Wrapper
Интерфейс для классов JDBC, предоставляющий возможность извлечения делегата, когда экземпляр является фактически прокси-классом.

Многие реализации JDBC драйверов используют паттерн оболочки, чтобы предоставить расширения, выходящие за рамки стандартного JDBC API, специфичные для источника данных. Разработчики могут захотеть получить доступ к этим ресурсам, которые оборачиваются (делегаты), как экземпляры прокси-классов, представляющие фактические ресурсы. Этот интерфейс описывает стандартный механизм доступа к этим обернутым ресурсам, представленным их прокси, для прямого доступа к ресурсам-делегатам.

С:
1.6

Краткое описание методов

Модификатор и тип Метод Описание
boolean isWrapperFor(Class<?> iface)
Возвращает true, если этот объект реализует заданный интерфейс или является прямой или косвенной оболочкой объекта, который это делает.
<T> T unwrap(Class<T> iface)
Возвращает объект, реализующий данный интерфейс, для доступа к нестандартным методам или стандартным методам, не экспонируемым прокси.

Подробное описание методов

unwrap

<T> T unwrap(Class<T> iface) throws SQLException
Возвращает объект, реализующий данный интерфейс, для доступа к нестандартным методам или стандартным методам, не экспонируемым прокси. Если получатель реализует интерфейс, то результатом является получатель или прокси для получателя. Если получатель является оболочкой, и обернутый объект реализует интерфейс, то результатом является обернутый объект или прокси для обернутого объекта. В противном случае возвращается результат рекурсивного вызова unwrap на обернутом объекте или прокси для этого результата. Если получатель не является оболочкой и не реализует интерфейс, то выбрасывается SQLException.
Параметры типа:
T - тип класса, моделируемого этим объектом класса
Параметры:
iface - Класс, определяющий интерфейс, который должен реализовывать результат.
Возвращает:
объект, реализующий интерфейс. Может быть прокси для фактического объекта-реализации.
Исключения:
SQLException - Если не найден объект, реализующий интерфейс
С:
1.6

isWrapperFor

boolean isWrapperFor(Class<?> iface) throws SQLException
Возвращает true, если этот объект либо реализует заданный интерфейс, либо является прямой или косвенной оболочкой объекта, который это делает. В противном случае возвращает false. Если этот объект реализует интерфейс, то возвращает true, иначе, если это оболочка, то возвращает результат рекурсивного вызова isWrapperFor на обернутом объекте. Если этот объект не реализует интерфейс и не является оболочкой, возвращает false. Этот метод должен быть реализован как операция с низкой стоимостью по сравнению с unwrap, чтобы вызывающие могли использовать этот метод для избежания дорогостоящих вызовов unwrap, которые могут завершиться неудачей. Если этот метод возвращает true, то вызов unwrap с тем же аргументом должен быть успешным.
Параметры:
iface - Класс, определяющий интерфейс.
Возвращает:
true, если этот объект реализует интерфейс или непосредственно или косвенно оборачивает объект, который это делает.
Исключения:
SQLException - если возникла ошибка при определении, является ли этот объект оболочкой для объекта с заданным интерфейсом.
С:
1.6

© 1993, 2023, 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/21/docs/api/java.sql/java/sql/Wrapper.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API