Apabila menutup aplikasi web yang berjalan pada Tomcat, anda mungkin menghadapi mesej bermaklumat:
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.
Bermula dengan Tomcat 6.0.24, a ciri pengesanan kebocoran memori mengenal pasti pemacu serasi JDBC 4.0 yang mendaftarkan diri mereka secara automatik pada permulaan aplikasi tetapi gagal untuk membatalkan pendaftaran semasa penutupan. Walaupun diberi amaran, Tomcat memastikan pencegahan kebocoran memori.
1. Abaikan Amaran (Disyorkan):
Tindakan Tomcat adalah betul. Isunya terletak pada kod pemacu JDBC. Bersabar sehingga vendor pemandu mengeluarkan pembetulan dan kemas kini pemandu anda.
2. Turun taraf kepada Tomcat 6.0.23 atau Lebih Lama:
Senyapkan amaran, tetapi dedahkan diri anda kepada kemungkinan kebocoran memori.
3. Alihkan Pemacu JDBC ke Folder /lib Tomcat dan Gunakan Kolam Sambungan:
Pastikan pengurusan pemandu melalui sumber data kumpulan sambungan. Pertimbangkan untuk menggunakan HikariCP atau Tomcat JDBC Pool untuk pembatalan pendaftaran pemandu yang betul.
Atas ialah kandungan terperinci Mengapa Tomcat Mengeluarkan Amaran Pendaftaran Auto Pemandu JDBC, dan Bagaimana Saya Boleh Menyelesaikannya?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!