Sommaire
Sommaire
<<

Hibernate Native : configurer  il y a 4 années

Auteur

Hachim IDRISSI YASSINE, de ProfLibre.

Série

HIBERNATE : l’essentiel

Description

L’objectif de cette formation est de savoir comment télécharger une version spécifique d’Hibernate et de configurer son premier projet en utilisant l’API NATIVE avec MySQL.

Tags

I. Introduction

L’objectif de cette formation est de savoir comment télécharger une version spécifique d’Hibernate et de configurer son premier projet en utilisant l’APINATIVE avec MySQL.

Requête SQL jouée à la fin

II. Prérequis

Des connaissances en :

  • JAVA/JDBC
  • SQL (MYSQL)
  • XML
  • UML est un plus.
  • JPA est un plus.

Ayant consulté la formation précédente dans la même série.

III. Outils

  • Hibernate 5.3.5
  • JAVA 8
  • Eclipse (OXYGEN 2)
  • MYSQL 5.7.26 (PHPMYADMIN sur MAMP 5.7)
  • Connecteur MYSQL-JAVA (Connector/J) 8.0.20
  • MAC OS 10.11.5 (OS X EL CAPITAN)

NB : cette formation pourra être utile pour d’autres versions.

IV. La base d’abord !

Sur MYSQL :

Créez la base hibernatenative via l’IHM :   

Créer la base MySQL

Ou via la commande SQL :

create database if not exists hibernatenative;

V. Trouver et télécharger le bon pilote

      1. Trouver le bon pilote

                 - Pilote = Driver = Connecteur

                 - Accédez au site officiel de MYSQL :

                    https://dev.mysql.com/

                 - Cliquez ensuite sur le menu Documentation :

                    https://dev.mysql.com/doc/

                 - Cliquez sur Connectors :

                    https://dev.mysql.com/doc/index-connectors.html

                 - Accédez au dernier connecteur à date et vérifier la compatibilité des versions (MYSQL/JAVA) :

                    https://dev.mysql.com/doc/connector-j/8.0/en/

                 - Dans la table des matière, cliquez sur Connector/J Versions, and the MySQL and Java Versions They Require :

                    https://dev.mysql.com/doc/connector-j/8.0/en/connector-j-versions.html

                 NB : dans notre cas nous avons sélectionné le dernier connecteur qui est compatible à la fois avec la version du serveur MYSQL qu‘on utilise et la version de JAVA utilisée, sinon chercher dans                               l’archive sur le même site.

                 Connector/J : connecteur JAVA pour MYSQL.

      2. Télécharger le pilote

                 - Dans la table des matières, cliquez sur le menu Connector/J Installation :

                   https://dev.mysql.com/doc/connector-j/8.0/en/connector-j-installing.html

                 - Cliquez ensuite sur Connector/J Download page :

                   https://dev.mysql.com/downloads/connector/j/

                 - Choisissez le SE (Plateform Intependant), puis cliquez sur download (zip), puis No thanks, just start my download :

                  mysql-connector-java-8.0.20.zip

                  - Après extraction, on trouve dedans le fichier JAR cherché:

                  mysql-connector-java-8.0.20.jar

 

VI. Télécharger Hibernate

         - Rendez-vous sur :
            https://hibernate.org/orm/releases/

         - Choisir la version 5.3 :

            https://hibernate.org/orm/releases/5.3/

         - Puis la version 5.3.5 dans la même page.

         - Cliquez ensuite sur Download.

         Remarque : on utilisera Maven ultérieurement dans d’autres formations sur proflibre.com.

VII. Créer son projet JAVA

      1. Créer le projet

                 - Ouvrir Eclipse

                 - New > Project > JAVA Project

                 - Donnez un nom à votre projet.

                 - Choisissez JAVA 1.8

      2. Importer le pilote

                 - Bouton droit sur le projet :

                  > Properties

                  > JAVA BUILD PATH

                  > Add JAR : mysql-connector-java-8.0.20.jar

      3. Ajouter la librairie Hibernate

                 - Bouton droit sur le projet :

                  > Properties

                  > JAVA BUILD PATH

                  > Add Library

                  > User Library > User libraries… > New Library > Hibernatev5.3.5 > Add External JARs

      4. Remplir la fiche de configuration hibernate.cfg.xml

PropriétéValeurNotes
connection.pool_size1Nombre maximal de connexions dans le pool.
show_sqltrueActiver la journalisation de toutes les requêtes SQL générées sur la console.
hibernate.format_sqltrueRendre les requêtes plus lisibles (occupent plus d’espaces sur la console).
use_sql_commentstrueCommentaires pour faire la correspondance entre es requêtes objets et les requêtes SQL.
hibernate.hbm2ddl.autoupdateValeurs possibles : none (par défaut), create-only, drop, create, create-drop, validate, and update)
  • src/hibernate.cfg.xml :

                       hibernate.cfg.xml

      5. Remplir la fiche de configuration hibernate.properties

PropriétéValeurNotes
hibernate.dialectorg.hibernate.dialect.MySQL5DialectChercher le package org.hibernate.dialect ensuite MYSQL dans https://docs.jboss.org/hibernate/orm/5.3/javadocs/
hibernate.connection.driver_classcom.mysql.cj.jdbc.Driver

Chercher dans la documentation du SGBD utilisé, pour MYSQL :

https://dev.mysql.com/doc/connector-j/8.0/en/connector-j-usagenotes-connect-drivermanager.html

+ L’url  JDBC de la BD.
hibernate.connection.url
hibernate.connection.urljdbc:mysql://localhost:8889/hibernatenative
hibernate.connection.usernamerootNom de l’utilisateur de la BD
Hibernate.connection.passwordrootMot de passe de la BD.
  • src/hibernate.properties :

hibernate.properties

                   NB : le port par défaut de MySQL 3306 est très utilisé aussi.

      6. Créer sa première classe JAVA/Hibernate "PlayHibernate.java"

package com.proflibre.hachim;

import org.hibernate.Session;
import org.hibernate.SessionFactory;
import org.hibernate.boot.MetadataSources;
import org.hibernate.boot.registry.StandardServiceRegistry;
import org.hibernate.boot.registry.StandardServiceRegistryBuilder;

public class PlayHibernate {
	
	public static SessionFactory sessionFactory;
	
	public static void main(String[] args) {
		
		final StandardServiceRegistry registry = new StandardServiceRegistryBuilder()
				.configure()
				.build();
		
		try {
			sessionFactory = new MetadataSources(registry).buildMetadata().buildSessionFactory();
		} catch (Exception e) {
			StandardServiceRegistryBuilder.destroy(registry);
		}
		
		//TRAITEMENT
		Session session = sessionFactory.openSession();
		session.createSQLQuery("SELECT 100 FROM DUAL").getSingleResult();
		session.close();
		//FIN TRAITEMENT
		
		if(sessionFactory != null) {
			sessionFactory.close();
		}
		
	}

}

VIII. Résultat d’exécution :

Après exécution de la classe PlayHibernate.java, voici la journalisation (log) obtenue sur la console d’Eclipse :

Console Eclipse

Conclusion

Dans l’étape suivante, nous allons découvrir comment persister des données (SCRUD) avec l’API Native d’Hibernate.

 

Prise de notes

Vous seul vous pouvez voir vos notes.

Mes notes

Commentaires

 il y a 4 années
Hachim IDRISSI YASSINE [L'auteur] : N’hésitez pas à poser des questions ou nous faire part de vos remarques.
Vos retours nous intéressent.

Formations similaires

Etes-vous intéressé par nos dernières formations ?

back to top
contactez-nous
Fermer