温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

Hibernate3.1与Hibernate3.2的区别是什么

发布时间:2021-07-14 09:09:23 来源:亿速云 阅读:131 作者:chen 栏目:编程语言

本篇内容介绍了“Hibernate3.1与Hibernate3.2的区别是什么”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!

今天在工作的时候发现了一个问题,希望能给大家一些启示,本人对Hibernate并没有很深的了解,只是在项目中使用到肤浅的一些方法,下边讲一讲关于Hibernate3.1和Hibernate3.2相关的一些东西。

今天在运行一个很简单的save()方法报:

Exception   in   thread   "main"   net.sf.hibernate.MappingException:Dialect   does   not   support   identity   key   generation           at   net.sf.hibernate.dialect.Dialect.gerIdentitySelectString(Dialect.java:305)           at   net.sf.hibernate.persister.AbstracEntityPersister.<init>(AbstractEntityPersister.java:646)           at   net.sf.hibernate.persister.EntityPersister.<init>(EntityPersister.java:690)           at   net.sf.hibernate.persister.PersisterFactory.createClassPersister(PersisterFactory.java:42)

一时真还真把我给拦了一下,还是发了点时间看了,刚开发完的项目是一样的配置一切都很顺利,这次怎么报这种异常,

刚开始把重点放在了.hbm.xml文件的映射上,可是都是Hibernate 反转控制生成的,不会有错。

还是网络好呀,在CSDN网搜索到了关于这个问题的解决方法,自动增长的字段:取值可以为increment、identity、sequence、hilo、native……等

把配置文件由这样的:

<id name="kid" type="java.lang.Long">           <column name="KID" precision="22" scale="0" />           <generator class="identity"/>  </id>

改为

<id name="kid" type="java.lang.Long">          <column name="KID" precision="22" scale="0" />          <generator class="increment"/>      </id>

结果一切都运行成功.

具体原因我没有深入去理解,没有时间,只知道,在使用 identity的是用和Hibernate3.1的jar, 而hibernate3.2中就会抛异常,使用increment就不会。具体来说,在这里Hibernate3.1和Hibernate3.2到底本质区别在哪里呢,或许还需要深入的研究。


“Hibernate3.1与Hibernate3.2的区别是什么”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注亿速云网站,小编将为大家输出更多高质量的实用文章!

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI