1

我在休眠连接中遇到问题。在我的 hibernate.hbm.xml 文件中如下所示

<session-factory>

    <!-- Database connection settings -->
    <!-- <property name="connection.driver_class">org.hsqldb.jdbcDriver</property> 
        <property name="connection.url">jdbc:hsqldb:hsql://localhost/Test</property> -->

    <property name="connection.driver_class">com.microsoft.sqlserver.jdbc.SQLServerDriver</property>
    <property name="connection.url">jdbc:jtds:sqlserver://localhost/Test</property>
    <property name="connection.username">test</property>
    <property name="connection.password">sa</property>
    <!-- JDBC connection pool (use the built-in) -->
    <property name="connection.pool_size">1</property>

    <!-- SQL dialect -->
    <property name="dialect">
        org.hibernate.dialect.SQLServerDialect
    </property>
    <mapping resource="UserdetailsHbmFile.hbm.xml" />
    <mapping class="com.sam.UserDetails" />
</session-factory>

我得到这个错误

SLF4J: Failed to load class "org.slf4j.impl.StaticLoggerBinder".
SLF4J: Defaulting to no-operation (NOP) logger implementation
SLF4J: See http://www.slf4j.org/codes.html#StaticLoggerBinder for further details.
Exception in thread "main" org.hibernate.exception.JDBCConnectionException: Cannot open connection
    at org.hibernate.exception.SQLStateConverter.convert(SQLStateConverter.java:99)
    at org.hibernate.exception.JDBCExceptionHelper.convert(JDBCExceptionHelper.java:66)
    at org.hibernate.exception.JDBCExceptionHelper.convert(JDBCExceptionHelper.java:52)
    at org.hibernate.jdbc.ConnectionManager.openConnection(ConnectionManager.java:449)
    at org.hibernate.jdbc.ConnectionManager.getConnection(ConnectionManager.java:167)
    at org.hibernate.jdbc.JDBCContext.connection(JDBCContext.java:160)
    at org.hibernate.transaction.JDBCTransaction.begin(JDBCTransaction.java:81)
    at org.hibernate.impl.SessionImpl.beginTransaction(SessionImpl.java:1473)
    at RunUserDetails.main(RunUserDetails.java:18)
Caused by: java.sql.SQLException: No suitable driver found for jdbc:jtds:sqlserver://localhost/Test
    at java.sql.DriverManager.getConnection(DriverManager.java:604)
    at java.sql.DriverManager.getConnection(DriverManager.java:190)
    at org.hibernate.connection.DriverManagerConnectionProvider.getConnection(DriverManagerConnectionProvider.java:133)
    at org.hibernate.jdbc.ConnectionManager.openConnection(ConnectionManager.java:446)
    ... 5 more
4

1 回答 1

1

驱动程序类名称不正确。它应该是: com.microsoft.jdbc.sqlserver.SQLServerDriver

于 2012-10-22T11:50:52.273 回答