Hibernate3.1简单描述

开发 后端
这里介绍Hibernate3.1,在使用 identity的是用和Hibernate3.1的jar,而hibernate3.2中就会抛异常,使用increment就不会。

在向大家详细介绍Hibernate3.1之前,首先让大家了解下Hibernate3.1和Hibernate3.2相关的一些东西,然后全面介绍Hibernate3.1。

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

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

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

一时真还真把我给拦了一下,还是发了点时间看了,刚开发完的项目是一样的配置一切都很顺利,这次怎么报这种异常,刚开始把重点放在了。hbm.xml文件的映射上,可是都是Hibernate 反转控制生成的,不会有错。

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

把配置文件由这样的:

  1. <id name="kid" type="java.lang.Long"> 
  2. <column name="KID" precision="22" scale="0" /> 
  3. <generator class="identity"/> 
  4. </id> 
  5.  
  6. //改为  
  7.  
  8. <id name="kid" type="java.lang.Long"> 
  9. <column name="KID" precision="22" scale="0" /> 
  10. <generator class="increment"/> 
  11. </id> 

结果一切都运行成功。

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

【编辑推荐】

  1. iBATIS与Hibernate间的取舍
  2. JDBC与Hibernate读取性能分析
  3. 浅析NHibernate一对一映射的延迟加载
  4. 使用Hibernate 3二级缓存的四个经验
  5. MySQL存储过程中的Hibernate JDBC
责任编辑:佚名 来源: IT168
相关推荐

2009-06-18 10:41:18

Hibernate3.Hibernate3.

2009-09-22 12:45:00

Hibernate性能

2009-09-28 15:43:42

Hibernate O

2009-09-23 10:58:32

Hibernate T

2009-09-22 11:16:27

Hibernate经验

2009-09-27 13:00:56

Hibernate S

2009-09-24 13:17:37

Hibernate类库

2009-09-27 17:37:32

Hibernate拦截

2009-09-25 10:33:25

Hibernate单元

2009-09-27 17:05:02

Hibernate p

2009-09-23 17:34:18

Hibernate映射

2009-09-21 16:30:20

Hibernate S

2009-09-22 17:41:07

Hibernate性能

2009-09-29 16:48:42

Hibernate J

2009-09-23 10:23:03

Hibernate检查

2009-09-29 10:57:25

设置Hibernate

2009-09-21 17:46:34

Hibernate持久

2009-09-24 16:19:53

Hibernate应用

2009-09-22 15:04:37

Hibernate M

2009-09-25 14:28:40

Hibernate S
点赞
收藏

51CTO技术栈公众号