Рубрики
Без рубрики

Типы драйверов JDBC

Драйверы JDBC, Типы драйверов JDBC, драйвер ODBC JDBC, Схема архитектуры драйвера JDBC, Тонкий драйвер JDBC, сетевой драйвер JDBC, преимущества и недостатки

Автор оригинала: Pankaj Kumar.

Драйвер JDBC-это программный компонент, который позволяет приложению Java взаимодействовать с базой данных. С помощью драйвера JDBC приложение становится способным отправлять запросы в базу данных и получать результаты.

В этом уроке мы попытаемся ответить на некоторые простые, но важные вопросы, связанные с этими драйверами jdbc, например, как они делают то, что они делают, сколько существует типов драйверов и т.д. JDBC означает подключение к базе данных Java.

Как работает драйвер JDBC?

API Java JDBC (Интерфейс прикладного программирования) представляет собой набор интерфейсов, построенных на основе спецификации JavaSoft. Эти интерфейсы состоят из набора контрактных (или абстрактных) методов, с которыми должны согласиться его реализации или которые должны быть реализованы в соответствии с ним. Это означает, что драйверы JDBC на самом деле представляют собой набор классов, реализующих эти интерфейсы.

Поскольку драйверы JDBC соответствуют спецификации JavaSoft, они могут практически получать доступ к любой базе данных, выполнять команды с помощью электронных таблиц и даже некоторых форматов плоских файлов! Единственное условие заключается в том, что для этой базы данных на основе SQL должен существовать драйвер JDBC.

Типы драйверов JDBC

В этом разделе мы рассмотрим типы драйверов JDBC. Но подождите! Разве мы не говорили, что JDBC следует спецификации, но все равно существует несколько типов? Да, спецификация просто сообщает, что должно быть сделано, а не как это должно быть сделано.

В целом, типы драйверов JDBC используются для классификации технологии, используемой для подключения к базе данных. Давайте посмотрим на каждого из них здесь.

  1. Тип 1 – Драйверы мостов

Драйверы типа 1 называются драйверами мостов. Эти драйверы моста преобразуют все вызовы запросов JDBC в вызовы ODBC. Это является преимуществом, поскольку существует множество драйверов для технологии подключения к открытым базам данных (ODBC), что означает, что драйверы типа 1 существуют и для всех этих баз данных.

Из-за следующих недостатков драйвер типа 1 редко используется в производственных приложениях:

  • Запросы выполняются медленно, так как им необходимо выполнить преобразование ODBC с последующим преобразованием собственной базы данных.
  • Драйвер моста должен быть установлен в хост-приложении, что не всегда возможно.
  1. Тип 2 – Собственный API

Драйверы типа 2 называются собственными драйверами. Эти собственные драйверы преобразуют все вызовы JDBC в собственные вызовы базы данных API. Драйверы типа 2 работают быстрее, чем драйверы моста типа 1, поскольку преобразование происходит непосредственно в операции с БД. Этот API не полностью написан на Java, так как он также имеет доступ к собственному коду базы данных.

Из-за следующих недостатков драйверы типа 2 редко используются в производственных приложениях:

  • Необходимо установить клиентскую библиотеку для базы данных, что не всегда возможно.
  • Не многие поставщики баз данных предоставляют собственную клиентскую библиотеку.
  1. Тип 3 – Сетевой протокол

Драйверы типа 3 называются драйверами сетевого протокола или промежуточного программного обеспечения. Эти драйверы сетевых протоколов преобразуют все вызовы JDBC в вызовы, относящиеся к конкретной базе данных. Если приложению Java необходимо одновременно обращаться к нескольким типам баз данных, предпочтительным драйвером является тип 3.

Драйверы типа 3 являются наиболее часто используемыми драйверами в производственных приложениях благодаря следующим преимуществам:

  • Драйверы JDBC типа 3 являются наиболее гибкими драйверами JDBC, поскольку им не требуется собственный двоичный код на клиентском компьютере.
  • Приложение промежуточного программного обеспечения может выполнять множество других функций, помимо логики JDBC, таких как кэширование, балансировка нагрузки на серверах баз данных и т.д. что является общим повышением производительности для любого приложения JEE.

Драйвер типа 3 также имеет некоторые недостатки:

  • Уровень промежуточного программного обеспечения приложения также нуждается в некотором кодировании для конкретной базы данных. Обычно это приемлемое решение из-за гибкости, которую оно предлагает.
  • Приложение промежуточного программного обеспечения может увеличить задержку. Но это может быть улучшено за счет улучшения стандартов кодирования и т. Д.

Кроме того, класс диспетчера драйверов-это полностью реализованный класс, который соединяет приложение с источником данных, указанным в URL-адресе базы данных.

  1. Тип 4 – Собственный протокол

Драйверы типа 4 называются драйверами собственного протокола или промежуточного программного обеспечения. Эти собственные драйверы протоколов преобразуют все вызовы JDBC в прямые вызовы баз данных, зависящие от поставщика. Драйвер типа 4 написан исключительно на Java и не зависит от платформы.

Драйверы типа 4 имеют большое преимущество в том, что для них не требуется никакого промежуточного программного обеспечения. Таким образом, производительность значительно улучшается. Но драйверы зависят от базы данных, и поэтому все поставщики могут не предоставлять драйвер типа 4 для его использования.

Как определить, какой драйвер использовать для JDBC?

Нам нужно решить это на основе базы данных, которую мы используем в нашем приложении.

Например:

  • В случае MySQL нам нужно использовать драйвер jdbc для MySQL, предоставленный здесь .
  • В случае Oracle мы можем использовать драйвер jdbc, предоставленный Oracle. здесь .

Вы можете найти драйверы JDBC на официальном сайте выбранной базы данных. Это зависит от версии JDK, а также версии БД.

Вывод

В этом уроке мы классифицировали 4 вида драйверов JDBC и рассмотрели их преимущества и недостатки, а также причины их использования в производственных веб-приложениях.

Не стесняйтесь делиться своими мнениями в комментариях ниже.