Różnica między JDBC a Hibernate

computer JDBC a hibernacja

Java Database Connectivity (znana również jako JDBC) to interfejs API zbudowany specjalnie dla języka programowania Java . Określa, w jaki sposób klient może uzyskać dostęp do bazy danych, udostępniając metody wykonywania zapytań i aktualizacji danych w bazie danych. Jest zorientowany bardziej konkretnie na relacyjne bazy danych. Po raz pierwszy został wprowadzony na rynek jako część platformy Java 2, Standard Edition w wersji 1.1 (lub J2SE). Został dołączony wraz z implementacją referencyjną mostu JDBC do ODBC, umożliwiającą połączenia z interfejsem API z dowolnym dostępnym źródłem danych ODBC w środowisku hosta JVM.

Hibernate to zorientowana obiektowo biblioteka mapowania (lub biblioteka ORM) zbudowana specjalnie dla języka Java. Zapewnia strukturę do mapowania zorientowanego obiektowo modelu domeny na tradycyjną relacyjną bazę danych. Rozwiązuje również problemy związane z niedopasowaniem impedancji relacyjnej obiektów – to znaczy problemy, w których system zarządzania relacyjną bazą danych (lub RDBMS) jest używany przez program napisany w języku lub stylu programowania zorientowanego obiektowo. Osiąga to poprzez zastąpienie bezpośredniego dostępu do bazy danych związanego z trwałością, funkcjami obsługi wysokiego poziomu. Jest to darmowe oprogramowanie o otwartym kodzie źródłowym, rozpowszechniane na licencji GNU Lesser General Public License.

JDBC działa, umożliwiając istnienie różnych implementacji i korzystanie z nich przez tę samą aplikację. Zapewnia mechanizm, za pomocą którego właściwe pakiety Java są dynamicznie ładowane i rejestrowane w Menedżerze sterowników JDBC — który jest swego rodzaju fabryką połączeń, która tworzy połączenia JDBC. Te połączenia wspierają tworzenie i wykonywanie instrukcji. Mogą to być instrukcje aktualizacji (na przykład SQL CREATE, INSERT, UPDATE i DELETE). Mogą to być również instrukcje zapytania, takie jak SELECT. Połączenie JDBC może również wywoływać procedury składowane – czyli te procedury, które są przechowywane w słowniku danych bazy danych.

Hibernate służy przede wszystkim do mapowania z klas Java na tabele bazy danych, a także z typów danych Java na typy danych SQL. Zapewnia również funkcje zapytań i pobierania danych. Jest w stanie generować wywołania SQL, uwalniając w ten sposób programistę od ręcznej obsługi wyników i konwersji obiektów. Dzięki temu aplikacja jest przenośna do wszystkich baz danych SQL obsługiwanych przez bibliotekę. Odwzorowuje klasy Java na tabele bazy danych, konfigurując plik XML (w którym Hibernate jest w stanie wygenerować szkieletowy kod źródłowy dla klas trwałości) lub używając adnotacji Java (co sprawia, że ​​poprzednia akcja jest dyskusyjna). Hibernate obsługuje również mapowanie niestandardowych typów wartości, co umożliwia trzy konkretne scenariusze: zastąpienie domyślnego typu SQL, wybranego przez Hibernate podczas mapowania kolumny do właściwości; mapowanie Java Enum na kolumny tak, jakby były zwykłymi właściwościami; i mapowanie pojedynczej właściwości na wiele kolumn.

Streszczenie:

1. JDBC to API, które definiuje, w jaki sposób klient może uzyskać dostęp do bazy danych; Hibernate to biblioteka ORM, która zapewnia strukturę do mapowania zorientowanego obiektowo modelu domeny na tradycyjną relacyjną bazę danych.

2. JDBC umożliwia istnienie różnych implementacji używanych przez tę samą aplikację; Hibernuj mapy z klas Java do tabel bazy danych.

Zobacz więcej o: , ,