|
Spec-Zone .ru
спецификации, руководства, описания, API
|
public class DriverManager extends Object
Основная услуга для того, чтобы управлять рядом драйверов JDBC.
ОТМЕТЬТЕ: DataSource интерфейс, новый в JDBC 2.0 API, обеспечивает другой способ соединиться с источником данных. Использование a DataSource объект является привилегированными средствами соединения с источником данных.
Как часть его инициализации, DriverManager класс попытается загрузить классы драйвера, на которые ссылаются в "jdbc.drivers" системном свойстве. Это позволяет пользователю настраивать Драйверы JDBC, используемые их приложениями. Например в Вашем ~/.hotjava/properties файл Вы могли бы определить:
jdbc.drivers=foo.bah.Driver:wombat.sql.Driver:bad.taste.ourDriver
DriverManager методы getConnection и getDrivers были улучшены, чтобы поддерживать Java Standard Edition механизм Поставщика услуг. JDBC 4.0 Драйвера должен включать файл META-INF/services/java.sql.Driver. Этот файл содержит имя реализации драйверов JDBC java.sql.Driver. Например, чтобы загрузиться my.sql.Driver класс, META-INF/services/java.sql.Driver файл содержал бы запись:
my.sql.Driver
Приложения больше не должны к explictly загрузить использование драйверов JDBC Class.forName(). Существующие программы, которые в настоящий момент загружают использование драйверов JDBC Class.forName() будет продолжать работать без модификации.
Когда метод getConnection вызывается, DriverManager попытается определить местоположение подходящего драйвера от среди загруженных в инициализации и загруженных явно использование того же самого classloader как текущий апплет или приложение.
Запускаясь с Java, 2 SDK, Standard Edition, версия 1.3, поток журналирования могут быть установлены, только если надлежащее разрешение предоставили. Обычно это будет сделано с инструментом PolicyTool, который может использоваться, чтобы предоставить permission java.sql.SQLPermission "setLog".
Driver, Connection| Модификатор и Тип | Метод и Описание |
|---|---|
static void |
deregisterDriver(Driver driver)
Отбрасывает драйвер от
DriverManager's список. |
static Connection |
getConnection(String url)
Попытки установить соединение с данной базой данных URL.
|
static Connection |
getConnection(String url, Properties info)
Попытки установить соединение с данной базой данных URL.
|
static Connection |
getConnection(String url, String user, String password)
Попытки установить соединение с данной базой данных URL.
|
static Driver |
getDriver(String url)
Попытки определить местоположение драйвера, который понимает данный URL.
|
static Enumeration<Driver> |
getDrivers()
Получает Перечисление со всеми в настоящий момент загруженными драйверами JDBC, к которым у текущей вызывающей стороны есть доступ.
|
static int |
getLoginTimeout()
Получает максимальное время в секундах, что драйвер может ожидать, пытаясь войти в систему к базе данных.
|
static PrintStream |
getLogStream()
Осуждаемый.
|
static PrintWriter |
getLogWriter()
Получает писателя журнала.
|
static void |
println(String message)
Печатает сообщение к текущему потоку журнала JDBC.
|
static void |
registerDriver(Driver driver)
Регистрирует данный драйвер в
DriverManager. |
static void |
setLoginTimeout(int seconds)
Устанавливает максимальное время в секундах, которые драйвер будет ожидать, пытаясь соединить с базой данных.
|
static void |
setLogStream(PrintStream out)
Осуждаемый.
|
static void |
setLogWriter(PrintWriter out)
Устанавливает журналирование/трассировку
PrintWriter объект, который используется DriverManager и все драйверы. |
public static PrintWriter getLogWriter()
getLogWriter и setLogWriter методы должны использоваться вместо get/setlogStream методы, которые осуждаются.java.io.PrintWriter объектsetLogWriter(java.io.PrintWriter)public static void setLogWriter(PrintWriter out)
PrintWriter объект, который используется DriverManager и все драйверы. Есть незначительная проблема управления версиями, создаваемая введением метода setLogWriter. Метод setLogWriter не может создать a PrintStream объект, который будет возвращен getLogStream---платформа Java не обеспечивает обратное преобразование. В результате новое приложение, которое использует setLogWriter и также использует JDBC 1.0 драйвера, которые используют getLogStream не будет, вероятно, видеть отладочной информации, записанной тем драйвером.
Запускаясь с Java 2 SDK, Standard Edition, выпуск версии 1.3, этот метод проверки, чтобы видеть, что есть SQLPermission объект прежде, чем установить поток журналирования. Если a SecurityManager существует и checkPermission метод отрицает устанавливать писателя журнала, этот метод бросает a java.lang.SecurityException.
out - новое журналирование/трассировка PrintStream объект; null отключить журналирование и трассировкуSecurityException - если менеджер безопасности существует и checkPermission метод отрицает устанавливать писателя журналаSecurityManager.checkPermission(java.security.Permission), getLogWriter()public static Connection getConnection(String url, Properties info) throws SQLException
DriverManager попытки выбрать соответствующий драйвер из набора зарегистрированных драйверов JDBC.url - url базы данных формы jdbc:subprotocol:subnameinfo - список произвольной строки тегирует/оценивает пар как параметры соединения; обычно, по крайней мере, свойство "пользователя" и "пароля" должно быть включеноSQLException - если ошибка доступа к базе данных происходитpublic static Connection getConnection(String url, String user, String password) throws SQLException
DriverManager попытки выбрать соответствующий драйвер из набора зарегистрированных драйверов JDBC.url - url базы данных формы jdbc:subprotocol:subnameuser - пользователь базы данных, на имени которого делается соединениеpassword - пароль пользователяSQLException - если ошибка доступа к базе данных происходитpublic static Connection getConnection(String url) throws SQLException
DriverManager попытки выбрать соответствующий драйвер из набора зарегистрированных драйверов JDBC.url - url базы данных формы jdbc:subprotocol:subnameSQLException - если ошибка доступа к базе данных происходитpublic static Driver getDriver(String url) throws SQLException
DriverManager попытки выбрать соответствующий драйвер из набора зарегистрированных драйверов JDBC.url - база данных URL формы jdbc:subprotocol:subnameDriver объект, представляющий драйвер, который может соединиться с данным URLSQLException - если ошибка доступа к базе данных происходитpublic static void registerDriver(Driver driver) throws SQLException
DriverManager. Недавно загруженный класс драйвера должен вызвать метод registerDriver сделать себя известным DriverManager.driver - новый Драйвер JDBC, который должен быть зарегистрирован в DriverManagerSQLException - если ошибка доступа к базе данных происходитpublic static void deregisterDriver(Driver driver) throws SQLException
DriverManager's список. Апплеты могут только вычеркнуть из списка драйверы от своего собственного classloaders.driver - Драйвер JDBC, чтобы отброситьSQLException - если ошибка доступа к базе данных происходитpublic static Enumeration<Driver> getDrivers()
Отметьте: имя класса драйвера может быть найдено, используя d.getClass().getName()
public static void setLoginTimeout(int seconds)
seconds - ограничение по времени входа в систему в секундах; обнулите означает, что нет никакого пределаgetLoginTimeout()public static int getLoginTimeout()
setLoginTimeout(int)public static void setLogStream(PrintStream out)
DriverManager и все драйверы. В Java 2 SDK, Standard Edition, выпуск версии 1.3, этот метод проверки, чтобы видеть, что есть SQLPermission объект прежде, чем установить поток журналирования. Если a SecurityManager существует и checkPermission метод отрицает устанавливать писателя журнала, этот метод бросает a java.lang.SecurityException.
out - новое журналирование/трассировка PrintStream; чтобы отключить, установите в nullSecurityException - если менеджер безопасности существует и checkPermission метод отрицает устанавливать поток журналаSecurityManager.checkPermission(java.security.Permission), getLogStream()public static PrintStream getLogStream()
DriverManager и все драйверы.nullsetLogStream(java.io.PrintStream)public static void println(String message)
message - журнал или прослеживающий сообщение
Для дальнейшей ссылки API и документации разработчика, см. . Та документация содержит более подробные, предназначенные разработчиком описания, с концептуальными краткими обзорами, определениями сроков, обходных решений, и рабочих примеров кода.
Авторское право © 1993, 2011, Oracle и/или его филиалы. Все права защищены.