2014-12-01 67 views
-1

当我跑我的Hibernate应用程序它显示流动错误:Hibernate的错误:值java.sql.SQLException:没有合适的驱动程序找到了JDBC的:mysql://本地主机:3306 /数据库名称

log4j:WARN No appenders could be found for logger (org.hibernate.cfg.Environment). 
log4j:WARN Please initialize the log4j system properly. 
Exception in thread "main" org.hibernate.exception.JDBCConnectionException: Cannot open connection 
    at org.hibernate.exception.SQLStateConverter.convert(SQLStateConverter.java:74) 
    at org.hibernate.exception.JDBCExceptionHelper.convert(JDBCExceptionHelper.java:43) 
    at org.hibernate.exception.JDBCExceptionHelper.convert(JDBCExceptionHelper.java:29) 
    at org.hibernate.jdbc.ConnectionManager.openConnection(ConnectionManager.java:420) 
    at org.hibernate.jdbc.ConnectionManager.getConnection(ConnectionManager.java:144) 
    at org.hibernate.jdbc.JDBCContext.connection(JDBCContext.java:119) 
    at org.hibernate.transaction.JDBCTransaction.begin(JDBCTransaction.java:57) 
    at org.hibernate.impl.SessionImpl.beginTransaction(SessionImpl.java:1326) 
    at com.jwt.hibernate.SimpleTest.main(SimpleTest.java:23) 
Caused by: java.sql.SQLException: No suitable driver found for jdbc:mysql://localhost:3306/javawebtutor 
    at java.sql.DriverManager.getConnection(Unknown Source) 
    at java.sql.DriverManager.getConnection(Unknown Source) 
    at org.hibernate.connection.DriverManagerConnectionProvider.getConnection(DriverManagerConnectionProvider.java:110) 
    at org.hibernate.jdbc.ConnectionManager.openConnection(ConnectionManager.java:417) 
    ... 5 more 

我想一提的是MySQL服务器的版本是5.5,接口:使用mysql-connector-java的5.1.20-bin.jar ,这是一个名为我的Hibernate应用程序的配置文件:hibernate.cfg.xml中

<!-- language: lang-xml --> 

     <?xml version="1.0" encoding="utf-8"?> 
     <!DOCTYPE hibernate-configuration PUBLIC 
     "-//Hibernate/Hibernate Configuration DTD 3.0//EN" 
     "http://www.hibernate.org/dtd/hibernate-configuration-3.0.dtd"> 

     <hibernate-configuration> 
      <session-factory> 
       <property name="hibernate.connection.driver_class">com.mysql.jdbc.Driver</property> 
       <property name="hibernate.connection.url">jdbc:mysql://localhost:3306/javawebtutor</property> 
       <property name="hibernate.connection.username">root</property> 
       <property name="hibernate.connection.password">root</property> 
       <property name="hibernate.dialect">org.hibernate.dialect.MySQLDialect</property> 
       <property name="show_sql">true</property> 
       <property name="format_sql">true</property> 
       <property name="hbm2ddl.auto">create </property> 
       <mapping resource="com/jwt/hibernate/student.hbm.xml" /> 
      </session-factory> 
     </hibernate-configuration> 

指导我问题在哪里。有关于连接器版本或MySQL版本不匹配的问题?

+0

看来,MySQL的连接器罐子是不是在classpath。如果您从IDE运行它,可能是您错误地配置了构建路径。如果你在Tomcat上运行它,请确保你将jar放入WAR文件或Tomcat lib目录 – 2014-12-01 18:10:41

+0

我已经通过点击构建路径配置添加了mysql-connector jar,然后添加jar并添加到lib选项卡中。 – 2014-12-01 18:19:15

+2

用IDE等详细信息更新您的问题,如何运行代码等。 – 2014-12-01 18:21:26

回答

0

你在用什么IDE?尝试并将其添加到您的classpath中,然后进行部署。 如果它是一个Web应用程序尝试将要WEB-INF/lib 如果是行家的应用程序放在里面片段您pom.xml

<dependency> 
    <groupId>mysql</groupId> 
    <artifactId>mysql-connector-java</artifactId> 
    <version>5.1.34</version> 
</dependency> 
+0

我正在使用Eclipse。 – 2014-12-02 04:35:19

相关问题