Spec-Zone.ru › OpenJDK 24

Интерфейс драйвера

public interface Driver
Интерфейс, который должен реализовывать каждый класс драйвера.

В рамках Java SQL фреймворка поддерживаются несколько драйверов баз данных.

Каждый драйвер должен предоставлять класс, реализующий интерфейс Driver.

DriverManager будет пытаться загрузить как можно больше драйверов, а затем, для любого запроса на подключение, он будет по очереди просить каждый драйвер попытаться подключиться к целевому URL.

Настоятельно рекомендуется, чтобы каждый класс Driver был небольшим и автономным, чтобы класс Driver можно было загрузить и запросить, не загружая огромные объемы вспомогательного кода.

При загрузке класса Driver он должен создать экземпляр самого себя и зарегистрировать его в DriverManager. Это означает, что пользователь может загрузить и зарегистрировать драйвер, вызвав:

Class.forName("foo.bah.Driver")

Драйвер JDBC может создать реализацию DriverAction, чтобы получать уведомления при вызове DriverManager.deregisterDriver(java.sql.Driver).

С:
1.1
См. также:
  • DriverManager
  • Connection
  • DriverAction

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

Модификатор и тип Метод Описание
boolean acceptsURL(String url)
Возвращает, считает ли драйвер, что может открыть подключение к указанному URL.
Connection connect(String url, Properties info)
Пытается установить подключение к базе данных по заданному URL.
int getMajorVersion()
Возвращает номер основной версии драйвера.
int getMinorVersion()
Возвращает номер дополнительной версии драйвера.
Logger getParentLogger()
Возвращает родительский логгер всех логгеров, используемых этим драйвером.
DriverPropertyInfo[] getPropertyInfo(String url, Properties info)
Получает информацию о возможных свойствах для этого драйвера.
boolean jdbcCompliant()
Сообщает, является ли этот драйвер настоящим JDBC-совместимым драйвером.

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

connect

Connection connect(String url, Properties info) throws SQLException
Пытается установить подключение к базе данных по заданному URL. Драйвер должен вернуть "null", если он понимает, что не является подходящим драйвером для подключения к заданному URL. Это часто происходит, когда диспетчер JDBC-драйверов пытается подключиться к заданному URL, передавая URL каждому загруженному драйверу по очереди.

Драйвер должен выбросить SQLException, если он является подходящим драйвером для подключения к заданному URL, но испытывает проблемы с подключением к базе данных.

Аргумент Properties может быть использован для передачи произвольных пар тег/значение в качестве аргументов подключения. Обычно в объект Properties должны быть включены как минимум свойства "user" и "password".

Примечание: Если свойство указано в url и также указано в Properties объекте, то какой именно значение будет приоритетным, определяется реализацией. Для максимальной переносимости приложение должно указывать свойство только один раз.

Параметры:
url - URL базы данных, к которой нужно подключиться
info - список произвольных пар тег/значение в качестве аргументов подключения. Обычно должны быть включены как минимум свойства "user" и "password".
Возвращает:
объект Connection, представляющий подключение к URL
Изначает исключения:
SQLException - если произошла ошибка доступа к базе данных или url является null

acceptsURL

boolean acceptsURL(String url) throws SQLException
Возвращает, считает ли драйвер, что может открыть подключение к указанному URL. Обычно драйверы возвращают true, если они понимают подпротокол, указанный в URL, и false, если они его не понимают.
Параметры:
url - URL базы данных
Возвращает:
true, если этот драйвер понимает данный URL; false в противном случае
Изначает исключения:
SQLException - если произошла ошибка доступа к базе данных или url является null

getPropertyInfo

DriverPropertyInfo[] getPropertyInfo(String url, Properties info) throws SQLException
Получает информацию о возможных свойствах для этого драйвера.

Метод getPropertyInfo предназначен для того, чтобы позволить универсальному инструменту GUI обнаружить, какие свойства необходимо запросить у пользователя, чтобы получить достаточную информацию для подключения к базе данных. Обратите внимание, что в зависимости от предоставленных пользователем значений, могут потребоваться дополнительные значения, поэтому может потребоваться итерация по нескольким вызовам метода getPropertyInfo.

Параметры:
url - URL базы данных, к которой нужно подключиться
info - предлагаемый список пар тег/значение, которые будут отправлены при открытии подключения
Возвращает:
массив объектов DriverPropertyInfo, описывающих возможные свойства. Этот массив может быть пустым, если свойства не требуются.
Изначает исключения:
SQLException - если произошла ошибка доступа к базе данных

getMajorVersion

int getMajorVersion()
Возвращает номер основной версии драйвера. Изначально должен быть 1.
Возвращает:
номер основной версии драйвера

getMinorVersion

int getMinorVersion()
Возвращает номер дополнительной версии драйвера. Изначально должен быть 0.
Возвращает:
номер дополнительной версии драйвера

jdbcCompliant

boolean jdbcCompliant()
Сообщает, является ли этот драйвер настоящим JDBC-совместимым драйвером. Драйвер может указать true только в том случае, если он прошёл тесты на соответствие стандарту JDBC, в противном случае необходимо вернуть false.

Соответствие стандарту JDBC требует полной поддержки API JDBC и полной поддержки SQL 92 Entry Level. Ожидается, что JDBC-совместимые драйверы будут доступны для всех основных коммерческих баз данных.

Этот метод не призван поощрять разработку несовместимых с JDBC драйверов, а скорее признает тот факт, что некоторые поставщики заинтересованы в использовании API и фреймворка JDBC для легких баз данных, которые не поддерживают полный функционал базы данных, или для специальных баз данных, таких как системы поиска документов, где реализация SQL может быть нецелесообразной.

Возвращает:
true, если этот драйвер JDBC-совместим; false в противном случае

getParentLogger

Logger getParentLogger() throws SQLFeatureNotSupportedException
Возвращает родительский логгер всех логгеров, используемых этим драйвером. Это должен быть логгер, наиболее удалённый от корневого логгера, но всё ещё являющийся предком всех логгеров, используемых этим драйвером. Настройка этого логгера повлияет на все сообщения логгирования, генерируемые драйвером. В худшем случае, это может быть корневой логгер.
Возвращает:
родительский логгер для этого драйвера
Изначает исключения:
SQLFeatureNotSupportedException - если драйвер не использует java.util.logging.
С:
1.7

© 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://download.java.net/java/early_access/jdk24/docs/api/java.sql/java/sql/Driver.html

Spec-Zone.ru

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