Lors de la fermeture d'une application Web exécutée sur Tomcat, vous pouvez rencontrer un message informatif :
SEVERE: A web application registered the JBDC driver [oracle.jdbc.driver.OracleDriver] but failed to unregister it when the web application was stopped. To prevent a memory leak, the JDBC Driver has been forcibly unregistered.
À partir de Tomcat 6.0.24, une détection de fuite de mémoire La fonctionnalité identifie les pilotes compatibles JDBC 4.0 qui s'enregistrent automatiquement au démarrage de l'application mais ne parviennent pas à se désinscrire lors de l'arrêt. Malgré l'avertissement, Tomcat assure la prévention des fuites de mémoire.
1. Ignorer les avertissements (recommandé) :
L'action de Tomcat est correcte. Le problème réside dans le code du pilote JDBC. Soyez patient jusqu'à ce que le fournisseur du pilote publie un correctif et mette à jour votre pilote.
2. Rétrograder vers Tomcat 6.0.23 ou version antérieure :
Faites taire les avertissements, mais exposez-vous à d'éventuelles fuites de mémoire.
3. Déplacez le pilote JDBC vers le dossier /lib de Tomcat et utilisez un pool de connexions :
Assurez la gestion du pilote via une source de données de pool de connexions. Pensez à utiliser HikariCP ou Tomcat JDBC Pool pour une désinscription appropriée des pilotes.
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!