Hibernate

Un article de Wikipédia, l'encyclopédie libre.
Ceci est une version archivée de cette page, en date du 27 novembre 2019 à 12:07 et modifiée en dernier par 37.157.229.55 (discuter). Elle peut contenir des erreurs, des inexactitudes ou des contenus vandalisés non présents dans la version actuelle.
Hibernate
Description de l'image Logo Hibernate.png.

Informations
Développé par Red HatVoir et modifier les données sur Wikidata
Première version
Dernière version 6.2.6 ()[1]
6.4.4 ()[2]Voir et modifier les données sur Wikidata
Dépôt github.com/hibernate/hibernate-ormVoir et modifier les données sur Wikidata
Écrit en JavaVoir et modifier les données sur Wikidata
Environnement Multiplate-forme (JVM)
Langues anglais
Type Mapping objet-relationnel
Licence Licence publique générale limitée GNUVoir et modifier les données sur Wikidata
Site web hibernate.orgVoir et modifier les données sur Wikidata

Hibernate est un framework open source gérant la persistance des objets en base de données relationnelle.

Hibernate est adaptable en termes d'architecture, il peut donc être utilisé aussi bien dans un développement client lourd, que dans un environnement web léger de type Apache Tomcat ou dans un environnement Java EE complet : WebSphere, JBoss Application Server et Oracle WebLogic Server.

Hibernate apporte une solution aux problèmes d'adaptation entre le paradigme objet et les SGBD en remplaçant les accès à la base de données par des appels à des méthodes objet de haut niveau.

Historique

Hibernate a été développé par un groupe de développeurs Java dirigés par Gavin King. L'entreprise JBoss (maintenant une division de Red Hat) a embauché les développeurs principaux d'Hibernate et a travaillé avec eux afin de maintenir et développer le produit.

La version 3 a introduit de nouvelles fonctionnalités comme l'architecture "Interceptor/Callback", les filtres utilisateurs et les annotations introduites par le JDK 5.0. Hibernate 3 est également très proche des spécifications EJB 3.0 (même si la bibliothèque logicielle a été livrée avant les spécifications définitives) et servit de colonne vertébrale à l'implantation d'EJB 3.0 par JBoss.

Modules d'Hibernate

Hibernate se compose de plusieurs modules développés par des équipes différentes.

Core

Le module principal d'Hibernate contient les fonctionnalités clefs (principalement connues depuis la version 2 de la bibliothèque) telles que les sessions, les transactions, le cache d'objet ou le langage SQL.

Annotations

Apporte le support des annotations tel que décrit dans JSR 175. Cette approche permet d'éviter la description de la correspondance entre les champs d'une table et les champs du POJO en XML.

Entity manager

Permet le support de JSR 220 JPA par le module Core.

Shards

Ce module permet la partition horizontale du Core Hibernate.

Validator

Module de validation des contraintes d'entité de la base de données, implanté sous forme d'annotations telles que les plages de valeurs autorisées, les formats de chaine de caractères, la détection des valeurs nulles, etc.

Search

Le dernier module apporte une couche d'abstraction pour la recherche de Lucene appliquée sur les entités persistantes maintenues par Hibernate.

Tools

Ensemble d'outils pour Ant ou Eclipse facilitant le développement avec Hibernate.

NHibernate

NHibernate : .NET et open source

NHibernate est un framework open source gérant la persistance des objets en base de données relationnelle. Il est l'implémentation .NET d'Hibernate qui a vu le jour en Java.

Outils NHibernate

NHibernate Tools[3] est un plugin qui s'intègre directement dans Visual Studio 2005, et permet de paramétrer et d'utiliser NHibernate au sein de l'IDE (environnement de développement intégré).

Fonctionnalités incluses

  • Édition simplifiée des fichiers de configuration de NHibernate
  • Génération des POCO (plain old CLR objects) à partir d'un fichier de mapping
  • Génération d'un fichier de mapping à partir d'une classe C#
  • Génération des POCO et des fichiers de mapping à partir de la base de données
  • Édition d'un fichier de mapping à partir de la structure de la base de données

Outils complémentaires

Générateurs de requêtes

Notes et références

  1. « Hibernate ORM 6.2.6.Final released »,
  2. « Release 6.4.4 », (consulté le )
  3. NHibernate Tools

Voir aussi

Articles connexes

Liens externes