Protokollierung für SQL-Anweisungen mit JDBC aktivieren
Problem:
Sie können die Protokollierung nicht aktivieren Protokollierung für JDBC-Programme mit dem JDBC-Treiber von Oracle, obwohl ich einem früheren SO-Beitrag gefolgt bin und das Notwendige implementiert habe Code.
Antwort:
Die aufgetretene Ausnahme („InstanceNotFoundException“) weist darauf hin, dass das Oracle-Diagnose-MBean im Klassenpfad Ihrer Anwendung nicht verfügbar ist. Abhängig von der Version des JDBC-Treibers, den Sie verwenden, können verschiedene Probleme dies verursachen:
Für ojdbc6-11.2.0.3.jar:
Diese ältere Version des Beim JDBC-Treiber sind Probleme mit der Protokollierung bekannt. Aktualisieren Sie auf eine neuere Version.
Für ojdbc6_g.jar:
Diese Treiberversion erfordert eine separate JAR-Datei, ojdbc6dms.jar, um die Protokollierung zu aktivieren. Fügen Sie ojdbc6dms.jar zu Ihrem Klassenpfad hinzu.
Für ojdbc6dms.jar:
Diese Treiberversion erfordert auch eine Abhängigkeit von oracle/dms/console/DMSConsole. Stellen Sie sicher, dass diese Klasse im Klassenpfad Ihrer Anwendung verfügbar ist.
Alternative Lösung:
Als Alternative zur Verwendung des Oracle-Protokollierungsmechanismus sollten Sie die Verwendung eines Protokollierungsframeworks wie log4jdbc in Betracht ziehen. Es vereinfacht die Protokollierung von JDBC-Anweisungen und kann in bestimmten Fällen zuverlässiger sein. So verwenden Sie log4jdbc:
Das obige ist der detaillierte Inhalt vonWie kann ich die JDBC-Protokollierung mit dem Oracle-Treiber aktivieren und „InstanceNotFoundException' auflösen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!