Vous êtes sur la page 1sur 17

Université Hassan 1er

Faculté des Sciences et Techniques


Settat

HIBERNATE

LST GI Année Universitaire: 2020/2021


HIBERNATE
La spécification JPA
INTRODUCTION
• Hibernate est un outil de Mapping objet relationnel pour le monde
JAVA gérant la persistance des objets en base de données
relationnelle et qui se stitue entre application et la base de
données.
BUT DE HIBERNATE

• Le but de Hibernate est de libérer le développeur de 95% des


taches de programmation liées à la persistence des données
communes
• Hibernate assure la portabilité de votre application si vous
changer de SGBD
• Hibernate propose au dévloppeur des méthodes d'accès aux bases
de données plus efficace ce qui devrait rassurer les dévloppeurs
ORM
• Le terme mapping objet/relationnel(ORM) décrit la technique
consistant a faire le lien entre la représentation objet des données
entre sa représentation relationnelle basée sur un schéma SQL
PRINCIPE
• Le mapping objet-relationnel consiste à
déclarer une association entre une (ou
plusieurs) classes et une table, et
chaque attribut de la classe avec un 
champ de la table associée.
Mapping
• il existe deux moyens pour mapper les entités :
-créer des fichier XML de mapping
-utiliser des annotations jpa
• l'utilisation des annotations jpa laisse votre code indépendant de
Hibernate .
• la création des fichiers XML de mapping a l' avantage de séparer le
code java du mapping objet relationnel.
• Nous allons utiliser les annotations jpa
JPA JAVA PERSISTENCE API

• PERSISTENCE
• JPA
*HIBERNATE
*TOPLINK
*ECLIPSELINK

• Annotations
EntityManger

• EntityManagerFactory
• Persistence .createEntityManagerFactory("testjpa");
EntityManager;
• EntityTransaction transac = em.getTransaction();
• transac.begin(); Traitetment(…………); transac.commit() ;
• Rollback
• Persiste em.close(); emf.close();
Structure de l’Application
Persistence.xml
ANNOTATIONS
• @Entity
• @Table
• @Column
• @Id
• @GeneratedValue
• @Transient
• @OneToMany
• @ManyToOne
L’héritage avec JPA

• JPA offre plusieurs stratégies pour associer une relation d’héritage


dans le modèle objet avec une représentation dans le modèle
relationnel de données.
• SINGLE_TABLE
• JOINED
• TABLE_PER_CLASS
• Pour décrire la relation d’héritage avec JPA, on utilise
l’annotation @Inheritance ou @MappedSuperclass.
Dans la base de donneés
Application

• On souhaite créer une application qui permet de :


• Ajouter un produit
• Consulter tous les produits
• Consulter les produits dont le nom contient un mot clé
• Consulter un produit
• Mettre à jour un produit
• Supprimer un produit
MAVEN

Maven est un outil permettant


d'automatiser la gestion de
projets Java.
Il offre entre autres les
fonctionnalités suivantes :
• Compilation et déploiement
des applications Java (JAR,
WAR)
• Gestion des librairies requises
par l'application

Vous aimerez peut-être aussi