English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
JDBC драйверы реализуют определенный интерфейс в JDBC API, предназначенный для взаимодействия с сервером базы данных.
Например, используя JDBC драйвер, вы можете открыть соединение с базой данных и взаимодействовать с ней, отправляя SQL или команды базы данных, а затем получая результаты с помощью Java.
Включенный в JDK Java.sql Пакет содержит различные классы, которые определяют его поведение, и его фактическая реализация выполняется в сторонних драйверах. Третий поставщик реализует это в своих драйверах базы данных java.sql.Driver Интерфейс.
Реализация JDBC драйверов различается в зависимости от множества операционных систем и платформ оборудования, на которых Java работает. Sun разделил реализации на четыре типа, namely тип 1, 2, 3 и 4, и далее их будет объяснено-
В драйвере Type 1 JDBC-bridge используется для доступа к драйверам ODBC, установленных на каждом клиентском компьютере. Для использования ODBC необходимо настроить на системе имя источника данных (DSN), представляющее целевую базу данных.
Когда Java впервые появилась, это был полезный драйвер, так как большинство баз данных поддерживали только доступ ODBC, но теперь рекомендуется использовать такие драйверы только для экспериментальных целей или в том случае, если нет других доступных альтернатив.
JDBC-ODBC Bridge, включенный в JDK 1.2, является отличным примером такого драйвера.
В драйвере Type 2 вызовы JDBC API преобразуются в уникальные для базы данных вызовы native C / C ++ API. Эти драйверы обычно предоставляются поставщиками базы данных и используются так же, как и JDBC-ODBC Bridge. Драйверы специфичные для поставщика должны быть установлены на каждом клиентском компьютере.
Если изменяется база данных, необходимо изменить.native API, так как он специфичен для базы данных и теперь устарел, но использование драйвера Type 2 может повысить скорость, так как он устраняет издержки ODBC.
Oracle Call Interface (OCI) драйвер является примером драйвера Type 2.
В драйвере Type 3 используется метод тройного уровня для доступа к базе данных. Клиент JDBC использует стандартные сетевые сокеты для comunicación с промежуточным приложением сервера. Затем информация о сокете преобразуется приложением сервера中间ника в формат вызова, необходимый для DBMS, и转发ится серверу базы данных.
Этот драйвер очень гибок, так как не требует установки никакого кода на клиенте, и один драйвер может фактически предоставлять доступ к нескольким базам данных.
Вы можете рассматривать приложение сервер как JDBC «посредника», что означает, что он делает вызовы от клиента приложения. Таким образом, вам нужно знать что-то о конфигурации приложения сервера, чтобы эффективно использовать этот тип драйвера.
Ваше приложение сервер может использовать драйверы типа 1, 2 или 4 для связи с базой данных, знание тонкостей может оказаться полезным.
В драйверах типа 4 на основе Java чистые драйверы напрямую общаются с базой данных поставщика через сокеты. Это наиболее производительные драйверы для базы данных, которые обычно предоставляются самим поставщиком.
Этот драйвер очень гибок, и вам не нужно устанавливать speciale software на клиенте или сервере. Кроме того, эти драйверы можно загружать динамически.
Драйвер Connector/J для MySQL является драйвером типа 4. Из-за специфичности его сетевого протокола поставщики баз данных обычно предоставляют драйверы класса 4.
Если вам нужно доступа к одному типу базы данных, например Oracle, Sybase или IBM, то предпочтительным драйвером типа является 4.
Если ваше Java-приложение одновременно доступа к нескольким типам баз данных, то тип 3 является предпочтительным драйвером.
Тип 2 драйвера полезен в том случае, если в вашей базе данных еще не могут использоваться драйверы типа 3 или 4.
Тип 1 драйвера не рассматривается как драйвер уровня развертывания, обычно используется только для целей разработки и тестирования.