最近我决定从Common DBCP迁移到Tomcat JDBC Connection Pool。我更改了bean描述(使用spring 3.1 + hibernate 4 + tomcat)并且在我的web应用启动时遇到了下一个问题:
HHH000342:无法获取与查询元数据的连接:com.mysql.jdbc.Driver
然后当我尝试从我的应用程序查询数据库时,我得到了:
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
我一定是在配置上做错了所以hibernate无法获得连接但却看不到它。如果你能指出我正确的方向,我真的很感激。
这是我的数据源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" />...
答案 0 :(得分:0)
确保使用的是JDK 6.使用JDK5可能是导致此错误的原因之一。
但是,您的问题有explained here。
答案 1 :(得分:0)