[tomcat启动报错]registered the JDBC driver [com.alibaba.druid.proxy.DruidDriver] but failed to unregister it when the web application was stopped

摘要:
环境:tomcat和项目配置有多个数据源,启动时报告以下错误:严重:Web应用程序[/qdp resource job]注册了JDBCdriver[com.aliba.druid.proxy.DruidDriver],但无法注册Web应用程序已停止。Toprev

环境:一个tomcat ,一个工程配置了多数据源,在启动的时候报如下错误:

SEVERE: The web application [/qdp-resource-job] registered the JDBC driver [com.alibaba.druid.proxy.DruidDriver] but failed to unregister it when the web application was stopped. To prevent a memory leak, the JDBC Driver has been forcibly unregistered.
Aug 14, 2017 3:23:27 PM org.apache.catalina.loader.WebappClassLoader clearReferencesJdbc
SEVERE: The web application [/qdp-resource-job] 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.
Aug 14, 2017 3:23:27 PM org.apache.catalina.loader.WebappClassLoader clearReferencesThreads
SEVERE: The web application [/qdp-resource-job] appears to have started a thread named [Abandoned connection cleanup thread] but has failed to stop it. This is very likely to create a memory leak.
Aug 14, 2017 3:23:27 PM org.apache.catalina.loader.WebappClassLoader clearReferencesThreads
SEVERE: The web application [/qdp-resource-job] appears to have started a thread named [Druid-ConnectionPool-Create-827239851] but has failed to stop it. This is very likely to create a memory leak.
Aug 14, 2017 3:23:27 PM org.apache.catalina.loader.WebappClassLoader clearReferencesThreads
SEVERE: The web application [/qdp-resource-job] appears to have started a thread named [Druid-ConnectionPool-Destroy-827239851] but has failed to stop it. This is very likely to create a memory leak.
Aug 14, 2017 3:23:27 PM org.apache.catalina.loader.WebappClassLoader clearReferencesThreads
SEVERE: The web application [/qdp-resource-job] appears to have started a thread named [Druid-ConnectionPool-Create-913636676] but has failed to stop it. This is very likely to create a memory leak.
Aug 14, 2017 3:23:27 PM org.apache.catalina.loader.WebappClassLoader clearReferencesThreads
SEVERE: The web application [/qdp-resource-job] appears to have started a thread named [Druid-ConnectionPool-Destroy-913636676] but has failed to stop it. This is very likely to create a memory leak.
Aug 14, 2017 3:23:27 PM org.apache.catalina.loader.WebappClassLoader clearReferencesThreads
SEVERE: The web application [/qdp-resource-job] appears to have started a thread named [Druid-ConnectionPool-Create-789799328] but has failed to stop it. This is very likely to create a memory leak.
Aug 14, 2017 3:23:27 PM org.apache.catalina.loader.WebappClassLoader clearReferencesThreads
SEVERE: The web application [/qdp-resource-job] appears to have started a thread named [Druid-ConnectionPool-Destroy-789799328] but has failed to stop it. This is very likely to create a memory leak.
Aug 14, 2017 3:23:27 PM org.apache.catalina.loader.WebappClassLoader clearReferencesThreads
SEVERE: The web application [/qdp-resource-job] appears to have started a thread named [Druid-ConnectionPool-Create-927599675] but has failed to stop it. This is very likely to create a memory leak.

解决方法:在多数据源配置的时候,只配置一个在启动的时候进行初始化,其他的不动,如下:

<!-- 第一数据源  -->
    <bean name="dataSourceResource" class="com.alibaba.druid.pool.DruidDataSource" init-method="init" destroy-method="close">
        <property name="url" value="${jdbc.url}" /> 
        <property name="username" value="${jdbc.username}" /> 
        <property name="password" value="${jdbc.password}" /> 
        <property name="initialSize" value="${jdbc.initialSize}" /> 
        <property name="minIdle" value="${jdbc.minIdle}" /> 
        <property name="maxActive" value="${jdbc.maxActive}" /> 
        <property name="maxWait" value="${jdbc.maxWait}" /> 
        <property name="timeBetweenEvictionRunsMillis" value="${jdbc.timeBetweenEvictionRunsMillis}" /> 
        <property name="minEvictableIdleTimeMillis" value="${jdbc.minEvictableIdleTimeMillis}" /> 
        <property name="validationQuery" value="${jdbc.validationQuery}" />
        <property name="testWhileIdle" value="${jdbc.testWhileIdle}" /> 
        <property name="testOnBorrow" value="${jdbc.testOnBorrow}" /> 
        <property name="testOnReturn" value="${jdbc.testOnReturn}" /> 
        <property name="removeAbandoned" value="${jdbc.removeAbandoned}" /> 
        <property name="removeAbandonedTimeout" value="${jdbc.removeAbandonedTimeout}" /> 
        <property name="filters" value="${jdbc.filters}" />
        <property name="logAbandoned" value="true" />
        <property name="proxyFilters">
            <list>
                <ref bean="log-filter"/>
            </list>
        </property>
    </bean>
    <!-- 第二数据源  -->
    <bean name="dataSourceCustomer" class="com.alibaba.druid.pool.DruidDataSource" init-method="init" destroy-method="close">
        <property name="url" value="${customer.url}" /> 
        <property name="username" value="${customer.username}" /> 
        <property name="password" value="${customer.password}" /> 
    </bean>
    
    <!-- 第三数据源  -->
    <bean name="dataSourceBuilding" class="com.alibaba.druid.pool.DruidDataSource" init-method="init" destroy-method="close">
        <property name="url" value="${building.url}" /> 
        <property name="username" value="${building.username}" /> 
        <property name="password" value="${building.password}" /> 
    </bean>

第二和第三数据源只保留最基础的url 、username、password 三个配置即可!

免责声明:文章转载自《[tomcat启动报错]registered the JDBC driver [com.alibaba.druid.proxy.DruidDriver] but failed to unregister it when the web application was stopped》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇用谷歌浏览器来当手机模拟器Docker学习笔记二:Docker设置镜像源下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

jmeter使用JDBC连接SQLserver数据库

为了使用jmeter快速的进行项目的压测,获取数据就是个新问题。使用jmeter使用JDBC直接调用数据库的数据刚好可以解决这样的问题。 首先应该在电脑上面安装SQLserver数据库,win7系统适配2005-2008的SQLserver,其他的将安装失败但如果是win10系统就可以装最新版本的SQLserver。 第二步就是下载SQL驱动链接:http...

SonarQube的安装、配置与使用

SonarQube是管理代码质量一个开放平台,可以快速的定位代码中潜在的或者明显的错误,下面将会介绍一下这个工具的安装、配置以及使用。 准备工作; 1、jdk(不再介绍) 2、sonarqube:http://www.sonarqube.org/downloads/ 3、SonarQube+Scanner:https://sonarsource.bint...

SAP内存/ABAP内存/共享内存区别

(1)、读取和使用方法不同SAP内存使用SET/GET parameters方法;SET PARAMETER ID 'MAT' field p_matnr.GET PARAMETER ID 'MAT' field p_matnr. ABAP内存使用EXPORT 和IMPORT  方法;export p_matnr = p_matnr to memory...

mysql2es全量更新方案

mysql到es的全量更新方案可以通过 logstash来实现 logstash可以做基于全量的定时更新,也可以做基于时间的定时更新。 logstash的使用方式如下(本人用的是logstash-7.6.1,不同版本在使用上应该有细微区别,区别百度可解决) 1.https://artifacts.elastic.co/downloads/logstash/...

JAVA连接数据库

运行如下Java程序,学会JAVA连接数据库的方法。。 import java.sql.*; public class Test { public static void main(String[] srg) { String driverName = "com.microsoft.sqlserver.jdbc.SQLServerDriver"; //加载...

J2EE的13个规范之(二) JDBC 及其使用

        我想大家都知道ODBC是什么?ODBC(OpenDatabaseConnectivity。开放数据库互连)是微软公司开放服务结构(WOSA,WindowsOpenServicesArchitecture)中有关数据库的一个组成部分。它建立了一组规范,并提供了一组对数据库訪问的标准API(应用程序编程接口)。        JDBC(Jav...