Comment configurer le pool de connexions C3P0 dans Hibernate
Connection Pool
Le pool de connexions est bon pour les performances, car il empêche l'application Java de créer une connexion à chaque fois qu'elle interagit avec la base de données et minimise le coût d'ouverture et de fermeture des connexions.
Voir l'explication dewiki connection pool
Hibernate est livré avec un pool de connexions internes, mais ne convient pas pour une utilisation en production. Dans ce didacticiel, nous vous montrons comment intégrer un pool de connexions tiers - C3P0, avec Hibernate.
1. Obtenez hibernate-c3p0.jar
Pour intégrer c3p0 à Hibernate, vous avez besoin dehibernate-c3p0.jar, récupérez-le depuis le référentiel JBoss.
Fichier: pom.xml
JBoss repository http://repository.jboss.org/nexus/content/groups/public/ org.hibernate hibernate-core 3.6.3.Final org.hibernate hibernate-c3p0 3.6.3.Final
2. Configurer l'expertise c3p0
Pour configurer c3p0, placez les détails de configuration c3p0 dans «hibernate.cfg.xml», comme ceci:
Fichier: hibernate.cfg.xml
oracle.jdbc.driver.OracleDriver jdbc:oracle:thin:@localhost:1521:MKYONG example password org.hibernate.dialect.Oracle10gDialect MKYONG true 5 20 300 50 3000
-
hibernate.c3p0.min_size – Minimum number of JDBC connections in the pool. Mise en veille prolongée par défaut: 1
-
hibernate.c3p0.max_size – Maximum number of JDBC connections in the pool. Mise en veille prolongée par défaut: 100
-
hibernate.c3p0.timeout – When an idle connection is removed from the pool (in second). Mise en veille prolongée par défaut: 0, n'expire jamais.
-
hibernate.c3p0.max_statements – Number of prepared statements will be cached. Augmenter les performances. Mise en veille prolongée par défaut: 0, la mise en cache est désactivée.
-
hibernate.c3p0.idle_test_period – idle time in seconds before a connection is automatically validated. Mise en veille prolongée par défaut: 0
Note
Pour plus de détails sur les paramètres de configuration dehibernate-c3p0, veuillez lire l'article dethis.
Exécutez-le, sortie
Terminé, exécutez-le et voyez la sortie suivante:
Pendant le processus d'initialisation de la connexion, 5 connexions à la base de données sont créées dans le pool de connexions, prêt à être réutilisé pour votre application Web.
Téléchargez-le -Hibernate-C3P0-Connection-Pool-Example.zip (8 Ko)