JDBC (Java Database Connectivity) состоит из следующих основных компонентов:
- JDBC API: Набор интерфейсов и классов, написанных на Java, который предоставляет стандартный способ взаимодействия с различными базами данных. Этот API используется разработчиками для написания кода.
- JDBC Driver Manager: Класс, который управляет различными драйверами JDBC. Он отвечает за загрузку драйверов и предоставление экземпляров драйвера для установления соединения с базой данных.
- JDBC Driver: Программное обеспечение, которое реализует интерфейсы JDBC API для конкретной системы управления базами данных (СУБД). Существуют различные типы драйверов JDBC:
- Type 1 (JDBC-ODBC bridge driver): Преобразует вызовы JDBC в вызовы ODBC. Требует установки ODBC-драйвера на стороне клиента. Устаревший.
- Type 2 (Native-API driver): Преобразует вызовы JDBC в вызовы нативного API СУБД. Требует установки нативного кода СУБД на стороне клиента.
- Type 3 (Network-Protocol driver): Использует промежуточный сервер приложений для трансляции вызовов JDBC в протокол СУБД. Не требует установки нативного кода на клиенте.
- Type 4 (Pure Java driver): Написан на 100% Java и преобразует вызовы JDBC непосредственно в протокол СУБД. Наиболее распространенный тип.
- Java Application: Приложение, написанное на Java, которое использует JDBC API для подключения к базе данных и выполнения операций (DML, DDL).
Взаимодействие между компонентами происходит следующим образом:
- Java-приложение использует JDBC API для вызова методов.
- Вызовы передаются в JDBC Driver Manager.
- Driver Manager находит и загружает соответствующий JDBC Driver для указанной базы данных.
- JDBC Driver взаимодействует непосредственно с базой данных, используя ее протокол или нативный API (в зависимости от типа драйвера).
- Результаты запросов или информац