Co to jest JDBC?
Pełna forma JDBC to Java Database Connectivity. Zasadniczo jest to interfejs API języka Java, który służy do wykonywania i łączenia zapytań wraz z bazą danych. Jest uważany za część Java SE, czyli Java Standard Edition. Interfejs API JDBC korzysta ze sterowników JDBC w celu uzyskania połączenia z bazą danych. Możemy rozważyć cztery typy sterowników JDBC wymienionych poniżej:
- Sterownik mostu JDBC-ODBC
- Cienki kierowca
- Natywny sterownik i
- Sterownik protokołu sieciowego
Interfejsu API JDBC można użyć w celu uzyskania dostępu do danych tabelarycznych przechowywanych w dowolnej relacyjnej bazie danych. Korzystając z JDBC API, możesz zapisywać, aktualizować, usuwać, a także pobierać dane z bazy danych. Uważa się, że jest to otwarta baza danych, czyli ODBC dostarczana przez Microsoft.
- Definicja
- Zrozumienie JDBC
Jak działa JDBC?
Nawiązanie połączenia z aplikacją lub źródłem danych, wysyłanie zapytań, aktualizowanie instrukcji i przetwarzanie wyników można łatwo wykonać za pomocą JDBC lub Java Database Connectivity. Dzięki niemu wszystkie wymienione poniżej możliwości są możliwe w aplikacji Java -
- Pomaga w łatwym nawiązaniu połączenia ze źródłem danych
- Umożliwia wysyłanie zapytań i aktualizowanie wyciągów
- Pomaga w pobieraniu danych z bazy danych i przetwarzaniu pobranych wyników w bardzo prosty sposób.
Instrukcje SQL i zapytania można przesyłać, a wyniki można wyszukiwać, wywołując klasy JDBC i interfejsy za pomocą aplikacji Java. Jest to sterownik JDBC, który pomaga w implementacji interfejsu API JDBC. Ten sterownik stanowi zestaw klas, które będą implementować interfejsy JDBC. Pomoże to w dalszym przetwarzaniu wywołań JDBC i wysyłaniu danych wyjściowych / wyników do aplikacji Java. Baza danych jest w zasadzie magazynem danych, w którym przechowywane są wszystkie dane pobierane za pomocą sterownika JDBC przez aplikację Java.
Dlaczego powinniśmy używać JDBC?
Przed powstaniem JDBC korzystaliśmy z bazy danych API ODBC w celu połączenia, a także wykonania zapytania wraz z bazą danych. Jednak interfejs API ODBC korzysta z napędu ODBC w języku C. Ponadto jest zależny od platformy, a ponadto niezabezpieczony. Jest to powód, dla którego Java zdefiniowała własny interfejs API znany jako JDBC API przy użyciu sterowników JDBC, a także jest napisany w języku Java.
Możemy wykonywać różne czynności przy użyciu interfejsu API JDBC wymaganego do obsługi bazy danych:
- Połączenie z bazą danych
- Wykonywanie zapytań oraz aktualizowanie instrukcji do bazy danych
- Pobieranie wyniku pobranego z bazy danych.
Architektura
JDBC API obsługuje dwupoziomowe, a także trójwarstwowe modele przetwarzania dla dostępnego dostępu do bazy danych. Jednak ogólnie mówiąc, jego architektura ma dwie warstwy wymienione poniżej:
- JDBC API: ta warstwa obsługuje połączenie z aplikacją JDBC Manager. Korzysta z menedżera sterowników, a także sterowników specyficznych dla bazy danych, aby zapewnić przejrzystą łączność z heterogenicznymi bazami danych.
- JDBC Driver API: Ta warstwa zapewnia połączenie JDBC Manager ze sterownikiem. Ten menedżer sterowników zapewnia, że podczas uzyskiwania dostępu do każdego źródła danych używany jest właściwy sterownik. Jest również w stanie obsłużyć wiele współbieżnych sterowników, które są podłączone do różnych heterogenicznych baz danych.
Komponenty JDBC
JDBC API składa się z następujących interfejsów oraz klas, które można również określić jako komponenty:
- Driver Manager: Klasa Driver Manager, jak sugeruje nazwa, odpowiada za zarządzanie listą sterowników bazy danych. Odpowiada również żądaniom połączenia przychodzącym z aplikacji Java wraz ze sterownikiem bazy danych za pomocą podprotokołu komunikacji. Pierwszy sterownik, który rozpoznaje podprotokół w JDBC, służy do ustanowienia połączenia z bazą danych.
- Driver: Interfejs obsługujący komunikację między aplikacją a serwerem bazy danych nazywa się Driver. Szanse na bezpośrednią interakcję z obiektami Driver są bardzo rzadkie, ponieważ przez większość czasu obiekty Driver Manager są zazwyczaj używane do zarządzania obiektami tego typu. Wszystkie szczegóły = () - powiązane z działaniem obiektów Driver są przez nią wyodrębniane.
- Połączenie: Interfejs połączenia wraz ze wszystkimi metodami służy do kontaktowania się z bazą danych. Obiekt połączenia reprezentuje kontekst komunikacji, to znaczy cała komunikacja wraz z bazą danych odbywa się tylko przez obiekt połączenia.
- Instrukcja: Obiekty tworzone z tego interfejsu umożliwią przesłanie instrukcji SQL do bazy danych. Niektóre z pochodnych interfejsów również akceptują parametry podczas wykonywania niektórych procedur przechowywanych.
- ResultSet: Obiekty ResultSet są używane do przechowywania danych pobranych z bazy danych, ale dzieje się to po wykonaniu zapytania SQL za pomocą obiektów Statement. Działa również jako iterator, który pozwala nam poruszać się po danych.
- Wyjątek SQL: klasa wyjątków SQL służy do obsługi błędów, które występują w aplikacji bazy danych.
Zalety
Niektóre zalety korzystania wymienione poniżej:
- Jest w stanie odczytać dowolną bazę danych. Jedynym wymaganiem jest odpowiednia instalacja wszystkich sterowników.
- Automatycznie tworzy format XML danych z bazy danych.
- Nie wymaga konwersji treści.
- Zapewnia pełne wsparcie dla zapytania i procedury składowanej.
- Zapewnia obsługę przetwarzania synchronicznego i asynchronicznego.
- Obsługuje moduły.
Niedogodności
Podobnie jak większość interfejsów API, ma również pewne wady. Niektóre z tych wad wymieniono poniżej:
- Jest bardzo wrażliwy, jeśli chodzi o kierowcę. Dlatego bardzo ważne jest, aby zainstalować prawidłowe sterowniki i wdrożyć je dla każdego typu bazy danych, aby z niej skorzystać. Czasami jest to czas trudny i wymagający.
- Nie pozwala jednej sekwencji na aktualizację lub wstawienie wielu tabel.
Wniosek
Pomaga to w łączeniu się z bazą danych, a tym samym w wykonywaniu instrukcji SQL względem bazy danych. Interfejs API JDBC, jak omówiono, daje zestaw interfejsów, a także różne implementacje odpowiadające ich bazom danych.
Polecane artykuły
To był przewodnik po JDBC. Tutaj omówiliśmy architekturę, komponenty, zalety i wady JDBC. Możesz także przejrzeć nasze inne sugerowane artykuły, aby dowiedzieć się więcej -
- Co to jest dziedziczenie Java?
- Polecenia Java
- JDBC vs ODBC
- Architektura JDBC