Maison >base de données >tutoriel mysql >Dois-je fermer les connexions JDBC à partir d'un pool de connexions ?

Dois-je fermer les connexions JDBC à partir d'un pool de connexions ?

Barbara Streisand
Barbara Streisandoriginal
2024-12-06 09:39:11423parcourir

Should I Close JDBC Connections from a Connection Pool?

Fermeture des connexions JDBC dans le pool

Question 1 : Fermeture des connexions groupées

Lors de l'utilisation d'un Pool de connexions JDBC, il est crucial de fermer la connexion poolée après utilisation. Contrairement à une idée reçue, cela ne remet pas en cause l’objectif de la mutualisation. Au lieu de cela, il permet au pool de récupérer la connexion réelle sous-jacente et de la rendre disponible pour réutilisation.

Question 2 : Méthode de récupération de connexion standard

La méthode getConnection fournie tente de récupérer une connexion du pool. Cependant, il recourt à l'approche traditionnelle DriverManager si la recherche de pool échoue. Ce défaut de conception rend difficile la détermination de la méthode utilisée au moment de l’exécution. Pour garantir un comportement et une gestion des ressources appropriés, évitez d'utiliser une telle méthode et optez plutôt pour une approche cohérente en initialisant la DataSource une fois lors du démarrage de l'application.

Fermeture des connexions à partir d'autres méthodes

Il est essentiel de fermer les connexions obtenues à partir de n'importe quelle méthode, quels que soient les détails de sa mise en œuvre. En utilisant une instruction try-with-resources ou en fermant explicitement les ressources dans un bloc final, vous garantissez un nettoyage et un retour corrects des ressources dans le pool.

Voir aussi :

  • [Est-il sûr d'utiliser une instance statique java.sql.Connection dans un environnement multithread système ?](https://stackoverflow.com/questions/3914092/is-it-safe-to-use-a-static-javasql-connection-instance-in-a-multithreaded-sy)
  • [Est-ce que j'utilise la connexion JDBC Mise en pool ?](https://stackoverflow.com/questions/2641371/am-i-using-jdbc-connection-pooling)

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn