10 - Драйвер моста JDBC-ODBC
10.1 Мост JDBC-ODBC
Там, где это возможно, используйте Pure
Java JDBC driver вместо моста меду JDBC и ODBC, как как в этот случай не требует
дополнительной конфигурации ODBC на клиенте. Кроме того, Вы избавлены от
потенциальной возможности краха Java VM из-за ошибки в ODBC.
10.1.1 Что такое мост JDBC-ODBC?
Мост JDBC-ODBC - это
драйвер JDBC, реализующий операции JDBC путем трансляции их в операции ODBC. С
точки зрения ODBC - это обычное приложение. Мост таким образом предоставляет
JDBC-интерфейс к любым СУБД, для которых доступен ODBC-драйвер. Мост реализован
в виде пакета sun.jdbc.odbc
и содержит native library для доступа к
ODBC. Этот мост - совместная разработка Intersolv и JavaSoft.
10.1.2 Какая версия ODBC поддерживается?
Мост поддерживает ODBC 2.x. Это та версия, которую многие
ODBC-драйверы в настоящее время поддерживают. Мост работает также с драйверами
ODBC 3.x.
10.1.3 Реализация моста
Мост реализован
на Java и использует Java native методы для вызова ODBC.
10.1.4 Установка
Мост устанавливается автоматически вместе
с JDK как пакет sun.jdbc.odbc
. См. информацию от поставщика Вашего
ODBC-драйвера по установке и конфигурации ODBC. Для моста не требуется
специальное конфигурирование.
10.2 Использование моста
Мост используется для открытия
JDBC-соединения с использованием URL с подпротоколом odbc
. См. ниже
примеры URL. Перед установлением соединения должен быть загружен класс драйвера
моста sun.jdbc.odbc.JdbcOdbcDriver
, т.е. либо добавлен в свойство
класса java.lang.System
с именем jdbc.drivers
, либо
явно быть загруженным с помощью загрузчика Java-классов. Явная загрузка
осуществляется следующим фрагментом кода:
Class.forName(sun.jdbc.odbc.JdbcOdbcDriver);
При загрузке класса происходит регистрация нового
драйвера моста в JDBC.
10.2.1 Использование моста из апплета
Pure Java JDBC-драйверы (тип 4, см. intro.doc.html) хорошо
работают с апплетами. Драйвер же моста не очень хорошо работает в апплетах.
10.2.2 Многие навигаторы не поддерживают мост
Так как мост
- это необязательная компонента JDK, он может быть исключен в веб-навигаторе. И
даже если он имеется, то его использовать могут только доверяемые апплеты (т.е.
те, которым разрешено писать в файлы). Это сделано с целью сохранить изоляцию
апплетов от внешней среды. И даже если апплет доверяемый, необходимо на каждом
клиентском месте сконфигурировать ODBC.
10.2.6 Что представляет собой JDBC-URL для моста?
Драйвер
моста использует подпротокол odbc
. URL-ы для этого подпротокола
имеют следующий вид:
jdbc:odbc:<data-source-name>[<attribute-name>=<attribute-value>]*
Например:
jdbc:odbc:sybase
jdbc:odbc:mydb;UID=me;PWD=secret
jdbc:odbc:ora123;Cachesize=300
10.2.7 Отладка
Мост предоставляет
возможности расширенной трассировки в случае, когда в DriverManager
разрешена трассировка. Следующая строка кода разрешает трассировку и направляет
ее в стандартный вывод:
java.sql.DriverManager.setLogStream(java.lang.System.out);
10.3 Общие замечания
Мост рассчитан на
нереентерабельные драйверы ODBC. Это означает, что мост синхронизирует доступ к
этим драйверам. В результате мост предоставляет ограниченную конкурентность
пользователей. Это и является основным ограничением моста. В отличие от него,
многие драйверы JDBC типа 4 (Pure Java) предоставляют требуемый уровень
конкурентности.
Содержание | Предыдущий |
Следующий
Главная страница