Spec-Zone.ru › OpenJDK 27

Класс DriverManager

java.lang.Object
java.sql.DriverManager
public class DriverManager extends Object
Основная служба для управления набором драйверов JDBC.

ПРИМЕЧАНИЕ: Интерфейс DataSource предоставляет ещё один способ подключения к источнику данных. Использование объекта DataSource является предпочтительным способом подключения к источнику данных.

При инициализации класс DriverManager попытается загрузить доступные драйверы JDBC с помощью следующих средств:

  • Системное свойство jdbc.drivers, содержащее разделённый двоеточиями список полных имён классов драйверов JDBC. Каждый драйвер загружается с помощью системного загрузчика классов:
    • jdbc.drivers=foo.bah.Driver:wombat.sql.Driver:bad.taste.ourDriver
  • Поставщики служб класса java.sql.Driver, загружаемые с помощью механизма загрузки поставщиков служб.
Примечание по реализации:
Инициализация DriverManager выполняется отложенно, а поиск поставщиков служб — с помощью загрузчика классов контекста потока. Набор драйверов, загруженных и доступных приложению, зависит от загрузчика классов контекста потока, используемого потоком, который инициирует инициализацию драйверов посредством DriverManager.

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

С версии:
1.1
См. также:
  • Driver
  • Connection

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

Модификатор и тип Метод Описание
static void deregisterDriver(Driver driver)
Удаляет указанный драйвер из списка зарегистрированных драйверов объекта DriverManager.
static Stream<Driver> drivers()
Возвращает Stream со всеми загруженными в данный момент драйверами JDBC, к которым у текущего вызывающего кода есть доступ.
static Connection getConnection(String url)
Пытается установить соединение с указанным URL базы данных.
static Connection getConnection(String url, String user, String password)
Пытается установить соединение с указанным URL базы данных.
static Connection getConnection(String url, Properties info)
Пытается установить соединение с указанным URL базы данных.
static Driver getDriver(String url)
Пытается найти драйвер, поддерживающий указанный URL.
static Enumeration<Driver> getDrivers()
Возвращает Enumeration со всеми загруженными в данный момент драйверами JDBC, к которым у текущего вызывающего кода есть доступ.
static int getLoginTimeout()
Возвращает максимальное время в секундах, в течение которого драйвер может ожидать при попытке входа в базу данных.
static PrintStream getLogStream()
Устарело.
Используйте getLogWriter
static PrintWriter getLogWriter()
Возвращает средство записи журнала.
static void println(String message)
Выводит сообщение в текущий поток журнала JDBC.
static void registerDriver(Driver driver)
Регистрирует указанный драйвер в DriverManager.
static void registerDriver(Driver driver, DriverAction da)
Регистрирует указанный драйвер в DriverManager.
static void setLoginTimeout(int seconds)
Задаёт максимальное время в секундах, в течение которого драйвер будет ожидать при попытке подключиться к базе данных после идентификации драйвера.
static void setLogStream(PrintStream out)
Устарело.
Используйте setLogWriter
static void setLogWriter(PrintWriter out)
Задаёт объект PrintWriter для ведения журнала и трассировки, используемый объектом DriverManager и всеми драйверами.

Методы, объявленные в классе Object

clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Модификатор и тип Метод Описание
protected Object clone()
Создаёт и возвращает копию этого объекта.
boolean equals(Object obj)
Указывает, равен ли этот объект другому объекту.
protected void finalize()
Устарело, будет удалено: этот элемент API подлежит удалению в будущей версии.
Финализация устарела и подлежит удалению в одном из будущих выпусков.
final Class<?> getClass()
Возвращает класс времени выполнения этого объекта Object.
int hashCode()
Возвращает значение хеш-кода для этого объекта.
final void notify()
Пробуждает один поток, ожидающий на мониторе этого объекта.
final void notifyAll()
Пробуждает все потоки, ожидающие на мониторе этого объекта.
String toString()
Возвращает строковое представление объекта.
final void wait()
Переводит текущий поток в ожидание до его пробуждения, обычно посредством вызова notify или interrupt.
final void wait(long timeoutMillis)
Переводит текущий поток в ожидание до его пробуждения, обычно посредством вызова notify или interrupt, либо до истечения заданного промежутка реального времени.
final void wait(long timeoutMillis, int nanos)
Переводит текущий поток в ожидание до его пробуждения, обычно посредством вызова notify или interrupt, либо до истечения заданного промежутка реального времени.

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

getLogWriter

public static PrintWriter getLogWriter()
Возвращает средство записи журнала. Вместо устаревших методов get/setlogStream следует использовать методы getLogWriter и setLogWriter.
Возвращает:
объект java.io.PrintWriter
С версии:
1.2
См. также:
  • setLogWriter(PrintWriter)

setLogWriter

public static void setLogWriter(PrintWriter out)
Задаёт объект PrintWriter для ведения журнала и трассировки, используемый объектом DriverManager и всеми драйверами.
Параметры:
out — новый объект PrintStream для ведения журнала и трассировки; null отключает ведение журнала и трассировку
С версии:
1.2
См. также:
  • getLogWriter()

getConnection

public static Connection getConnection(String url, Properties info) throws SQLException
Пытается установить соединение с указанным URL базы данных. DriverManager пытается выбрать подходящий драйвер из набора зарегистрированных драйверов JDBC.

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

Параметры:
url — URL базы данных формата jdbc:subprotocol:subname
info — список произвольных пар «строковый тег/значение» в качестве аргументов подключения; обычно следует указать как минимум свойства "user" и "password"
Возвращает:
соединение с URL
Выбрасывает:
SQLException — если произошла ошибка доступа к базе данных или URL null
SQLTimeoutException — если драйвер установил, что превышено значение времени ожидания, заданное методом setLoginTimeout, и как минимум попытался отменить текущую попытку подключения к базе данных

getConnection

public static Connection getConnection(String url, String user, String password) throws SQLException
Пытается установить соединение с указанным URL базы данных. DriverManager пытается выбрать подходящий драйвер из набора зарегистрированных драйверов JDBC.

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

Параметры:
url — URL базы данных формата jdbc:subprotocol:subname
user — пользователь базы данных, от имени которого устанавливается соединение
password — пароль пользователя
Возвращает:
соединение с URL
Выбрасывает:
SQLException — если произошла ошибка доступа к базе данных или URL null
SQLTimeoutException — если драйвер установил, что превышено значение времени ожидания, заданное методом setLoginTimeout, и как минимум попытался отменить текущую попытку подключения к базе данных

getConnection

public static Connection getConnection(String url) throws SQLException
Пытается установить соединение с указанным URL базы данных. DriverManager пытается выбрать подходящий драйвер из набора зарегистрированных драйверов JDBC.
Параметры:
url — URL базы данных формата jdbc:subprotocol:subname
Возвращает:
соединение с URL
Выбрасывает:
SQLException — если произошла ошибка доступа к базе данных или URL null
SQLTimeoutException — если драйвер установил, что превышено значение времени ожидания, заданное методом setLoginTimeout, и как минимум попытался отменить текущую попытку подключения к базе данных

getDriver

public static Driver getDriver(String url) throws SQLException
Пытается найти драйвер, поддерживающий указанный URL. DriverManager пытается выбрать подходящий драйвер из набора зарегистрированных драйверов JDBC.
Параметры:
url — URL базы данных формата jdbc:subprotocol:subname
Возвращает:
объект Driver, представляющий драйвер, способный подключиться к указанному URL
Выбрасывает:
SQLException — если произошла ошибка доступа к базе данных

registerDriver

public static void registerDriver(Driver driver) throws SQLException
Регистрирует указанный драйвер в DriverManager. Вновь загруженный класс драйвера должен вызвать метод registerDriver, чтобы сообщить о себе объекту DriverManager. Если драйвер уже зарегистрирован, никаких действий не выполняется.
Параметры:
driver — новый драйвер JDBC, который необходимо зарегистрировать в DriverManager
Выбрасывает:
SQLException — если произошла ошибка доступа к базе данных
NullPointerException — если driver имеет значение null

registerDriver

public static void registerDriver(Driver driver, DriverAction da) throws SQLException
Регистрирует указанный драйвер в DriverManager. Вновь загруженный класс драйвера должен вызвать метод registerDriver, чтобы сообщить о себе объекту DriverManager. Если драйвер уже зарегистрирован, никаких действий не выполняется.
Параметры:
driver — новый драйвер JDBC, который необходимо зарегистрировать в DriverManager
da — реализация DriverAction, используемая при вызове DriverManager#deregisterDriver
Выбрасывает:
SQLException — если произошла ошибка доступа к базе данных
NullPointerException — если driver имеет значение null
С версии:
1.8

deregisterDriver

public static void deregisterDriver(Driver driver) throws SQLException
Удаляет указанный драйвер из списка зарегистрированных драйверов объекта DriverManager.

Если для удаляемого драйвера указано значение null, никаких действий не выполняется.

Если указанный драйвер не найден в списке зарегистрированных драйверов, никаких действий не выполняется. Если драйвер найден, он будет удалён из списка зарегистрированных драйверов.

Если при регистрации драйвера JDBC был указан экземпляр DriverAction, его метод deregister будет вызван до удаления драйвера из списка зарегистрированных драйверов.

Параметры:
driver — удаляемый драйвер JDBC
Выбрасывает:
SQLException — если произошла ошибка доступа к базе данных

getDrivers

public static Enumeration<Driver> getDrivers()
Возвращает Enumeration со всеми загруженными в данный момент драйверами JDBC, к которым у текущего вызывающего кода есть доступ.

Примечание: Имя класса драйвера можно получить с помощью d.getClass().getName()

Возвращает:
список драйверов JDBC, загруженных загрузчиком классов вызывающего кода
См. также:
  • drivers()

drivers

public static Stream<Driver> drivers()
Возвращает Stream со всеми загруженными в данный момент драйверами JDBC, к которым у текущего вызывающего кода есть доступ.
Возвращает:
поток драйверов JDBC, загруженных загрузчиком классов вызывающего кода
С версии:
9

setLoginTimeout

public static void setLoginTimeout(int seconds)
Задаёт максимальное время в секундах, в течение которого драйвер будет ожидать при попытке подключиться к базе данных после идентификации драйвера.
Параметры:
seconds — ограничение времени входа в секундах; ноль означает отсутствие ограничения
См. также:
  • getLoginTimeout()

getLoginTimeout

public static int getLoginTimeout()
Возвращает максимальное время в секундах, в течение которого драйвер может ожидать при попытке входа в базу данных.
Возвращает:
ограничение времени входа в систему для драйвера в секундах
См. также:
  • setLoginTimeout(int)

setLogStream

@Deprecated(since="1.2") public static void setLogStream(PrintStream out)
Устарело.
Используйте setLogWriter
Задаёт PrintStream для ведения журнала и трассировки, используемый объектом DriverManager и всеми драйверами.
Параметры:
out — новый PrintStream для ведения журнала и трассировки; чтобы отключить, задайте null
См. также:
  • getLogStream()

getLogStream

@Deprecated(since="1.2") public static PrintStream getLogStream()
Устарело.
Используйте getLogWriter
Возвращает PrintStream для ведения журнала и трассировки, используемый объектом DriverManager и всеми драйверами.
Возвращает:
PrintStream для ведения журнала и трассировки; если отключено, возвращается null
См. также:
  • setLogStream(PrintStream)

println

public static void println(String message)
Выводит сообщение в текущий поток журнала JDBC.
Параметры:
message — сообщение журнала или трассировки

Сообщить об ошибке или предложить улучшение
Дополнительную справочную информацию по API и документацию для разработчиков см. в документации Java SE, содержащей более подробные описания для разработчиков, обзор основных понятий, определения терминов, обходные решения и примеры рабочего кода. Другие версии.
Java является товарным знаком или зарегистрированным товарным знаком Oracle и/или её аффилированных лиц в США и других странах.
Авторское право © 1993, 2026, 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.

Spec-Zone.ru

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