package com.doumee;
|
import javax.servlet.ServletContextEvent;
|
import javax.servlet.ServletContextListener;
|
import javax.servlet.annotation.WebListener;
|
import java.sql.Driver;
|
import java.sql.DriverManager;
|
import java.sql.SQLException;
|
import java.util.Enumeration;
|
import com.mysql.cj.jdbc.AbandonedConnectionCleanupThread;
|
|
//@WebListener
|
public class ContextFinalizer implements ServletContextListener{
|
|
public void contextInitialized(ServletContextEvent sce) {}
|
|
public void contextDestroyed(ServletContextEvent sce) {
|
Enumeration<Driver> drivers = DriverManager.getDrivers();
|
Driver d = null;
|
while (drivers.hasMoreElements()) {
|
try {
|
d = drivers.nextElement();
|
DriverManager.deregisterDriver(d);
|
} catch (SQLException ex) {
|
}
|
}
|
try {
|
// 注意:mysql8版本的jar好像shutdown方法私有了,只能调用checkedShutdown或uncheckedShutdown
|
AbandonedConnectionCleanupThread.checkedShutdown();
|
} catch ( Exception e) {
|
e.printStackTrace();
|
}
|
}
|
}
|