Вступ до архітектури JDBC

Підключення до бази даних Java (JDBC) - це API (інтерфейс прикладної програми) або незалежний від платформи інтерфейс, який допомагає з'єднувати програми Java з різними базами даних, такими як Oracle, My SQL, MS Access та SQL Server. Він надає способи запиту та оновлення бази даних за допомогою операторів оновлення Structured Query Language (SQL), таких як CREATE, DELETE, INSERT та UPDATE, а також операторів запитів, таких як SELECT. Він майже схожий на ODBC (Open Database Connectivity), який надав Microsoft.

Щоб підключити програму або програму java до бази даних, слід виконати п'ять кроків:

1. Завантажте драйвер: драйвер допомагає встановити з'єднання з базою даних, отже, драйвер повинен бути завантажений один раз у програмі. Це можна зробити двома методами:

  • Class.forName (): За допомогою цього файл класу драйверів завантажується в пам'ять під час виконання. Не потрібно створювати новий об’єкт. Наприклад:

Class.forName(“oracle.jdbc.driver.OracleDriver”);

  • DriverManager.registerDriver (): Тут DriverManager - це вбудований клас Java, де реєстр є його статичним членом. Використовуючи це, конструктор класу драйверів викликається під час компіляції. У цьому створюється новий об’єкт. Наприклад:

DriverManager.registerDriver(new oracle.jdbd.driver.OracleDriver());

2. Створення з'єднань: після завантаження драйвера встановлюється з'єднання. Об'єкт з'єднання використовує ім'я користувача, пароль та URL для налаштування з'єднання. URL має заздалегідь визначений формат, який містить ім'я бази даних, використовуваний драйвер, IP-адресу, де зберігається база даних, номер порту та постачальник послуг. З'єднання можна встановити за допомогою команди:

Connection con = DriverManager.getConnection(URL, user, password);

3. Створення заяви: Після встановлення з'єднання користувач може взаємодіяти з базою даних. Інтерфейси, такі як оператор JDBC, PreparedStatement, CallableStatement, надають методи, що дозволяють користувачеві надсилати SQL заяви та отримувати дані з бази даних. Команда, яка використовується для створення оператора, є;

Statement stmt = con.createStatement();

4. Виконання запиту: SQL-запит виконується для взаємодії з базою даних. Запит може бути оновленням / вставкою в базу даних або для отримання даних. Інтерфейс оператора забезпечує два способи, тобто метод ExecuteQuery () для виконання запитів для отримання даних, а метод ExecuteUpdate () для виконання запитів на оновлення або вставлення. Наприклад:

int n = stmt.executeUpdate(“DELETE TABLENAME”);
if(n==1)
System.out.println(“Success”);
else
System.out.println(“Failed”);

5. Закриття з'єднання: Після виконання нашого запиту користувач даних хотів оновити або отримати, було зроблено, тож прийшов час закрити встановлене з'єднання. Інтерфейс з'єднання забезпечує метод close () для закриття з'єднання. Наприклад:

con.close();

JDBC Архітектура

JDBC підтримує два типи моделей обробки для доступу до бази даних, тобто дворівневу та трирівневу.

1. Дворівнева архітектура:

Ця архітектура допомагає програмі або додатку Java безпосередньо спілкуватися з базою даних. Для комунікації з певною базою даних йому потрібен драйвер JDBC. Користувач надсилає запит або запит до бази даних, а користувач отримує результати. База даних може бути присутнім на одному пристрої або будь-якому віддаленому пристрої, підключеному через мережу. Цей підхід називається архітектура або конфігурація клієнт-сервер.

2. Трирівнева архітектура:

У цьому прямого зв’язку немає. Запити надсилаються до середнього рівня, тобто браузер HTML надсилає запит додатку java, який далі надсилається до бази даних. База даних обробляє запит і повертає результат назад в середній рівень, який потім спілкується з користувачем. Це підвищує продуктивність і спрощує розгортання програми.

Компоненти архітектури JDBC

  • Менеджер драйверів: це клас, який містить список усіх драйверів. Коли надходить запит на з'єднання, він відповідає запиту відповідному драйверу бази даних, використовуючи протокол, який називається підпротоколом зв'язку. Драйвер, який відповідає, використовується для встановлення з'єднання.
  • Драйвер: це інтерфейс, який контролює зв'язок із сервером бази даних. Об'єкти DriverManager використовуються для здійснення зв'язку.
  • Підключення: це інтерфейс, який містить способи зв’язатися з базою даних.
  • Заява: Цей інтерфейс створює об'єкт для подання SQL запитів або заяв до бази даних.
  • ResultSet: Тут містяться результати, отримані після виконання SQL-операторів або запитів.
  • SQLException: Цей клас обробляє будь-які помилки в застосуванні бази даних.

Основна архітектурна схема JDBC показана нижче з позиціонуванням усіх компонентів:

Інтерфейси

Пакет java.sql складається з багатьох інтерфейсів. Нижче згадуються деякі популярні інтерфейси:

  • Інтерфейс драйвера: Цей інтерфейс дозволяє використовувати декілька драйверів баз даних. Об'єкти DriverManager створені для зв'язку з базою даних. Ці об'єкти створені DriverManager.registerDriver ();
  • Інтерфейс підключення: Інтерфейс з'єднання встановлює з'єднання, тобто сеанс між програмою Java та базою даних. У ньому є багато методів, таких як відкат (), закриття () тощо.
  • Інтерфейс заяви: Цей інтерфейс надає методи для виконання SQL запитів. Він надає фабричні методи отримання об’єкта ResultSet. Деякі методи інтерфейсу операторів - ExecuteQuery (), ExecuteUpdate () тощо.
  • Інтерфейс PreparedStatement: Цей інтерфейс допомагає, коли запити SQL потрібно реалізовувати багато разів. Він приймає вхідні параметри під час виконання.
  • CallableStatement Interface: Цей інтерфейс використовується для доступу до збережених процедур. Він також приймає параметри під час виконання.
  • Інтерфейс ResultSet: Цей інтерфейс допомагає зберігати результат, повернутий після виконання SQL запитів.

Типи драйверів JDBC

Існує чотири типи драйверів JDBC:

1. Драйвер типу 1 або міст JDBC-ODBC: Цей драйвер є мостом між JDBC та ODBC. Він перетворює дзвінки JDBC у дзвінки ODBC, а потім надсилає запит драйверу ODBC. Він простий у використанні, але час виконання повільний.

2. Драйвер типу 2 драйвера або Native API Частково драйвер Java: Цей драйвер використовує JNI (Java Native Interface) виклик у специфічному API клієнтської бази даних. Він порівняно швидший, ніж драйвер типу 1, але він вимагає рідної бібліотеки, а вартість додатків також збільшується.

3. Драйвер типу 3 драйвер або мережевий протокол: Ці драйвери спілкуються з сервером середнього програмного забезпечення JDBC за допомогою протоколу власницької мережі. Це проміжне програмне забезпечення переводить мережевий протокол на конкретні дзвінки бази даних. Вони незалежні від бази даних. Вони можуть переходити з однієї бази даних в іншу, але повільні через багато мережевих дзвінків.

4. Тип-4 або тонкий драйвер: Цей драйвер також називають чистим драйвером Java, оскільки він безпосередньо взаємодіє з базою даних. Він не вимагає ні рідної бібліотеки, ні сервера середнього програмного забезпечення. Він має кращу продуктивність, ніж інші драйвери, але порівняно повільний через збільшення кількості мережевих дзвінків.

Висновок

У цій статті вказується архітектура JDBC, її інтерфейси та типи драйверів для зв'язку або взаємодії з базою даних.

Зараз в кожному секторі зберігаються бази даних, що потребує оновлення та отримання даних з них. Тож розуміння архітектури допомогло б зрозуміти основні концепції JDBC.

Рекомендовані статті

Це був посібник з архітектури JDBC. Тут ми обговорили типи драйверів, інтерфейси та компоненти архітектури JDBC. Ви також можете ознайомитися з іншими запропонованими нами статтями, щоб дізнатися більше -

  1. Як встановити Java 8?
  2. Питання щодо інтерв'ю JDBC
  3. Як встановити Apache?