Tutoriel administration Jboss N°6 : intégration MySQL

////Tutoriel administration Jboss N°6 : intégration MySQL

Maîtrisez la configuration d’une source de données JDBC (MySQL, Oracle) dans JBoss 5. Mettez en œuvre une datasource dans l’arbre JNDI de Jboss 5. Accédez à vos données à partir d’une application jee (war). Enfin configurez un votre pool de connexion afin d’améliorer les performances d’accès aux donnée de votre application.

Ce tutoriel est un extrait de séances pratiques de la formation Administration JBOSS5 dispensée par Objis.

Les + objis

 70% de travaux pratiques

 Clé USB avec tous les outils utilisés + Corrigés TPs

 Bilan pédagogique individuel + conseils

 Nos tutoriaux pour vous initier

Liens utiles

 + de 100 tutoriaux java/jee Objis

 10 tutoriaux JBOSS 5

 Objis, spécialiste formation java depuis 2005

 Site de téléchargement serveur Jboss 5

 Site de la communauté Jboss

 Tutoriel Struts N°8 : accès base de données JDBC (déploiement Tomcat)

 Monitoring Pool de connexion Jboss

 Monitoring Avec GLASSBOX Sous Jboss 5

Prérequis

 Installation Kit de développement JDK 6

 Tutoriel jboss N°1 : installation Jboss 5

Objectifs

 Configurer une Datasource JNDI dans Jboss.

 Déployer un war accédant à la base de données

 Comprendre et paramétrer un pool de connexion.

Durée

 40 min

Programme

 Partie 1 : création base de données ‘formation’

 Partie 2 : configuration de l’accès à la base dans Jboss

 Partie 3 : développement et déploiement application de ‘demande de formations’

 Partie 4 : introduction pool de connexion

telechargement_pdf_plan_cours.gif

Introduction

Jboss 5 est livrée avec une base de données nommée HSQLDB, configurée dans le fichier serverdefaultdeployhsqldb-ds.xml

tutoriel_joss5_objis_integration_mysql_0.png

La base est utile en environnement de développement mais pas en production.

telechargement_pdf_bulletin_inscription.gif
Nous allons configurer une DataSource JNDI (source de données) pour la base de données MySQL5 ‘formation’ démarrée plus haut.

Partie 1 : Création base de données

 Dans un serveur de bases de données MYSQL (WAMP5 ou autre outil), créez une base de données nommée ‘formation’.

 Vérifiez que la base est créée et que le serveur de base de données MySQL est démarré.

Partie 2 : Configuration Datasource dans Jboss

Etape 1 : Driver JDBC

 Téléchargez le zip du driver MySQL connector/J à partir du site de MySQL. Par exemple cliquez ici pour télécharger directement le fichier mysql-connector-5.0.5.zip.

tuto_jboss_mysql_connector_1.png

 Dézippez le fichier. Vous voyez alors le jar du driver : mysql-connector-java-5.0.5-bin.jar

 Ajoutez le driver MySQL (fichier mysql-connector-java-5.0.5-bin.jar) dans le répertoire serverdefaultlib (à récupérer à partir du site de Mysql. Téléchargez le zip et extraire le jar)

tutoriel_joss5_objis_integration_mysql_6.png

Etape 2 :création fichier objisformation-mysql-ds.xml

 Identifiez le fichier JBOSS_HOMEdocsexamplesjcamysql-ds.xml

tutoriel_joss5_objis_integration_mysql_1.png

Faîtes une copie de ce fichier dans le répertoire serverdefaultdeploy et renomant la copie objisformation-mysql-ds.xml

tuto_jboss_mysql_copie_mysqlds.png

Vous ferez ainsi pour toute autre base de données à intégrer. En effet la plupart des bases ont leur fichier de config préconfiguré (Oracle , postgresql, db2…).

Etape 3 : mise à jour et déploiement DataSource

Modifiez le contenu du fichier afin de l’adapter à votre base de données.

— Nous donnons à notre base de données un nom JNDI formationDS

tutoriel_joss5_objis_integration_mysql_2.png

REMARQUE : dans cette configuration, aucun pool de connexion n’est configuré. L’application est responsable de l’ouverture et de la fermeture de toute connexion à la base de données.

datasource mysql sans gestion pool connexion

 Copiez le fichier dans le répertoire JBOSS_HOMEserverdefaultdeploy.

tutoriel_joss5_objis_integration_mysql_3.png

 Démarrez Jboss (double-cliquez sur JBOSS_HOMEbinrun.bat).

La trace suivante apparaît vers la fin du chargement de Jboss

tutoriel_joss5_objis_integration_mysql_7.png

ça y est, votre base de données est identifiée par Jboss. Les applications pourrons se connecter par programmation en utilisant l’API JNDI en utilisant la ressource JNDI java:formationDS

Partie 3 : Déploiement application war

Nous allons mettre en œuvre l’intégration d’une application jee avec une base de données. L’application écrit dans une table des informations récupérées sur un formulaire de demande de formation.

tutoriel_joss5_objis_integration_mysql_14.png

Cette application a été développée dans le cadre de nos tutoriaux Struts1, et en particulier le tutoriel Struts N°8 : accès base de données JDBC (déploiement Tomcat) .

Préparation base de données : création table ‘demandeformation’

 Sélectionnez la base de données ‘formation’ et exécutez le script sql suivant :

script création table demandeformation

Ce script crée une unique table ‘demandeformation’.

tutoriel_joss5_objis_integration_mysql_17.png

Dans WAMP la table est créée.

tutoriel_joss5_objis_integration_mysql_16.png

Nous allons désormais analyser le code associé à l’insertion d’une demande de formation Objis dans cette table.

Code associé à l’accès aux données DataSource Jboss

tutoriel_joss5_objis_integration_mysql_4.png

Notez la ligne impliquée dans la connection via Datasource JNDI. L’adresse JNDI de la base de données est : java:formationDS.

 Déployez l’application demostrutsdatabase.war

demo déploiement appli db jboss5

L’utilisateur rempli un formulaire et le soumet. Le code vu plus haut est celui de l’insertion des données en base de données via Datasource dans Jboss.

tutoriel_joss5_objis_integration_mysql_8.png

 Avec votre navigateur, allez à l’adresse : http://localhost://8080/demostrutsdatabase.

tutoriel_joss5_objis_integration_mysql_9.png

 Cliquez sur le lien ‘Accès demo struts database’
tutoriel_joss5_objis_integration_mysql_10.png

 Remplissez le formulaire de demande de formation

tutoriel_joss5_objis_integration_mysql_11.png

 Validez. Vérifier les logs et la base de données.

tutoriel_joss5_objis_integration_mysql_12.png

Partie 4 : Monitoring

 En utilisant l’application Web console de Jboss (http://localhost:8080/web-console),
montrez qu’il est possible de monitorer en temps réels le nombre de connections à la base de données

tutoriel-jboss-datasource-monitoring-pool-conection-0

 

tutoriel-jboss-5-monitoring-pool-connexion

 

tutoriel-jboss-5-monitoring-pool-connexion-2

 

tutoriel-jboss-5-monitoring-pool-connexion-3

 Expliquez

Partie 5 : pool de connexion

 Qu’est ce qu’un pool de connexion ? Quelle valeur ajoutée

 Modifier le contenu du fichier

tutoriel_joss5_objis_integration_mysql_5.png

 Expliquez la configuration ci-dessus.

 En utilisant la documentation Jboss, expliquez à quoi servent les paramètres min-pool-size, max-pool-size, idle-timeout-minutes, blocking-timeout-millis ?

 En utilisant le domaine JMX jboss.jca, expliquez comment monitorer le pool de connexion. Combien de MBean sont impliqués dans la configuration du pool de Connexion ?

 Que sont les paramètres track-statements, prepared-statement-cache-size, security-domain ?

 Redémarrez Jboss

 Identifiezà nouveau monitoring du nombre de connexion.

tutoriel-jboss-datasource-monitoring-pool-conection

Expliquez.

Conclusion

Dans ce tutoriel vous avez analysé et mis en oeuvre l’intégration d’une base de données MySQL dans Jboss 5.

Prochaine formation JBOSS

Le chemin le plus court pour avoir les réflexes et la méthodologie du bon développeur JBOSS :

Votre formation JBOSS avec Objis, spécialiste formation java depuis 2005

Pour aller plus loin : le réseau Objis

Si vous appréciez notre sens du partage, devenez gratuitement membre ‘classic’ du Club Objis :

 Votez pour les prochains tutoriaux à publier

 Préparez vos entretiens techniques

 Valorisez votre profil / expertise

 Identifiez des opportunités d’emploi

 Recevez la newsletter objis.com

2018-01-30T09:05:44+01:00

Contactez nous

241 rue DUGUESCLIN, 69003 Lyon

Web : Objis : spécialiste formation Java