Введение в JDBC

JDBC была одной из первых библиотек, разработанных для Java. Он был выпущен в 1997 году как часть JDK 1.1. Первоначально он был разработан для клиентской части (java.sql), где можно было поддерживать и управлять подключениями к базе данных, позволяя выполнять запросы, команды и манипулировать данными. В JDBC 2.0 также был включен необязательный пакет, поддерживающий подключения к серверной части (javax.sql). До сегодняшнего дня у нас постоянно есть обновления как для клиентских, так и для серверных пакетов.

Для чего используется JDBC?

JDBC расшифровывается как Java Database Connectivity, Java API, который управляет подключением к базе данных. Этот тип API называется «уровень вызова», что означает, что операторы SQL передаются в виде строк в API, который затем заботится об их выполнении в RDMS. Когда значение этой последовательности может быть изменено во время выполнения, мы можем считать JDBC динамическим, что позволяет переносить программу JDBC между различными системами с минимальными затратами.

Базы данных

Чтобы лучше понять потребность в JDBC, мы можем рассмотреть проект, в котором необходимо разработать тип настольного приложения Java и сделать интеграцию с MySQL, которая будет работать локально, и другим банком, таким как PostgreSQL, к которому будет обращаться сервер Windows. В случаях, когда требуются реляционные базы данных, необходимо иметь простой доступ с необходимыми ресурсами. Вот как JDBC API был представлен в JDK.

Реляционные базы данных по-прежнему составляют подавляющее большинство решений для работы с данными, представленных на рынке.

Java-пакеты

API состоит из пакетов java.sql и javax.sql, включенных в JavaSE. С помощью классов и интерфейсов, предоставляемых этими двумя пакетами, люди могут разрабатывать программное обеспечение, которое обращается к любому источнику данных, от реляционных баз данных до электронных таблиц.

JDBC и ODBC

До JDBC разработчики использовали ODBC — Open Database Connectivity — стандартный независимый от языка подход к доступу к системе управления реляционными базами данных или RDBMS.

Между JDBC и ODBC действительно есть сходство — ранее они использовались для подключения к базам данных. Это связано с тем, что JDBC был создан как источник вдохновения: приложения Java могли использовать любую базу данных, для которой был доступен драйвер ODBC из собственного кода. Таким образом, популярность JDBC возникла из-за драйвера ODBC, используемого для любой базы данных на рынке.

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

Драйверы

Драйвер JDBC — это класс, реализующий интерфейс java.sql.Driver. Многие драйверы полностью разработаны с использованием Java, что обеспечивает их динамическую загрузку.

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

Как и ODBC, JDBC также работает через драйверы, отвечающие за подключение к базе данных и выполнение инструкций SQL. Эти драйверы были разделены на четыре типа:

JDBC type 1: создается первым и устанавливает реальное соединение не с базой данных, а с ODBC. Его использование на сегодняшний день можно считать относительно низким, потому что он был написан на родном языке, что затрудняет переносимость и требует дополнительных настроек, которые могут перегрузить систему.

JDBC type 2: Это момент, когда драйвер устраняет любую зависимость от ODBC, но запись на родном языке сохраняется. Этот код разрешает вызовы клиентского API. Необходимо установить библиотеки нативного кода, где система будет выполняться как в типе 1, таким образом являясь драйвером, также не очень рекомендуемым из-за большого количества требований.

JDBC type 3: написанный на Java, он устраняет необходимость установки собственных библиотек кода, обеспечивая большую переносимость. Этот драйвер позволяет преобразовывать вызовы JDBC в общие вызовы сетевого протокола, которые затем могут быть преобразованы в конкретные вызовы API СУБД — промежуточный программный уровень.

JDBC тип 4: также полностью написан на Java, использует собственный сетевой протокол СУБД, преобразовывая вызовы JDBC в прямые вызовы СУБД без использования промежуточного клиентского API. Производительность выше, поскольку он напрямую обращается к системе управления базами данных.

Давай попрактикуемся?

В следующей статье мы покажем, как работает JDBC и как он связан с криптографией! Мы будем делиться практическим контентом только с членами нашего сообщества (Присоединяйтесь!), но если вам не хватает теории, несколько статей, которые могут помочь вам в вашей миссии стать лучшим разработчиком. безопасным способом:

О Волтри

Используемое шифрование Vaultree позволяет компаниям любого размера обрабатывать (искать и вычислять) полностью зашифрованные данные без необходимости расшифровки. Простое в использовании и интеграции, Vaultree обеспечивает максимальную производительность без ущерба для безопасности, нейтрализуя слабые места традиционного шифрования или других решений на основе технологии повышения конфиденциальности (PET). Следите за Vaultree в Twitter (@Vaultree), LinkedIn, Reddit (r/Vaultree) или dev.to. Посетите www.vaultree.com и подпишитесь на демонстрацию продукта и нашу рассылку новостей, чтобы быть в курсе разработки продукта и новостей компании.