这是我的错误报告:Exception in thread "main" java.lang.AbstractMethodError: oracle.jdbc.driver.OracleDatabaseMetaData.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 org.hibernate.cfg.AnnotationConfiguration.buildSessionFactory(AnnotationConfiguration.java:867)
at qhit.com.HibernateSessionFactory.rebuildSessionFactory(HibernateSessionFactory.java:78)
at qhit.com.HibernateSessionFactory.getCurrentSession(HibernateSessionFactory.java:58)
at qhit.com.HibernateSessionFactory.main(HibernateSessionFactory.java:90)求解啊 我是用的annotation来配置的....

解决方案 »

  1.   

    你的主键使用了Generated的方法,Oracle不支持。需要指定为Sequence或者你可以更换一个新的Oracle驱动看看
      

  2.   

    网上找的:希望对你有帮助
    这是由于hibernate和oracle驱动的兼容问题造成的。oracle10g除了了提供了老的class12.jar驱动外,还提供了ojdbc14.jar驱动,其位于:C:\oracle\jdbc\lib。class12.jar会造成该错误,而ojdbcjar就好了
      

  3.   


    但是我是用的Oracle90....里面没有ojdbc14.jar  不过还是要谢谢你
      

  4.   


    啊  还要指定序列啊...那我先试试看哈  oracle驱动怎么换?...我不太懂...
      

  5.   


      大哥 我指定了SEQUENCE也没有用...麻烦你告诉我怎么换驱动 好不好 谢谢了 我的是ORACLE90数据库