Класс DriverManager
public class DriverManager extends Object
ПРИМЕЧАНИЕ: Интерфейс DataSource предоставляет другой способ подключения к источнику данных. Использование объекта DataSource является предпочтительным способом подключения к источнику данных.
В качестве части своей инициализации класс DriverManager попытается загрузить доступные драйверы JDBC, используя:
- Свойство системы
jdbc.drivers, которое содержит список, разделенный двоеточием, полных квалифицированных имён классов драйверов JDBC. Каждый драйвер загружается с помощью системного загрузчика классов system class loader:-
jdbc.drivers=foo.bah.Driver:wombat.sql.Driver:bad.taste.ourDriver
-
- Поставщиков сервиса класса
java.sql.Driver, которые загружаются с помощью механизма загрузки поставщиков сервиса.
- Примечание по реализации:
-
DriverManagerинициализация выполняется лениво и ищет поставщиков сервиса, используя контекстный загрузчик классов потока. Драйверы, загруженные и доступные для приложения, будут зависеть от контекстного загрузчика классов потока потока, который запускает инициализацию драйвера с помощьюDriverManager.Когда вызывается метод
getConnection,DriverManagerпопытается найти подходящий драйвер среди тех, которые загружены во время инициализации, и тех, которые были загружены явно с использованием того же загрузчика классов, что и текущее приложение. - С момента:
- 1.1
- См. также:
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
static void |
deregisterDriver |
Удаляет указанный драйвер из списка зарегистрированных драйверов DriverManager. |
static Stream |
drivers() |
Возвращает поток со всеми текущими загруженными драйверами JDBC, к которым имеет доступ текущий вызывающий поток. |
static Connection |
getConnection |
Пытается установить соединение с указанной базой данных URL. |
static Connection |
getConnection |
Пытается установить соединение с указанной базой данных URL. |
static Connection |
getConnection |
Пытается установить соединение с указанной базой данных URL. |
static Driver |
getDriver |
Пытается найти драйвер, который понимает указанный URL. |
static Enumeration |
getDrivers() |
Возвращает перечисление со всеми текущими загруженными драйверами JDBC, к которым имеет доступ текущий вызывающий поток. |
static int |
getLoginTimeout() |
Получает максимальное время в секундах, которое драйвер может ждать при попытке входа в базу данных. |
static PrintStream |
getLogStream() |
Устарело. |
static PrintWriter |
getLogWriter() |
Возвращает запись журнала. |
static void |
println |
Выводит сообщение в текущий поток журнала JDBC. |
static void |
registerDriver |
Регистрирует указанный драйвер в DriverManager. |
static void |
registerDriver |
Регистрирует указанный драйвер в DriverManager. |
static void |
setLoginTimeout |
Устанавливает максимальное время в секундах, которое драйвер будет ждать при попытке подключения к базе данных после того, как драйвер будет идентифицирован. |
static void |
setLogStream |
Устарело. Используйте setLogWriter |
static void |
setLogWriter |
Устанавливает объект журнала/отслеживания PrintWriter, который используется DriverManager и всеми драйверами. |
Подробное описание методов
getLogWriter
public static PrintWriter getLogWriter()
getLogWriter и setLogWriter вместо устаревших методов get/setlogStream.- Возвращает:
- объект
java.io.PrintWriter - С:
- 1.2
- См. также:
setLogWriter
public static void setLogWriter(PrintWriter out)
DriverManager и всеми драйверами.- Параметры:
-
out- новый объект ведения журнала/отслеживания;nullдля отключения ведения журнала и отслеживания - С:
- 1.2
- См. также:
getConnection
public static Connection getConnection(String url, Properties info) throws SQLException
DriverManager пытается выбрать подходящий драйвер из набора зарегистрированных JDBC-драйверов. Примечание: Если свойство указано в качестве части url, а также в объекте Properties, то какой из значений будет иметь приоритет - определяется реализацией. Для максимальной переносимости приложение должно указывать свойство только один раз.
- Параметры:
-
url- URL базы данных в форматеjdbc:subprotocol:subname -
info- список произвольных пар тег/значение в качестве аргументов подключения; обычно должен включать хотя бы свойства "user" и "password" - Возвращает:
- соединение с URL
- Исключения:
-
SQLException- если произошла ошибка доступа к базе данных или URL некорректен -
SQLTimeoutException- когда драйвер определил, что значение таймаута, указанное методомsetLoginTimeout, было превышено, и по крайней мере попытался отменить текущую попытку подключения к базе данных
getConnection
public static Connection getConnection(String url, String user, String password) throws SQLException
DriverManager пытается выбрать подходящий драйвер из набора зарегистрированных JDBC-драйверов. Примечание: Если свойство user или password также указано в качестве части url, то какой из значений будет иметь приоритет - определяется реализацией. Для максимальной переносимости приложение должно указывать свойство только один раз.
- Параметры:
-
url- URL базы данных в форматеjdbc:subprotocol:subname -
user- пользователь базы данных, от имени которого создается соединение -
password- пароль пользователя - Возвращает:
- соединение с URL
- Исключения:
-
SQLException- если произошла ошибка доступа к базе данных или URL некорректен -
SQLTimeoutException- когда драйвер определил, что значение таймаута, указанное методомsetLoginTimeout, было превышено, и по крайней мере попытался отменить текущую попытку подключения к базе данных
getConnection
public static Connection getConnection(String url) throws SQLException
DriverManager пытается выбрать подходящий драйвер из набора зарегистрированных JDBC-драйверов.- Параметры:
-
url- URL базы данных в форматеjdbc:subprotocol:subname - Возвращает:
- соединение с URL
- Исключения:
-
SQLException- если произошла ошибка доступа к базе данных или URL некорректен -
SQLTimeoutException- когда драйвер определил, что значение таймаута, указанное методомsetLoginTimeout, было превышено, и по крайней мере попытался отменить текущую попытку подключения к базе данных
getDriver
public static Driver getDriver(String url) throws SQLException
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()
Примечание: Имя класса драйвера можно найти, используя d.getClass().getName()
- Возвращает:
- список JDBC-драйверов, загруженных загрузчиком классов вызывающего кода
- См. также:
drivers
public static Stream<Driver> drivers()
- Возвращает:
- поток JDBC-драйверов, загруженных загрузчиком классов вызывающего кода
- С:
- 9
setLoginTimeout
public static void setLoginTimeout(int seconds)
- Параметры:
-
seconds- лимит времени входа в систему в секундах; ноль означает отсутствие лимита - См. также:
getLoginTimeout
public static int getLoginTimeout()
- Возвращает:
- лимит времени входа в систему драйвера в секундах
- См. также:
setLogStream
@Deprecated(since="1.2") public static void setLogStream(PrintStream out)
setLogWriter
DriverManager и всеми драйверами.- Параметры:
-
out- новый поток PrintStream для ведения журнала/отслеживания; для отключения установите вnull - См. также:
getLogStream
@Deprecated(since="1.2") public static PrintStream getLogStream()
getLogWriter
DriverManager и всеми драйверами.- Возвращает:
- поток вывода PrintStream для ведения журнала/отслеживания; если отключено, возвращает
null - См. также:
println
public static void println(String message)
- Параметры:
-
message- сообщение для журнала или отслеживания
© 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/DriverManager.html
getLogWriter