【问题标题】:No SQL connection没有 SQL 连接
【发布时间】:2012-05-06 19:42:20
【问题描述】:

最近我决定从 Common DBCP 迁移到 Tomcat JDBC 连接池。我更改了 bean 描述(使用 spring 3.1 + hibernate 4 + tomcat)并在我的网络应用启动时遇到了下一个问题:

HHH000342:无法获得查询元数据的连接:com.mysql.jdbc.Driver

然后当我尝试从我的应用中查询 db 时,我得到:

23:04:40,021 WARN [http-bio-8080-exec-10] spi.SqlExceptionHelper:(SqlExceptionHelper.java:143) - SQL 错误:0,SQLState:null

23:04:40,022 错误 [http-bio-8080-exec-10] spi.SqlExceptionHelper:(SqlExceptionHelper.java:144) - com.mysql.jdbc.Driver

我一定是配置有问题,所以休眠无法获得连接但看不到它。如果您能指出正确的方向,我将不胜感激。

这是我的数据源 bean 定义的一部分

<bean id="jdbcDataSource" class="org.apache.tomcat.jdbc.pool.DataSource" destroy-              method="close"    
    p:driverClassName="com.mysql.jdbc.Driver"
p:url="jdbc:mysql://127.0.0.1:3306/test"
p:username="root"
p:password="test" 
p:defaultAutoCommit="false"
p:maxActive="100"
p:maxIdle="100"
    p:minIdle="10"
p:initialSize="10"
p:maxWait="30000"
p:testWhileIdle="true"   
p:validationInterval="60000"
p:validationQuery="SELECT 1"                
p:timeBetweenEvictionRunsMillis="60000"
p:minEvictableIdleTimeMillis="600000"
p:maxAge="360000"
/>

这就是我如何将它与 Spring 的会话工厂联系起来

<bean id="sessionFactory" class="org.springframework.orm.hibernate4.LocalSessionFactoryBean">
    <property name="dataSource" ref="jdbcDataSource" />...

【问题讨论】:

  • 你能发布你得到的完整堆栈跟踪吗?具体来说:alst Caused by?

标签: spring hibernate tomcat connection-pooling


【解决方案1】:

确保您使用的是 JDK 6。使用 JDK5 可能是导致此错误的原因之一。

但是,您的问题有一个解决方法,explained here

【讨论】:

    【解决方案2】:

    迁移后,我忘记将 lib tomcat-jdbc 添加到我的类路径 :) 现在可以了

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-07-25
      • 2013-07-29
      • 2019-06-06
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多