当前位置: 代码迷 >> Java相关 >> 配置hibernate有关问题
  详细解决方案

配置hibernate有关问题

热度:8852   发布时间:2013-02-25 21:45:43.0
配置hibernate问题
我配置hibernate
其中hibernate.cfg.xml配置如下
XML code
<session-factory>        <!--配置数据库连接 -->        <property name="connection.url">            jdbc:oracle:thin:@localhost:1521:orcl        </property>        <property name="connection.username">scott</property>        <property name="connection.password">tigger</property>        <property name="connection.driver_class">            oracle.jdbc.driver.OracleDriver        </property>        <property name="dialect">org.hibernate.dialect.Oracle10gDialect</property>        <!-- 是否打印Sql语句 -->        <property name="hibernate.show_sql">true</property>        <mapping resource="com/szy/hibernate/user.hbm.xml" />    </session-factory>


user.hbm.xml文件如下配置
XML code
<hibernate-mapping package="com.szy.hibernate"> <class name="User" table="t_user">  <id column="ID" name="id" length="10" type="java.lang.String">   <generator class="assigned"/>  </id>  <property column="USERNAME" name="username" type="java.lang.String" length="20" not-null="true" unique="true"/>  <property column="PASSWORD" name="password" type="java.lang.String" length="20"/>  <property column="AGE" generated="never" lazy="false" name="age" type="java.lang.Integer"/> </class></hibernate-mapping>


数据库是通过以下代码生成的
Java code
Configuration config=new Configuration().configure();        SchemaExport export=new SchemaExport(config);        export.create(true, true);


测试代码如下
Java code
User user=new User();        user.setId("001");        user.setUsername("coolszy");        user.setPassword("test");        user.setAge(21);                Session session=HibernateUtil.getSession();        Transaction ts=session.beginTransaction();        session.save(user);        ts.commit();


其中HibernateUtil是过去session的工具类
运行时老是报下面的错误

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 com.szy.hibernate.HibernateUtil.<clinit>(HibernateUtil.java:10)
at com.szy.hibernate.Test.main(Test.java:14)

不知怎么解决,请高手赐教

------解决方案--------------------------------------------------------
<property column="PASSWORD" name="password" type="java.lang.String" length="20"/>
type是指hibernate的数据类型吧,应该写成string
------解决方案--------------------------------------------------------
楼上正解
  相关解决方案