Spec-Zone.ru › OpenJDK 25

Package javax.sql.rowset

package javax.sql.rowset
Стандартные интерфейсы и базовые классы для реализаций JDBC RowSet. Этот пакет содержит интерфейсы и классы, которые стандартная реализация RowSet реализует или расширяет.

Содержание

  • 1.0 Спецификация пакета
  • 2.0 Определения стандартных RowSet
  • 3.0 Руководство для разработчиков реализаций
  • 4.0 Связанные спецификации
  • 5.0 Связанная документация

1.0 Спецификация пакета

В этом пакете определены пять стандартных интерфейсов JDBC RowSet. Все пять расширяют интерфейс RowSet, описанный в спецификации JDBC 3.0. Ожидается, что по мере развития этой технологии появятся дополнительные определения более специализированных типов JDBC RowSet. В будущем такие определения следует задавать как подынтерфейсы, используя наследование аналогично тому, как оно применяется в этой спецификации.

Примечание: Определения интерфейсов, представленные в этом пакете, составляют основу всех совместимых реализаций JDBC RowSet. Поставщикам и опытным разработчикам, намеревающимся создавать собственные совместимые реализации RowSet, следует обратить особое внимание на требования, подробно описанные в спецификациях интерфейсов.

2.0 Определения стандартных RowSet

  • JdbcRowSet — оболочка вокруг объекта ResultSet, позволяющая использовать результирующий набор в качестве компонента JavaBeans. Таким образом, объект JdbcRowSet может быть компонентом Bean, который любой инструмент предоставляет для сборки приложения в рамках компонентной архитектуры. Объект 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 Schema, опубликованная по адресу http://xmlns.jcp.org/xml/ns//jdbc/webrowset.xsd.
  • FilteredRowSet — объект FilteredRowSet предоставляет функциональность фильтрации программным и расширяемым способом. Во многих случаях RowSet object требуется фильтровать содержимое, не отказываясь от отключённого режима работы и тем самым избегая затрат на установление соединения с источником данных. Решения этой задачи варьируются от предоставления полнофункциональных возможностей запросов SQL до переносимых компонентов и более лёгких подходов. Объект FilteredRowSet использует реализацию интерфейса Predicate, которая может определять фильтр во время выполнения. В свою очередь, объект FilteredRowSet отвечает за применение установленного фильтра как к входящим, так и к исходящим операциям чтения и записи. Иными словами, все фильтры можно считать двунаправленными. Стандартные фильтры не определены, однако спецификация предусматривает достаточный набор механизмов для реализации любого необходимого фильтра.
  • JoinRowSet — интерфейс JoinRowSet описывает механизм установления связей между двумя или более стандартными реализациями RowSet. В объект JoinRowSet можно добавлять любое количество объектов RowSet при условии, что объекты RowSet можно связать подобно SQL JOIN. По определению, инструкция SQL JOIN используется для объединения данных из двух (или более) таблиц реляционной базы данных на основе общего атрибута. Устанавливая и затем применяя соответствия столбцов, объект JoinRowSet создаёт связи между экземплярами RowSet без необходимости обращаться к исходному источнику данных.

3.0 Руководство для разработчиков реализаций

Совместимые реализации JDBC RowSet должны следовать требованиям, описанным в этой спецификации. В соответствии с условиями 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.

    Возможности 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 для извлечения связанных с ним предупреждений можно вызвать его метод RowSetWarning getNextWarning. Если предупреждение возвращено, для него можно вызвать getNextWarning и так далее, пока предупреждения не закончатся.

  • 3.7 Интерфейс Joinable

    Интерфейс Joinable позволяет подключённым и отключённым объектам RowSet добавляться в объект JoinRowSet в рамках операции SQL JOIN. Объект RowSet, реализующий интерфейс Joinable, может задать столбец сопоставления, получить его или отменить его назначение. Затем объект JoinRowSet может использовать столбец сопоставления объекта RowSet как основу для добавления объекта RowSet.

  • 3.8 Интерфейс RowSetFactory

    Реализация RowSetFactory должна быть предоставлена.

4.0 Связанные спецификации

  • Спецификация JDBC 4.3
  • XML Schema

5.0 Связанная документация

  • Учебное руководство по JDBC RowSet
Начиная с:
1.5
java.sql
java.sql.rowset
java.sql.rowset
Модуль Пакет Описание
javax.sql
Предоставляет API для доступа к источникам данных на стороне сервера и их обработки на языке программирования Java.
javax.sql.rowset.serial
Предоставляет служебные классы для сериализуемых сопоставлений между типами SQL и типами данных языка программирования Java.
javax.sql.rowset.spi
Стандартные классы и интерфейсы, которые сторонний поставщик должен использовать при реализации поставщика синхронизации.
Класс Описание
BaseRowSet
Абстрактный класс, предоставляющий объекту RowSet базовую функциональность.
CachedRowSet
Интерфейс, который должны реализовывать все стандартные реализации CachedRowSet.
FilteredRowSet
Стандартный интерфейс, который должны реализовывать все стандартные реализации FilteredRowSet.
JdbcRowSet
Стандартный интерфейс, который должны реализовывать все стандартные реализации JdbcRowSet.
Joinable
1.0 Предыстория
JoinRowSet
Интерфейс JoinRowSet предоставляет механизм объединения связанных данных из разных объектов RowSet в один объект JoinRowSet, представляющий операцию SQL JOIN.
Predicate
Стандартный интерфейс, предоставляющий основу для описания фильтров всеми объектами FilteredRowSet.
RowSetFactory
Интерфейс, определяющий реализацию фабрики для получения различных типов реализаций RowSet.
RowSetMetaDataImpl
Предоставляет реализации методов установки и получения метаданных о столбцах объекта RowSet.
RowSetProvider
API фабрики, позволяющий приложениям получить реализацию RowSetFactory, которую можно использовать для создания различных типов реализаций RowSet.
RowSetWarning
Расширение SQLException, предоставляющее сведения о предупреждениях базы данных, установленных для объектов RowSet.
WebRowSet
Стандартный интерфейс, который должны реализовывать все реализации WebRowSet.

Сообщить об ошибке или предложить улучшение
Дополнительные справочные материалы по API и документацию для разработчиков см. в разделе Документация Java SE, содержащем более подробные описания для разработчиков, концептуальные обзоры, определения терминов, обходные решения и примеры работающего кода. Другие версии.
Java является товарным знаком или зарегистрированным товарным знаком Oracle и/или её аффилированных лиц в США и других странах.
Авторские права © 1993, 2025, Oracle и/или её аффилированные лица, 500 Oracle Parkway, Redwood Shores, CA 94065 USA.
Все права защищены. Использование регулируется условиями лицензии и политикой распространения документации.

© 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.
https://docs.oracle.com/en/java/javase/25/docs/api/java.sql.rowset/javax/sql/rowset/package-summary.html

Spec-Zone.ru

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