Hibernate jdbc找不到合适的驱动程序

时间:2012-04-18 14:03:08

标签: java hibernate jdbc

使用Hibernate时,我收到了可怕的没有合适的驱动程序发现错误。我很确定驱动程序jar是在类路径中,因为我可以Class.forName("com.mysql.jdbc.Driver")。事实上,现在我只是在构建会话工厂之前调用它,我的代码工作。但这是“安全的”吗?为什么会这样?这是我的配置:

<session-factory>
    <property name="hibernate.connection.driver_class">com.mysql.jdbc.Driver</property>
    <property name="hibernate.connection.url">jdbc:mysql://localhost:3306/test</property>

    <property name="hibernate.connection.username">root</property>
    <property name="hibernate.connection.password">password</property>

    <property name="connection.pool_size">1</property>

    <property name="hibernate.dialect">org.hibernate.dialect.MySQLDialect</property>

    <property name="show_sql">true</property>
    <property name="format_sql">true</property>
    <property name="use_sql_comments">false</property>

    <mapping resource="User.hbm.xml" />
</session-factory>

谢谢

1 个答案:

答案 0 :(得分:1)

听起来JAR在CLASSPATH。如果不是这样,你会得到NoClassDefFound例外。

没有合适的驱动程序通常意味着给定驱动程序的连接URL语法不正确。

MySQL需要"jdbc:mysql://server:3306/database" - 你的看起来是正确的。

如果无法解析localhost,则会出现问题。也许127.0.0.1会更好。

MySQL是否在端口3306上侦听?

您要求连接的数据库是否存在?你可以通过MySQL客户端登录并查看表格和数据吗?