java.lang.AbstractMethodError: com.microsoft.jdbc.base.BaseDatabaseMetaData.supportsGetGeneratedKey
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" java.lang.AbstractMethodError: com.microsoft.jdbc.base.BaseDatabaseMetaData.supportsGetGeneratedKeys()Z at org.hibernate.cfg.SettingsFactory.buildSettings(SettingsFactory.java:123) at org.hibernate.cfg.Configuration.buildSettingsInternal(Configuration.java:2119) at org.hibernate.cfg.Configuration.buildSettings(Configuration.java:2115) at org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:1339) at dao.HibernateSessionFactory.<clinit>(HibernateSessionFactory.java:31) at dao.BaseHibernateDAO.getSession(BaseHibernateDAO.java:13) at HibernateDAOTest.main(HibernateDAOTest.java:16)
解决:microsoft提供的数据库驱动存在bug。需要换一种驱动连接,使用jtds(下载地址:http://sourceforge.net/projects/jtds/files/)下载jtds1.2版,解压得到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>
问题得到解决。补充:java代码调原驱动连接数据库是没有问题的,搭配hibernate会有此问题。
|
分享到:
相关推荐
在Java编程中,`java.lang.AbstractMethodError`是一个运行时异常,通常发生在尝试调用抽象方法而该方法在运行时的类中没有实现时。这个问题通常与类加载器有关,因为这表明在编译时和运行时的类路径中存在不一致。...
Exception in thread "main" java.lang.AbstractMethodError: org.apache.lucene.analysis.TokenStream.incrementToken()Z 换用svn里源码版正常 http://paoding.googlecode.com/svn/trunk/paoding-analysis/
Spring+Jersey+Mybatis小实例,为了搭建这个折腾了两天,其中一天是因为jar包版本引起的,一直报异常:java.lang.AbstractMethodError: javax.ws.rs.core.UriBuilder.uri(Ljava/lang/String;)Ljavax/ws/rs/core/...
开发者可以编写Java程序,利用数据结构和算法知识来构建Trie树、生成DAG、实现动态规划算法以及HMM和Viterbi算法。"SemanticAnalysisDemo"这个文件名可能是一个演示性的分词程序,它可能包含了以上所述的全部功能,...
在Java编程中,连接Oracle数据库通常需要使用Java Database Connectivity(JDBC)技术,这是一个Java API,它使得Java程序能够与各种数据库进行交互。Oracle JDBC驱动是Oracle公司提供的用于连接Java应用和Oracle...
【标题】"java.lang.AbstractMethodError" 是一个Java运行时错误,它通常发生在尝试调用一个抽象方法但没有具体的实现时。这个错误并不是由编译器捕获的,因为抽象方法在编译时并不需要具体实现,而是由JVM在运行时...
java.lang.AbstractMethodError: oracle.jdbc.driver.T4CConnection.isValid(I)Z 查看官方说明之后才知道这个jar包是给jdk1.4用的,无语。。。 下载了新的ojdbc8,然后加入到我的maven仓库中,在引入到我的项目中...
7. **java.lang.AbstractMethodError**: 当运行时系统发现一个抽象方法的实现时,抛出此异常。这通常是因为使用了不兼容的类版本,其中包含一个抽象方法的定义。 8. **java.lang.AssertionError**: 断言失败时...
12. **java.lang.AbstractMethodError**: 当实现接口或继承抽象类的类尝试调用一个未实现的抽象方法时抛出。确保实现了所有必需的抽象方法。 13. **java.lang.AssertionError**: 在调试过程中,用于表示断言失败。...
- **`java.lang.AbstractMethodError`**:当子类没有重写抽象父类的抽象方法时抛出。 - **`java.lang.ClassCircularityError`**:当类层次结构中存在循环继承关系时抛出。 - **`java.lang.ClassFormatError`**:当类...
java.lang.AbstractMethodError: org.apache.xerces.dom.ElementNSImpl.setUserData(Ljava/lang/String;Ljava/lang/Object;Lorg/w3c/dom/UserDataHandler;)Ljava/lang/Object; at org.apache.cxf.staxutils.StaxUtil...
java.lang.AbstractMethodError 是一种抽象方法错误,指的是在程序中尝试调用抽象方法时抛出的异常。 14. java.lang.AssertionError 断言错 java.lang.AssertionError 是一种断言错,指的是在程序中断言失败时抛出...
java.lang.AbstractMethodError: be.telio.mediastore.ui.upload.GarryMultiPartRequest.cleanUp()V at org.apache.struts2.dispatcher.multipart.MultiPartRequestWrapper.cleanUp(MultiPartRequestWrapper.java:...
12. **java.lang.AbstractMethodError**、**java.lang.AssertionError**、**java.lang.ClassCircularityError**、**java.lang.ClassFormatError**等: 这些是更底层的运行时错误,通常表明程序中存在严重的问题,如...
- **`java.lang.AbstractMethodError`**:当应用程序试图调用抽象类的抽象方法时抛出。 - **`java.lang.AssertionError`**:当断言失败时抛出,通常用于调试阶段。 - **`java.lang.ClassCircularityError`**:在...
Exception in thread "main" java.lang.AbstractMethodError: org.apache.lucene.analysis.TokenStream.incrementToken()Z at org.apache.lucene.index.DocInverterPerField.processFields(DocInverterPerField....
nested exception is java.lang.AbstractMethodError: org.springframework.aop.framework.autoproxy.BeanNameAutoProxyCreator.postProcessAfterInstantiation(Ljava/lang/Object;Ljava/lang/String;)Z at org....