Що таке JDBC?

Повна форма JDBC - це з'єднання з базою даних Java. Це в основному Java API, який використовується для виконання та підключення запитів разом із базою даних. Вважається частиною Java SE, тобто Java Standard Edition. API JDBC використовує драйвери JDBC для того, щоб з'єднатися разом із базою даних. Ми можемо розглянути чотири типи драйверів JDBC, згадані нижче:

  • JDBC-ODBC Bridge Driver
  • Тонкий водій
  • Рідний водій і
  • Драйвер мережевого протоколу

API JDBC можна використовувати для доступу до табличних даних, що зберігаються в будь-якій з реляційних баз даних. Використовуючи API JDBC, ви маєте можливість зберігати, оновлювати, видаляти, а також отримувати дані з бази даних. Вважається відкритим з’єднанням баз даних, тобто ODBC, що надається Microsoft.

  • Визначення
  • Розуміння JDBC

Як працює JDBC?

Встановлення з'єднання з додатком або джерелом даних, надсилання запитів, оновлення операторів та обробка результатів можна легко здійснити за допомогою JDBC або Java Database Connectivity. Це зробило все, що зазначено нижче, можливим у додатку Java -

  • Це допомагає легко встановити зв’язок із джерелом даних
  • Це робить можливим надсилання запитів та оновлення операторів
  • Це допомагає отримувати дані з бази даних та обробляти отримані результати дуже просто.

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

Чому ми повинні використовувати JDBC?

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

Ми можемо виконувати різні дії, використовуючи API JDBC, необхідний для обробки бази даних:

  1. Підключення до бази даних
  2. Виконання запитів, а також оновлення заяв до бази даних
  3. Отримання результату, отриманого з бази даних.

Архітектура

API JDBC підтримує дворівневі, а також трирівневі моделі обробки для доступу до бази даних. Однак, загалом кажучи, його архітектура має два перераховані нижче шари:

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

Компоненти JDBC

API JDBC складається з наступних інтерфейсів, а також класів, які також можна назвати компонентами:

  • Менеджер драйверів: Клас Менеджер драйверів, як підказує ім'я, відповідає за управління списком драйверів бази даних. Він також відповідає запитам на з'єднання, що надходять від програми java разом із драйвером бази даних за допомогою підпротоколу зв'язку. Перший драйвер, який розпізнає субпротокол під JDBC, використовується для встановлення підключення до бази даних.
  • Драйвер: Інтерфейс, який обробляє зв’язок між програмою та сервером баз даних, називається драйвером. Шанси на взаємодію безпосередньо з об’єктами Driver дуже рідкісні, оскільки більшість часу об'єкти Driver Manager зазвичай використовуються для управління об'єктами цього типу. Всі деталі = () - які пов'язані з роботою об'єктів Driver, витягуються нею.
  • З'єднання: Інтерфейс підключення разом із усіма методами використовується для зв’язку з базою даних. Об'єкт зв'язку являє собою контекст зв'язку, тобто вся комунікація разом з базою даних відбувається лише через об'єкт зв'язку.
  • Заява: Об'єкти, створені з цього інтерфейсу, дозволять подавати оператори SQL до бази даних. Деякі з похідних інтерфейсів також приймають параметри під час виконання деяких збережених процедур.
  • ResultSet: Об'єкти ResultSet використовуються для зберігання даних, отриманих з бази даних, але це відбувається після того, як ви виконали SQL-запит за допомогою об'єктів Statement. Він також виконує функцію ітератора, що дозволяє нам рухатись через дані.
  • Виняток SQL: Клас виключення SQL використовується для обробки будь-яких помилок, які виникають у додатку бази даних.

Переваги

Деякі з переваг використання згаданих нижче:

  • Він здатний читати будь-яку базу даних. Єдиною вимогою до цього є належна установка всіх драйверів.
  • Він автоматично створює XML-формат даних із бази даних.
  • Він не вимагає конвертування контенту.
  • Він забезпечує повну підтримку запитів і збережених процедур.
  • Він забезпечує підтримку як синхронної, так і асинхронної обробки.
  • Він підтримує модулі.

Недоліки

Як і більшість API, він також має деякі мінуси. Деякі з цих недоліків згадуються нижче:

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

Висновок

Таким чином, це допомагає вам підключитися до бази даних і тим самим виконати оператори SQL проти бази даних. JDBC api також, як обговорювалося, надає набір інтерфейсів, а також різні реалізації відповідно до їх баз даних.

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

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

  1. Що таке спадщина Java?
  2. Команди Java
  3. JDBC проти ODBC
  4. JDBC Архітектура