如何使用ms访问hibernate?

时间:2015-04-29 07:52:55

标签: java hibernate java-8 netbeans-8

我在netbeans中创建了一个项目。 我需要使用hibernate将ms访问连接为DB。 我还包括一些像......这样的罐子。

公地琅2.6.jar 共享记录-1.1.3.jar hsqldb.jarhsqldb.jar jackcess-2.0.4.jar ucanaccess-2.0.8.jar

我还为ms访问DB创建驱动程序ODBC。 hibernate.cfg.xml的代码。

<property name="hibernate.dialect">org.hibernate.dialect.SQLServerDialect</property>
<property name="hibernate.connection.driver_class">sun.jdbc.odbc.JdbcOdbcDriver</property>  
    <property name="hibernate.connection.url">jdbc:odbc:Driver={Microsoft Access Driver (*.mdb, *.accdb)};DBQ=E:/mydb.accdb</property>
    <property name="hibernate.connection.username">root</property>

但它显示以下错误.....

Exception in thread "AWT-EventQueue-0" org.hibernate.boot.registry.classloading.spi.ClassLoadingException: Unable to load class [sun.jdbc.odbc.JdbcOdbcDriver]
at org.hibernate.boot.registry.classloading.internal.ClassLoaderServiceImpl.classForName(ClassLoaderServiceImpl.java:245)   at org.hibernate.boot.registry.classloading.internal.ClassLoaderServiceImpl.classForName(ClassLoaderServiceImpl.java:245)
at org.hibernate.engine.jdbc.connections.internal.DriverManagerConnectionProviderImpl.loadDriverIfPossible(DriverManagerConnectionProviderImpl.java:200)
at org.hibernate.engine.jdbc.connections.internal.DriverManagerConnectionProviderImpl.buildCreator(DriverManagerConnectionProviderImpl.java:156)
at org.hibernate.engine.jdbc.connections.internal.DriverManagerConnectionProviderImpl.configure(DriverManagerConnectionProviderImpl.java:95)

2 个答案:

答案 0 :(得分:0)

我认为错误信息很明确:

Unable to load class [sun.jdbc.odbc.JdbcOdbcDriver]

您的程序找不到课程sun.jdbc.odbc.JdbcOdbcDriver

不推荐使用JDBC-ODBC-Bridge,并在Java 8中将其删除。

答案 1 :(得分:0)

您不能将ODBC Bridge与Java8一起使用,因为它已被删除。

Removal of JDBC ODBC bridge in java 8

参考:Oracle Blog Entry

或者,您必须使用基于JDBC的驱动程序。