Skip to main content

Posts

Showing posts with the label spring Boot DB connection leak

De-Registering JDBC Driver in SpringBoot

     Prevent Memory Leak by De-Registering JDBC Driver It is observed in SpringBoot Application that Database Connections might cause memory leaks.  Although Tomcat forcibly deregisters the JDBC drivers, it is good practice to clean up the resources created by webapps on context destruction. It will ensure memory leak prevention that Tomcat at times does not ensure. In simple words, it means if somehow, JDBC driver does not automatically deregister  when the servlet context is being destroyed, it can be done  at the container level also. Below snippet will ensure that the deregister of Drivers happen at the time of context destruction. @Bean protected ServletContextListener listener() { return new ServletContextListener() { @Override public void contextInitialized(ServletContextEvent sce) { } @Override public final void contextDestroyed(ServletContextEvent sce) { // ... First close any background tasks which may be using ...