报错信息:

java.lang.AbstractMethodError:com.microsoft.jdbc.base.BaseDatabaseMetaData.supportsGetGeneratedKeys()Z

或者

java.lang.AbstractMethodError: com.microsoft.jdbc.base.BaseDatabaseMetaData.getJDBCMajorVersion()I

错误原因:

网上查找资料发现原因是microsoft(微软)提供的SqlServer数据库驱动存在bug。(注意:java代码调原驱动连接数据库是没有问题的,搭配hibernate会有此问题。) 需要换一种驱动连接,使用jtds这种驱动,就可以了。

解决方法:

在浏览器中输入下载地址:http://sourceforge.net/projects/jtds/files/,下载jtds1.2版(大概500多K),解压得到jtds-1.2.jar,引用到eclipse中项目目录下(去除原驱动引用),更改hibernate配置文件:

原驱动连接配置:

<property name="connection.driver_class">com.microsoft.jdbc.sqlserver.SQLServerDriver</property>
        <property name="connection.url">jdbc:microsoft:sqlserver://127.0.0.1:1433;DatabaseName=hibernate</property>
更改jtds连接:  
        <property name="connection.driver_class">net.sourceforge.jtds.jdbc.Driver</property>
        <property name="connection.url">jdbc:jtds:sqlserver://127.0.0.1:1433;DatabaseName=hibernate</property

相关文章:

  • 2022-12-23
  • 2021-11-19
  • 2022-01-13
  • 2021-07-13
  • 2021-09-16
  • 2021-07-20
  • 2021-11-24
  • 2022-01-28
猜你喜欢
  • 2022-12-23
  • 2022-02-28
  • 2022-12-23
  • 2022-01-04
  • 2022-12-23
  • 2021-12-07
  • 2022-02-01
相关资源
相似解决方案