Erro TomCat- Vazamento de Memória

Minha aplicação aparenta estar dando erro de vazamento de memória e esta bem lenta. Como posso resolver?

19-Feb-2019 10:42:41.856 WARNING [http-nio-8084-exec-46] org.apache.catalina.loader.WebappClassLoaderBase.clearReferencesJdbc The web application [qualidade] registered the JDBC driver [com.mysql.jdbc.Driver] but failed to unregister it when the web application was stopped. To prevent a memory leak, the JDBC Driver has been forcibly unregistered.
19-Feb-2019 10:42:41.856 WARNING [http-nio-8084-exec-46] org.apache.catalina.loader.WebappClassLoaderBase.clearReferencesThreads The web application [qualidade] is still processing a request that has yet to finish. This is very likely to create a memory leak. You can control the time allowed for requests to finish by using the unloadDelay attribute of the standard Context implementation. Stack trace of request processing thread:
 java.net.SocketInputStream.socketRead0(Native Method)
 java.net.SocketInputStream.socketRead(SocketInputStream.java:116)
 java.net.SocketInputStream.read(SocketInputStream.java:171)
 java.net.SocketInputStream.read(SocketInputStream.java:141)
 com.mysql.jdbc.util.ReadAheadInputStream.fill(ReadAheadInputStream.java:114)
 com.mysql.jdbc.util.ReadAheadInputStream.readFromUnderlyingStreamIfNecessary(ReadAheadInputStream.java:161)
 com.mysql.jdbc.util.ReadAheadInputStream.read(ReadAheadInputStream.java:189)
 com.mysql.jdbc.MysqlIO.readFully(MysqlIO.java:3049)
 com.mysql.jdbc.MysqlIO.nextRowFast(MysqlIO.java:2157)
 com.mysql.jdbc.MysqlIO.nextRow(MysqlIO.java:1932)
 com.mysql.jdbc.MysqlIO.readSingleRowSet(MysqlIO.java:3437)
 com.mysql.jdbc.MysqlIO.getResultSet(MysqlIO.java:488)
 com.mysql.jdbc.MysqlIO.readResultsForQueryOrUpdate(MysqlIO.java:3131)
 com.mysql.jdbc.MysqlIO.readAllResults(MysqlIO.java:2299)
 com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:2722)
 com.mysql.jdbc.ConnectionImpl.execSQL(ConnectionImpl.java:2788)
 com.mysql.jdbc.ConnectionImpl.execSQL(ConnectionImpl.java:2738)
 com.mysql.jdbc.StatementImpl.executeQuery(StatementImpl.java:1617)
 com.mysql.jdbc.ConnectionImpl.buildCollationMapping(ConnectionImpl.java:990)
 com.mysql.jdbc.ConnectionImpl.initializePropsFromServer(ConnectionImpl.java:3556)
 com.mysql.jdbc.ConnectionImpl.connectOneTryOnly(ConnectionImpl.java:2513)
 com.mysql.jdbc.ConnectionImpl.createNewIO(ConnectionImpl.java:2283)
 com.mysql.jdbc.ConnectionImpl.<init>(ConnectionImpl.java:822)
 com.mysql.jdbc.JDBC4Connection.<init>(JDBC4Connection.java:47)
 sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
 sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
 sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
 java.lang.reflect.Constructor.newInstance(Constructor.java:423)
 com.mysql.jdbc.Util.handleNewInstance(Util.java:411)
 com.mysql.jdbc.ConnectionImpl.getInstance(ConnectionImpl.java:404)
 com.mysql.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:317)
 java.sql.DriverManager.getConnection(DriverManager.java:664)
 java.sql.DriverManager.getConnection(DriverManager.java:247)
 qualidade.db.Conexao.getConnection(Conexao.java:73)
 qualidade.funcoes.Sistema.processRequest(Sistema.java:48)
 qualidade.funcoes.Sistema.doPost(Sistema.java:109)
 javax.servlet.http.HttpServlet.service(HttpServlet.java:648)
 javax.servlet.http.HttpServlet.service(HttpServlet.java:729)
 org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:291)
 org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
 org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
 org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:239)
 org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
 org.netbeans.modules.web.monitor.server.MonitorFilter.doFilter(MonitorFilter.java:393)
 org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:239)
 org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
 org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:217)
 org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:106)
 org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:502)
 org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:142)
 org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:79)
 org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:616)
 org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:88)
 org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:518)
 org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1091)
 org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:673)
 org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1500)
 org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.run(NioEndpoint.java:1456)
 java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
 java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
 org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
 java.lang.Thread.run(Thread.java:748)
19-Feb-2019 10:42:41.887 WARNING [http-nio-8084-exec-46] org.apache.catalina.loader.WebappClassLoaderBase.clearReferencesThreads The web application [qualidade] is still processing a request that has yet to finish. This is very likely to create a memory leak. You can control the time allowed for requests to finish by using the unloadDelay attribute of the standard Context implementation. Stack trace of request processing thread:
 java.net.SocketInputStream.socketRead0(Native Method)
 java.net.SocketInputStream.socketRead(SocketInputStream.java:116)
 java.net.SocketInputStream.read(SocketInputStream.java:171)
 java.net.SocketInputStream.read(SocketInputStream.java:141)
 com.mysql.jdbc.util.ReadAheadInputStream.fill(ReadAheadInputStream.java:114)
 com.mysql.jdbc.util.ReadAheadInputStream.readFromUnderlyingStreamIfNecessary(ReadAheadInputStream.java:161)
 com.mysql.jdbc.util.ReadAheadInputStream.read(ReadAheadInputStream.java:189)
 com.mysql.jdbc.MysqlIO.readFully(MysqlIO.java:3049)
 com.mysql.jdbc.MysqlIO.nextRowFast(MysqlIO.java:2157)
 com.mysql.jdbc.MysqlIO.nextRow(MysqlIO.java:1932)
 com.mysql.jdbc.MysqlIO.readSingleRowSet(MysqlIO.java:3437)
 com.mysql.jdbc.MysqlIO.getResultSet(MysqlIO.java:488)
 com.mysql.jdbc.MysqlIO.readResultsForQueryOrUpdate(MysqlIO.java:3131)
 com.mysql.jdbc.MysqlIO.readAllResults(MysqlIO.java:2299)
 com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:2722)
 com.mysql.jdbc.ConnectionImpl.execSQL(ConnectionImpl.java:2788)
 com.mysql.jdbc.ConnectionImpl.execSQL(ConnectionImpl.java:2738)
 com.mysql.jdbc.StatementImpl.executeQuery(StatementImpl.java:1617)
 com.mysql.jdbc.ConnectionImpl.buildCollationMapping(ConnectionImpl.java:990)
 com.mysql.jdbc.ConnectionImpl.initializePropsFromServer(ConnectionImpl.java:3556)
 com.mysql.jdbc.ConnectionImpl.connectOneTryOnly(ConnectionImpl.java:2513)
 com.mysql.jdbc.ConnectionImpl.createNewIO(ConnectionImpl.java:2283)
 com.mysql.jdbc.ConnectionImpl.<init>(ConnectionImpl.java:822)
 com.mysql.jdbc.JDBC4Connection.<init>(JDBC4Connection.java:47)
 sun.reflect.GeneratedConstructorAccessor51.newInstance(Unknown Source)
 sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
 java.lang.reflect.Constructor.newInstance(Constructor.java:423)
 com.mysql.jdbc.Util.handleNewInstance(Util.java:411)
 com.mysql.jdbc.ConnectionImpl.getInstance(ConnectionImpl.java:404)
 com.mysql.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:317)
 java.sql.DriverManager.getConnection(DriverManager.java:664)
 java.sql.DriverManager.getConnection(DriverManager.java:247)
 qualidade.db.Conexao.getConnection(Conexao.java:73)
 qualidade.funcoes.Sistema.processRequest(Sistema.java:48)
 qualidade.funcoes.Sistema.doPost(Sistema.java:109)
 javax.servlet.http.HttpServlet.service(HttpServlet.java:648)
 javax.servlet.http.HttpServlet.service(HttpServlet.java:729)
 org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:291)
 org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
 org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
 org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:239)
 org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
 org.netbeans.modules.web.monitor.server.MonitorFilter.doFilter(MonitorFilter.java:393)
 org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:239)
 org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
 org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:217)
 org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:106)
 org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:502)
 org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:142)
 org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:79)
 org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:616)
 org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:88)
 org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:518)
 org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1091)
 org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:673)
 org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1500)
 org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.run(NioEndpoint.java:1456)
 java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
 java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
 org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
 java.lang.Thread.run(Thread.java:748)

Está abrindo e fechando as conexões com o banco de dados?

Sim, ja verifiquei todas as conexões e estão sendo fechadas.