Пакет javax.sql.rowset
Стандартные интерфейсы и базовые классы для реализации JDBC RowSet.
См.: Описание
| Интерфейс | Описание |
|---|---|
| CachedRowSet | Интерфейс, который должны реализовывать все стандартные реализации |
| FilteredRowSet | Стандартный интерфейс, который должны реализовывать все стандартные реализации |
| JdbcRowSet | Стандартный интерфейс, который должны реализовывать все стандартные реализации |
| Joinable | 1.0 Обзор |
| JoinRowSet | Интерфейс |
| Predicate | Стандартный интерфейс, который предоставляет основу для всех |
| RowSetFactory | Интерфейс, который определяет реализацию фабрики, используемой для получения различных типов реализаций |
| WebRowSet | Стандартный интерфейс, который должны реализовывать все реализации |
| Класс | Описание |
|---|---|
| BaseRowSet | Абстрактный класс, предоставляющий |
| RowSetMetaDataImpl | Предоставляет реализации методов, которые устанавливают и получают метаданные о столбцах объекта |
| RowSetProvider | API фабрики, которая позволяет приложениям получить реализацию |
| Исключение | Описание |
|---|---|
| RowSetWarning | Расширение |
Описание пакета javax.sql.rowset
Стандартные интерфейсы и базовые классы для реализации JDBC RowSet. Этот пакет содержит интерфейсы и классы, которые стандартная реализация RowSet либо реализует, либо расширяет.
Содержание
- 1.0 Спецификация пакета
- 2.0 Стандартные определения RowSet
- 3.0 Руководство для разработчиков реализаций
- 4.0 Связанные спецификации
- 5.0 Связанная документация
1.0 Спецификация пакета
Этот пакет определяет пять стандартных интерфейсов JDBCRowSet. Все пять расширяют интерфейс RowSet, описанный в спецификации JDBC 3.0. Ожидается, что по мере развития этой технологии появятся дополнительные определения более специализированных типов JDBC RowSet. Будущие определения должны быть указаны как подинтерфейсы с использованием наследования, аналогично тому, как это используется в этой спецификации.
Примечание: Определения интерфейсов, предоставленные в этом пакете, являются основой для всех совместимых реализаций JDBC RowSet. Поставщики и более опытные разработчики, которые намерены предоставить свои собственные совместимые реализации RowSet , должны уделить особое внимание утверждениям, подробно описанным в интерфейсах спецификации.
2.0 Стандартные определения RowSet
-
JdbcRowSet- Обёртка вокруг объектаResultSet, которая позволяет использовать результирующий набор как компонент JavaBeans™. Таким образом, объектJdbcRowSetможет быть компонентом, который любое средство делает доступным для сборки приложения как части архитектуры на основе компонентов. ОбъектJdbcRowSetявляется подключённымRowSetобъектом, то есть он обязательно должен постоянно поддерживать подключение к источнику данных с использованием драйвера на основе технологии JDBC («JDBC-драйвер»). Кроме того, объектJdbcRowSetпредоставляет полностью обновляемую и прокручиваемую табличную структуру данных, как определено в спецификации JDBC 3.0. -
CachedRowSet™ - ОбъектCachedRowSetявляется компонентом JavaBeans™, который является прокручиваемым, обновляемым, сериализуемым и, как правило, отключённым от источника данных. ОбъектCachedRowSetобычно содержит строки из набора результатов, но он также может содержать строки из любого файла с табличной структурой, например, электронную таблицу. РеализацииCachedRowSetобязательно должны использоватьSyncFactoryдля управления и получения подключаемыхSyncProviderобъектов для обеспечения синхронизации между отключённым объектомRowSetи исходным источником данных. Обычно реализацияSyncProviderполагается на JDBC-драйвер для получения подключения к определённому источнику данных. Более подробные сведения об этом механизме см. в спецификации пакетаjavax.sql.rowset.spi. -
WebRowSet- ОбъектWebRowSetявляется расширением объектаCachedRowSetи может читать и записывать объектRowSetв формате XML. Этот класс вызывает объектXmlReader(расширение интерфейсаRowSetReader) для чтения набора строк в формате XML. Он вызывает объектXmlWriter(расширение интерфейсаRowSetWriter) для записи набора строк в формате XML. Читатели и писатели, требуемые объектамиWebRowSetпредоставляютсяSyncFactoryв виде реализацийSyncProvider. Для обеспечения корректного использования XML определена и опубликована стандартная универсальная схема XML по адресуhttp://java.sun.com/xml/ns/jdbc/webrowset.xsd. -
FilteredRowSet- ОбъектFilteredRowSetпредоставляет функциональность фильтрации программно и расширяемым образом. Существует множество случаев, когдаRowSetobjectнуждается в предоставлении фильтрации своего содержимого без ущерба для отключённой среды, тем самым экономя затраты на создание соединения с источником данных. Решения этой потребности варьируются от предоставления мощных полномасштабных возможностей запросов SQL до портативных компонентов и более лёгких подходов. ОбъектFilteredRowSetпотребляет реализацию интерфейсаPredicate, которая может определять фильтр во время выполнения. В свою очередь, объектFilteredRowSetполучает задачу обеспечения набора фильтров как для входящих, так и для исходящих операций чтения и записи. То есть все фильтры могут рассматриваться как двунаправленные. Стандартные фильтры не определены; однако, указаны достаточные механизмы, позволяющие реализовать любой необходимый фильтр. -
JoinRowSet- ИнтерфейсJoinRowSetописывает механизм, с помощью которого можно установить взаимосвязи между двумя или более стандартными реализациямиRowSet. Любое количество объектовRowSetможно добавить в объектJoinRowSetпри условии, что объектыRowSetможно связать в стиле SQLJOIN. По определению, утверждение SQLJOINиспользуется для объединения данных, содержащихся в двух (или более) таблицах реляционной базы данных на основе общего атрибута. Устанавливая и затем применяя соответствия столбцов, объектJoinRowSetустанавливает взаимосвязи между экземплярамиRowSetбез необходимости обращения к исходному источнику данных.
3.0 Руководство для разработчиков реализаций
Совместимые реализации JDBCRowSet реализации обязательно должны следовать утверждениям, описанным в этой спецификации. В соответствии с условиями Java Community Process, можно лицензировать пакет для тестирования совместимости (TCK) для обеспечения совместимости со спецификацией. Следующие абзацы описывают ряд начальных точек для разработчиков реализаций стандартных определений JDBC RowSet . Разработчики реализаций также должны обратиться к разделу Руководство для разработчиков реализаций в пакете javax.sql.rowset.spi для получения рекомендаций по реализации SyncProvider.
-
3.1 Конструктор
Все реализации
RowSetдолжны предоставлять конструктор без аргументов. -
3.2 Роль класса
BaseRowSetСоответствующая реализация JDBC
RowSetдолжна реализовывать один или несколько стандартных интерфейсов, указанных в этом пакете, и может расширять абстрактный классBaseRowSet. Например, реализацияCachedRowSetдолжна реализовывать интерфейсCachedRowSetи расширять абстрактный классBaseRowSet. КлассBaseRowSetпредоставляет стандартную архитектуру, на основе которой должны строиться все реализацииRowSet, независимо от того, существуют ли объектыRowSetв подключенном или отключенном окружении. Абстрактный классBaseRowSetпредоставляет любой реализацииRowSetбазовые функциональные возможности, включая управление свойствами и уведомления о событиях, которые полностью соответствуют требованиям компонентов JavaBeans. Например, все реализации, предоставленные в эталонных реализациях (содержащихся в пакетеcom.sun.rowset), используют классBaseRowSetв качестве основы для своих реализаций.Следующая таблица иллюстрирует возможности, предоставляемые абстрактным классом
BaseRowSet.Функция
Подробности
Свойства
Предоставляет стандартные механизмы управления свойствами JavaBeans, позволяющие приложениям получать и устанавливать значения команд и свойств RowSet. Для получения более подробной информации о стандартных свойствахRowSetобратитесь к документации интерфейсаjavax.sql.RowSet(доступной в спецификации JDBC 3.0).
Уведомления о событиях
Предоставляет стандартные уведомления о событиях JavaBeans зарегистрированным слушателям событий. Для получения более подробной информации о том, как регистрировать и обрабатывать стандартные события RowSet, генерируемые соответствующими реализациями, обратитесь к документации интерфейса javax.sql.RowSetEvent(доступной в спецификации JDBC 3.0).
Методы установки для команды объекта RowSet
Предоставляет полный набор методов установки для настройки параметров команды RowSet.
Потоки
Предоставляет поля для хранения экземпляров потоков, а также набор констант для обозначения типа потока.
-
3.3 Требования к подключенному RowSet
JdbcRowSetописывает объектRowSet, который должен всегда быть подключенным к исходному источнику данных. РеализацииJdbcRowSetдолжны гарантировать, что это подключение предоставляется только драйвером JDBC. Кроме того, объектыRowSet, которые являются реализациями интерфейсаJdbcRowSetи, следовательно, работают в подключенном окружении, не используютSyncFactoryдля получения объектаRowSetReaderили объектаRowSetWriter. Они могут безопасно полагаться на драйвер JDBC для удовлетворения своих потребностей благодаря наличию базовой обновляемой и прокручиваемой реализацииResultSet. - 3.4 Требования к отключенному RowSet
Отключенный объект
RowSet, такой как объектCachedRowSet, должен делегировать управление подключением объектуSyncProvider, предоставленномуSyncFactory. Для обеспечения полностью отключенных семантик все отключенные объектыRowSetдолжны гарантировать, что исходное подключение к источнику данных для заполнения объектаRowSetзакрыто, чтобы позволить сборщику мусора восстановить и освободить ресурсы. ОбъектSyncProviderгарантирует, что критические свойства JDBC сохраняются для повторного подключения к источнику данных, когда требуется синхронизация. Отключенный объектRowSetдолжен, следовательно, гарантировать, что посторонние ссылки на объектеConnectionне остаются. -
3.5 Роль RowSetMetaDataImpl
Класс
RowsetMetaDataImplявляется вспомогательным классом, который предоставляет реализацию интерфейса RowSetMetaData, обеспечивая стандартные реализации методов установки метаданных для подключенных и отключенных объектовRowSet. Все реализации могут свободно использовать эту стандартную реализацию, но не обязаны это делать. -
3.6 Класс RowSetWarning
Класс
RowSetWarningпредоставляет предупреждения, которые могут быть установлены на реализацииRowSet. Аналогично объектам SQLWarning, объектыRowSetWarningтихо прицепляются к объекту, метод которого вызвал выброс предупреждения. Все реализацииRowSetдолжны обеспечить, чтобы эта прицепка происходила, если генерируется предупреждение, а также убедиться, что предупреждения доступны через методgetRowSetWarnings, определенный в интерфейсеJdbcRowSetили интерфейсеCachedRowSet. После получения предупреждения с помощью одного из методовgetRowSetWarnings, на нем можно вызвать методRowSetWarninggetNextWarning, чтобы получить любые связанные предупреждения. Если возвращается предупреждение, на нем можно вызватьgetNextWarning, и так далее, пока не останется больше предупреждений. -
3.7 Интерфейс Joinable
Интерфейс
Joinableпредоставляет как подключенным, так и отключенным объектамRowSetвозможность добавления в объектJoinRowSetв операции SQLJOIN. ОбъектRowSet, который реализовал интерфейсJoinable, может установить столбец совпадения, извлечь столбец совпадения или сбросить столбец совпадения. ОбъектJoinRowSetзатем может использовать столбец совпадения объектаRowSetв качестве основы для добавления объектаRowSet. -
3.8 Интерфейс RowSetFactory
Реализация
RowSetFactoryдолжна быть предоставлена.
4.0 Связанные спецификации
5.0 Связанная документация
© 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.