不废话直接看出现的问题: 大致意思就是因为某个程序注册JDBC没有释放连接造成内存泄漏的问题。不过一般不会遇到这个问题,后来我检查一遍发现代码都对。 怎么解决呢? 可以创建一个监听器:用来监听和释放连接。 package com.z
不废话直接看出现的问题:
大致意思就是因为某个程序注册JDBC没有释放连接造成内存泄漏的问题。不过一般不会遇到这个问题,后来我检查一遍发现代码都对。
怎么解决呢?
可以创建一个监听器:用来监听和释放连接。
package com.zlh.oa.action;import com.Mysql.cj.jdbc.AbandonedConnectionCleanupThread;import javax.servlet.ServletContextEvent;import javax.servlet.ServletContextListener;import java.sql.DriverManager;import java.sql.SQLException;public class MyContextListener implements ServletContextListener { @Override public void contextInitialized(ServletContextEvent arg0) { System.out.println("WEBService start"); } @Override public void contextDestroyed(ServletContextEvent arg0) { System.out.println("webService stop"); try { while(DriverManager.getDrivers().hasMoreElements()) { DriverManager.dereGISterDriver(DriverManager.getDrivers().nextElement()); } System.out.println("jdbc Driver close"); AbandonedConnectionCleanupThread.checkedShutdown(); System.out.println("clean thread success"); } catch (SQLException e) { e.printStackTrace(); } }}
然后在web.xml中注册监听器就行了。
com.zlh.oa.action.MyContextListener
然后问题成功解决!!!
来源地址:https://blog.csdn.net/qq_50500388/article/details/131153864
--结束END--
本文标题: 关于Web应用程序【】注册了JDBC驱动程序 [com.mysql.cj.jdbc.Driver],但在Web应用程序停止时无法注销它。 为防止内存泄漏,JDBC驱动程序已被强制取消注册的问题。
本文链接: https://www.lsjlt.com/news/390604.html(转载时请注明来源链接)
有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341
下载Word文档到电脑,方便收藏和打印~
2024-04-28
2024-04-28
2024-04-28
2024-04-28
2024-04-28
2024-04-28
2024-04-28
2024-04-28
2024-04-28
2024-04-28
回答
回答
回答
回答
回答
回答
回答
回答
回答
回答
0