Класс DriverManager
public class DriverManager extends Object
ПРИМЕЧАНИЕ: Интерфейс 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
- См. также:
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
static void |
deregisterDriver |
Удаляет указанный драйвер из списка зарегистрированных драйверов в DriverManager. |
static Stream |
drivers() |
Возвращает Stream со всеми загруженными в данный момент драйверами JDBC, к которым имеет доступ текущий вызывающий код. |
static Connection |
getConnection |
Пытается установить соединение с указанным URL базы данных. |
static Connection |
getConnection |
Пытается установить соединение с указанным URL базы данных. |
static Connection |
getConnection |
Пытается установить соединение с указанным URL базы данных. |
static Driver |
getDriver |
Пытается найти драйвер, который поддерживает указанный URL. |
static Enumeration |
getDrivers() |
Возвращает Enumeration со всеми загруженными в данный момент драйверами 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()
get/setlogStream следует использовать методы getLogWriter и setLogWriter.- Возвращает:
- объект
java.io.PrintWriter - С версии:
- 1.2
- См. также:
setLogWriter
public static void setLogWriter(PrintWriter out)
PrintWriter для ведения журнала/трассировки, используемый DriverManager и всеми драйверами.- Параметры:
-
out— новый объектPrintStreamдля ведения журнала/трассировки;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— если произошла ошибка доступа к базе данных или URLnull -
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— если произошла ошибка доступа к базе данных или URLnull -
SQLTimeoutException— когда драйвер определил, что превышено значение времени ожидания, заданное методомsetLoginTimeout, и как минимум попытался отменить текущую попытку подключения к базе данных
getConnection
public static Connection getConnection(String url) throws SQLException
DriverManager пытается выбрать подходящий драйвер из набора зарегистрированных драйверов JDBC.- Параметры:
-
url— URL базы данных в форматеjdbc:subprotocol:subname - Возвращает:
- соединение с URL
- Выбрасывает:
-
SQLException— если произошла ошибка доступа к базе данных или URLnull -
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://docs.oracle.com/en/java/javase/25/docs/api/java.sql/java/sql/DriverManager.html
getLogWriter