Spec-Zone.ru › OpenJDK 25

Интерфейс Driver

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

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

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

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

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

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

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

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

Начиная с версии:
1.1
См. также:
  • DriverManager
  • Connection
  • DriverAction

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

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

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

connect

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

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

Аргумент 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 предназначен для того, чтобы универсальный инструмент с графическим интерфейсом мог определить, какие сведения ему следует запросить у пользователя для подключения к базе данных. Обратите внимание, что в зависимости от уже указанных пользователем значений могут потребоваться дополнительные значения, поэтому может понадобиться выполнить несколько последовательных вызовов метода 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
Возвращает родительский Logger для всех Logger, используемых этим драйвером. Это должен быть Logger, наиболее удаленный от корневого Logger, который при этом является предком всех Logger, используемых этим драйвером. Настройка этого Logger повлияет на все сообщения журнала, создаваемые драйвером. В худшем случае им может быть корневой Logger.
Возвращает:
родительский Logger для этого драйвера
Выбрасывает:
SQLFeatureNotSupportedException - если драйвер не использует java.util.logging.
Начиная с версии:
1.7

Сообщить об ошибке или предложить улучшение
Дополнительную справочную информацию по 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/java/sql/Driver.html

Spec-Zone.ru

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