Différence entre JDBC et Hibernate

Différence entre JDBC et Hibernate

JDBC VS. Hiberner

La connectivité de la base de données Java (également connue sous le nom de JDBC) est une API spécifiquement conçue pour le langage de programmation Java. Il définit comment un client est en mesure d'accéder à une base de données en fournissant des méthodes pour interroger et mettre à jour les données dans une base de données. Il est orienté plus spécifiquement vers les bases de données relationnelles. Il a d'abord été introduit sur le marché dans le cadre de la plate-forme Java 2, Standard Edition, version 1.1 (ou J2SE). Il a été regroupé avec une implémentation de référence JDBC à ODBC Bridge, permettant des connexions avec l'API à toute source de données accessible ODBC dans l'environnement de l'hôte JVM.

Hibernate est une bibliothèque de mappage orientée objet (ou une bibliothèque ORM) spécialement conçue pour la langue Java. Il fournit un cadre pour cartographier un modèle de domaine orienté objet vers une base de données relationnelle traditionnelle. Il résout également les problèmes de décalage d'impédance relationnels de l'objet - c'est-à-dire les problèmes dans lesquels un système de gestion de base de données relationnel (ou RDBM) est utilisé par un programme écrit dans un langage de programmation ou de style orienté objet. Il accomplit cela en remplaçant les accès à la base de données liés à la persistance directe avec des fonctions de manutention de haut niveau. Il est gratuit, un logiciel open source et est distribué sous la licence publique GNU Unser General Public.

JDBC fonctionne en permettant à une variété d'implémentations d'exister et d'utiliser par la même application. Il fournit un mécanisme par lequel les packages Java corrects sont chargés dynamiquement et enregistrés auprès du gestionnaire de pilotes JDBC - qui est utilisé comme usine de connexion, en quelque sorte, qui crée des connexions JDBC. Ces connexions prennent en charge la création et l'exécution des déclarations. Ils peuvent être des instructions de mise à jour (les SQL créent, insérer, mettre à jour et supprimer, par exemple). Ils peuvent également être des instructions de requête telles que SELECT. Une connexion JDBC peut également invoquer des procédures stockées - c'est-à-dire les procédures qui sont stockées dans le dictionnaire de données de la base de données.

Hibernate fonctionne principalement pour mapper des classes Java aux tables de base de données, ainsi que des types de données Java aux types de données SQL. Il fournit également des installations de requête de données et de récupération. Il est capable de générer des appels SQL, soulageant ainsi le développeur à partir de la manipulation des résultats manuels et de la conversion d'objets. Cela maintient l'application portable à toutes les bases de données SQL prises en charge via la bibliothèque. Il mappe les classes Java aux tables de base de données en configurant un fichier XML (dans lequel Hibernate est capable de générer du code source squelettique pour les classes de persistance) ou de l'utilisation de l'annotation Java (ce qui rend l'ancienne action moot). HiberNate prend également en charge le mappage des types de valeur personnalisés, ce qui rend possible trois scénarios spécifiques: remplacer le type SQL par défaut, choisi par Hibernate lors du mappage d'une colonne sur une propriété; cartographier Java Enum to Colonnes comme s'ils étaient des propriétés régulières; et cartographier une seule propriété à plusieurs colonnes.

Résumé:

1. JDBC est une API qui définit comment un client peut accéder à une base de données; HiberNate est une bibliothèque ORM qui fournit un cadre pour mapper un modèle de domaine orienté objet vers une base de données relationnelle traditionnelle.

2. JDBC permet à diverses implémentations d'exister et par utilisées par la même application; Hibernate Maps des classes Java aux tables de base de données.