Tutoriel d installation de Hibernate avec Eclipse



Documents pareils
IFT287 Exploitation de base de données relationnelles et orientées objet. Laboratoire Mon premier programme Java en Eclipse

Développement Web - Object Relational Mapping and Hibernate

Etude de cas : PGE JEE V2

Création d une application JEE

La base de données XML exist. A. Belaïd

La gestion de la persistance avec Hibernate. Hibernate et la gestion de persistance. La gestion de la persistance (1/2) Introduction

Connexion à SQL Server 2005 à partir du serveur d application SJSAS 9 Utilisation d une interface JDBC

Serveur d'application Client HTML/JS. Apache Thrift Bootcamp

Introduction à Eclipse

TP Programmation Java / JDBC / Oracle

Modélisation et Gestion des bases de données avec mysql workbench

Création d un service web avec NetBeans 5.5 et SJAS 9

Java DataBaseConnectivity

La persistance des données dans les applications : DAO, JPA, Hibernate... COMPIL 2010 francois.jannin@inp-toulouse.fr 1

Compte Rendu d intégration d application

Pentaho. présentation

BIRT (Business Intelligence and Reporting Tools)

Eclipse atelier Java

1. Installation d'un serveur d'application JBoss:

TUTORIEL D INSTALLATION D ORACLE ET DE SQL DEVELOPPER TUTORIEL D INSTALLATION D ORACLE...1 ET DE SQL DEVELOPPER...1

Java Licence professionnelle CISII,

TP1 : Initiation à Java et Eclipse

DEVAKI NEXTOBJET PRESENTATION. Devaki Nextobjects est un projet sous license GNU/Public.

Connexions à un projet CVS via Eclipse en accès local et distant. 15 Mai 2007

Guide d installation de MySQL

Service Informatique et Télématique (SITEL), Emile-Argand 11, 2009 Neuchâtel, Tél ,

République Algérienne Démocratique et Populaire. Université Abou Bakr Belkaid Tlemcen. Faculté des Sciences Département d Informatique

1-Introduction 2. 2-Installation de JBPM 3. 2-JBPM en action.7

Installation de SharePoint Foundation 2013 sur Windows 2012

Traitement de données

POVERELLO KASONGO Lucien SIO 2, SISR SITUATION PROFESSIONNELLE OCS INVENTORY NG ET GLPI

Installation de SQL Server Reporting Services avec l intégration dans un site Windows SharePoint Services V3

Tuto 2 : Configuration Virtual box, Configuration et installation du serveur XiBO

TP1. Outils Java Eléments de correction

Europa. Développement JEE 5. avec Eclipse. K a r i m D j a a f a r. A v e c l a c o n t r i b u t i o n d e O l i v i e r S a l v a t o r i

Comment Connecter une Base de Données MySQL via un Driver JDBC Avec OpenOffice.org

HIBERNATE - Persistance relationnelle en Java standard

CONFIGURATION DE LA LIBRAIRIE WEBUTIL (10g) Oracle Forms 10g

Oracle Learning Library Tutoriel Database 12c Installer le logiciel Oracle Database et créer une Database

Universal Robots. Fiche Méthode : Installation du simulateur Polyscope

Web Tier : déploiement de servlets

Manuel BlueFolder ADMINISTRATION

Installation et compilation de gnurbs sous Windows

Serveur d'archivage 2007 Installation et utilisation de la BD exist

TD/TP 1 Introduction au SDK d Android

TP3. Mail. Attention aux fausses manoeuvres lors de ce TP vous pouvez endommager votre mail sur ouindose.

Lancez le setup, après une phase de décompression, la fenêtre d installation des prérequis apparaît, il faut les installer :

INSTALLATION ET CONFIGURATION D'UN SERVEUR WEB SUR MAC OS X

Réalisation d un couplage téléphonie-informatique pour la suite Novanet

TP1 : Initiation à Java et Eclipse

Compiere. Installation et adaptation avec Hibernate. Travail de Bachelor. Thibaut Schorderet Septembre 2005

COURS 5 Mettre son site en ligne! Exporter son site avec WordPress Duplicator Installer un logiciel FTP Faire le suivi des visites de son site avec

Création d'un site dynamique en PHP avec Dreamweaver et MySQL

Tutoriel déploiement Windows 7 via serveur Waik

arcopole Studio Version 3.3

OpenPaaS Le réseau social d'entreprise

Test de HSQLDB et Comparatif avec Sqlite

HTTP Commander. Table des matières. 1-Présentation de HTTP Commander

L installation du module Webmail nécessite également quelques prérequis, à savoir :

Procédure d installation Smart Map 3

Censio Tutorial Sharepoint Cloud Connector exporter les données d un fichier plat dans Sharepoint Online. Version 1.

Warren PAULUS. Android SDK et Android x86

TechSoftware Présentations

Introduction aux outils BI de SQL Server Tutoriel sur SQL Server Integration Services (SSIS)

Migration d une Base de données

Déployer les Fonts, Icones, et Images avec Forms Services 11G

MISE A JOUR : 04 FEVRIER 2011 PROCÉDURE D INSTALLATION. Cegid Business COMMENT INSTALLER CEGID BUSINESS V9 SOUS WINDOWS XP, VISTA ET 7

Installation de SCCM 2012 (v2)

Mise en route et support Envision 10 SQL server (Avril 2015) A l'intention de l'administrateur SQL Server et de l administrateur Envision

Installation de la plate-forme Liberacces 2.0 «Intégrale» avec LiberInstall

TUTO 15 : Comment ajouter un ordinateur dans le domaine «Ecole»? École Numérique Rurale. 1.Préparation du poste informatique...1

D E S C R I P T I O N D E S É L É M E N T S C L E F S D ' U I M A

Raja Bases de données distribuées A Lire - Tutoriel

Tutoriel Création d une source Cydia et compilation des packages sous Linux

COSWIN MOBILE SERVEUR DE SYNCHRONISATION GUIDE D INSTALLATION

Sage 100 CRM Guide de l Import Plus avec Talend Version 8. Mise à jour : 2015 version 8

Quelques patterns pour la persistance des objets avec DAO DAO. Principe de base. Utilité des DTOs. Le modèle de conception DTO (Data Transfer Object)

Gestion de stock pour un magasin

Installer et configurer Oracle Forms 11gR2 Windows 7 64 bits

Guide de mise à jour BiBOARD

Procédure d installation des logiciels EBP sous environnement MAGRET

Installation LTE-SIM. Simulation du réseau 4G (LTE-SIM) en vue d optimiser les ressources spectrales de l opérateur.

Groupe Eyrolles, 2005, ISBN :

L Authentification de Librex dans Active Directory (Kerberos)

Construire des plug-ins pour SAS Management Console SAS 9.1

DOSSIER DEVELOPPEUR Projet CAR

BTS SIO option SISR Lycée Godefroy de Bouillon Clermont-Ferrand

Installation et configuration d OCS/GLPI sur un Serveur Debian

équipement radio Procédure

ADMINISTRATION DE ADOBE LIVECYCLE MOSAIC 9.5

Installer Enterprise Miner 5.1 en SAS environnement Windows

Machine virtuelle Java pour Palm TX

Reporting Services - Administration

Déploiement d application Silverlight

PHP 5. La base de données MySql. A. Belaïd 1

SYNC FRAMEWORK AVEC SQLITE POUR APPLICATIONS WINDOWS STORE (WINRT) ET WINDOWS PHONE 8

Application BdD et JDBC. Introduction 1/28. I Dans tout les cas, une seule problématique. I Quelques alternatives :

WDpStats Procédure d installation

Transcription:

Tutoriel d installation de Hibernate avec Eclipse

Table des matières 1. Création de la base de données... 4 2. Installation de Hibernate Synchronizer... 5 3. Utilisation de Hibernate... 6 3.1 Création et préparation du projet... 6 3.2 Création des éléments de Hibernate... 9 3.2.1 Fichier de configuration... 9 3.2.2 Fichier de mapping... 11 4. Test des classes... 13 4.1 Classe HibernateSessionFactory... 13 4.2 La class de Test... 14

1. Création de la base de données La source de données choisie pour cet article est MySQL. Il est évidemment possible d'en choisir une autre comme Oracle, SQL Server ou même un simple fichier XML pourvu que vous disposiez des drivers JDBC adaptés. Nous supposons que MySQL est installé et que vous disposez des droits nécessaires pour créer une nouvelle base de données. Créez une base de données et donnez-lui le nom «hibernate» Dans la base de données hibernate créez la table «etudiant Ajouter les attributs suivants : Id_etudiant, nom, prenom, age.

2. Installation de Hibernate Synchronizer Sous Eclipse, cliquez sur : «Help > Software Updates» Sous l onglet Aviailable Software, cliquez sur «Add site» Entrez l url suivant : http://hibernatesynch.sourceforge.net puis appuyez sur OK Sélectionnez Hibernate Synchroniser puis install

3. Utilisation de Hibernate 3.1 Création et préparation du projet Sous Eclipse faites «File>New>Project», Choisissez Dynamic Web Project et cliquez sur next>

Donnez-lui le nom HibernateTest, choisissez le serveur puis cliquez sur finish Téléchargez l archive hibernate et décompresser le contenu dans le répertoire «/workspace/hibernatetest/webcontent/web-inf/lib» Le projet doit ressembler à ça :

Nous allons ajouter au classpath du projet les librairies. Faites sur le projet "HibernateTest" : "Clic Droit > Properties" puis dans la fenêtre qui s ouvre Cliquez sur "Java Build Path" puis sur l'onglet "Librairies". Cliquez sur "Add jars". Une fenêtre apparaît. Déroulez l'arborescence : HibernateTest>WebContent>WEB-INF>lib " et sélectionnez tous les jars présents. Puis cliquez sur "OK". Les jars sont maintenant ajoutés au projet

3.2 Création des éléments de Hibernate 3.2.1 Fichier de configuration Ce fichier nous permet d indiquer les paramètres de connexion à la BDD à Hibernate Faites un clic droit sur le dossier src du projet «New>Other» et dans le fenêtre qui s ouvre sélectionnez Hibernate>Hibernate Configuration file puis cliquez sur Next Indiquez les informations suivantes puis cliquez sur «finish»: Container : /HibernateTest/src File name : hibernate.cfg.xml Database Type : MySQL Driver Class : com.mysql.jdbc.driver Database URL : jdbc://mysql://localhost/hibernate Username : root Password : laisser la case vide // Driver à utiliser // URL de la BDD

Le fichier hibernate.cfg.xml est généré. Ajoutez la ligne suivante avant la fermeture de la balise </sessions-factory> : <mapping resource="etudiant.hbm.xml"/> Le fichier doit ressembler à ça : hibernate.cfg.xml <hibernate-configuration> <session-factory> <!-- local connection properties --> <property name="hibernate.connection.url">jdbc:mysql://localhost/forum_jsf_hibernate< /property> <property name="hibernate.connection.driver_class">com.mysql.jdbc.driver</property> <property name="hibernate.connection.username">root</property> <property name="hibernate.connection.password"></property> <!-- property name="hibernate.connection.pool_size"></property --> <!-- dialect for MySQL --> <property name="dialect">org.hibernate.dialect.mysqldialect</property> <property name="hibernate.show_sql">false</property> <property name="hibernate.transaction.factory_class">org.hibernate.transaction.jdbctr ansactionfactory</property> <mapping resource="etudiant.hbm.xml"/> </session-factory> </hibernate-configuration>

3.2.2 Fichier de mapping Faites un clic droit sur src : New > Package" et donnez comme nom : Modele. Faites un clic droit sur src : New > Other" et choissez "Hibernate > Hibernate Mapping File". Indiquez les informations requises puis cliquez qur refresh pour voir la liste des tables. Si vous avez l ecran suivant c est que la Base de données est correctement liée notre application. Sélectionner alors la table etudiant et cliquez sur finish. Contrairement à ce que l on peut croire le fichier Etudiant.hbm n est pas conforme à la dtd. Je vous propose donc de remplacer son contenu par celui-ci :

Etudiant.hbm.xml <?xml version="1.0"?> <!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD//EN" "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd" > <hibernate-mapping package="modele"> <class name="etudiant" table="etudiant"> <meta attribute="sync-dao">false</meta> <id name="idutilisateur" type="integer"> <column name="id_etudiant" sql-type="int(4)" /> <generator class="increment" /> </id> /> <property name="nom" type="string"> <column name="nom" sql-type="varchar(25)" not-null="true" </property> <property name="prenom" type="string"> <column name="prenom" sql-type="varchar(25)" notnull="true" /> </property> <property name="age" type="integer"> <column name="age" sql-type="int(2)" not-null="true" /> </property> </class> </hibernate-mapping> Le fichier précédent n est pas totalement faux, mais celui-ci ne présente pas d erreurs. La balise <id></id> défini la clé primaire et <generator class="increment" /> montre que le champ est incrémenté automatiquement. Les balises <property></property> definissent les autres attributs. Le projet doit ressembler à ça :

Les fichiers sont générés automatiquement. Si ce n est pas le cas, faites un clic droit sur Etudiant.hbm puis: Hibernate Synchroniser > Synchronize File Maintenant que des classes ont été générées grâce à Hibernate et Hibernate Synchronizer, nous pouvons les tester. 4. Test des classes 4.1 Classe HibernateSessionFactory Une classe Hibernate appellée SessionFactory permet à partir du fichier de configuration (hibernate.cfg.xml) d'être associé à la source de données. Elle fournit des objets Session pour manipuler les données. Nous allons, pour celà, écrire une classe trouvée dans l'aide en ligne d'hibernate.org. Dans votre projet HibernateTest, faites sur Modele.DAO: Clic droit > New > class. Donnez-lui comme nom HibernateSessionFactory Copiez dans ce fichier vide, le contenu suivant : HibernateSessionFactory.java package Modele.DAO; import org.hibernate.sessionfactory; import org.hibernate.cfg.configuration; public class HibernateSessionFactory { private static final SessionFactory sessionfactory; static { try { // Crée l objet SessionFactory à partir de hibernate.cfg.xml sessionfactory = new Configuration().configure().buildSessionFactory(); catch (Throwable ex) { System.err.println("Initial SessionFactory creation failed." + ex); throw new ExceptionInInitializerError(ex); public static SessionFactory getsessionfactory() { return sessionfactory;

4.2 La class de Test Nous allons maintenant créer une classe pour les tests. Nous allons d abord créer 2 étudiants, l enregistrer dans la base de données puis les afficher EtudiantDAO.java package Modele.DAO; import java.util.*; import org.hibernate.session; import org.hibernate.transaction; import Modele.Etudiant; import Modele.DAO.HibernateSessionFactory; public class EtudiantDAO { public static void main(string [] args){ Session session = HibernateSessionFactory.currentSession(); Transaction tx = session.begintransaction(); //On insère 2 etudiant dans la BDD Etudiant eleve = new Etudiant(); eleve.setnom("durand"); eleve.setprenom("jacques"); eleve.setage(new Integer(20)); session.save(eleve); eleve = new Etudiant(); eleve.setnom("petit"); eleve.setprenom("lucie"); eleve.setage(new Integer(19)); session.save(eleve); tx.commit(); List list = session.createquery("from Etudiant").list(); Iterator it = list.iterator(); while(it.hasnext()) { Etudiant e = (Etudiant)it.next(); System.out.println(e.getPrenom()+" "+ e.getnom()+": "+ e.getage()+" ans"); HibernateSessionFactory.closeSession();