Heim >Java >javaLernprogramm >Warum gibt Tomcat Warnungen zur automatischen Registrierung von JDBC-Treibern aus und wie kann ich diese beheben?
Beim Herunterfahren einer auf Tomcat ausgeführten Webanwendung wird möglicherweise eine informative Meldung angezeigt:
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.
Ab Tomcat 6.0.24 gibt es eine Funktion zur Erkennung von Speicherlecks identifiziert JDBC 4.0-kompatible Treiber, die sich beim Start der Anwendung automatisch registrieren, sich aber beim Herunterfahren nicht abmelden. Trotz der Warnung gewährleistet Tomcat die Verhinderung von Speicherlecks.
1. Warnungen ignorieren (empfohlen):
Die Aktion von Tomcat ist korrekt. Das Problem liegt im JDBC-Treibercode. Seien Sie geduldig, bis der Treiberhersteller einen Fix veröffentlicht und Ihren Treiber aktualisiert.
2. Downgrade auf Tomcat 6.0.23 oder älter:
Machen Sie die Warnungen stumm, setzen Sie sich aber potenziellen Speicherlecks aus.
3. Verschieben Sie den JDBC-Treiber in den Ordner /lib von Tomcat und verwenden Sie einen Verbindungspool:
Stellen Sie die Treiberverwaltung über eine Verbindungspool-Datenquelle sicher. Erwägen Sie die Verwendung von HikariCP oder Tomcat JDBC Pool für eine ordnungsgemäße Treiberabmeldung.
Das obige ist der detaillierte Inhalt vonWarum gibt Tomcat Warnungen zur automatischen Registrierung von JDBC-Treibern aus und wie kann ich diese beheben?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!