异常信息:
org.hibernate.id.IdentifierGenerationException: ids for this class must be manually assigned before calling save():
google到的出错或异常原因:
<id> 元素配置不正确, <id> 元素缺少其子元素 <generator> </generator> 的配置。
解决方法:
<id> 元素映射了相应数据库表的主键字段,对其子元素 <generator class= " "> ,其中class的取值可以为increment、identity、sequence、hilo、native……等,更多的可参考hibernate参考文档,一般取其值为native 。
我的*.hbm.xml文件如下:
<hibernate-mapping>
<class name= "com.fqf.Vipdata " table= "vipdata " catalog= "test ">
<id name= "vipId " type= "java.lang.Integer ">
<column name= "vipId " />
<generator class= "assigned " />
</id>
<property name= "vipName " type= "java.lang.String ">
<column name= "vipName " length= "20 " not-null= "true " />
</property>
<property name= "vipTitle " type= "java.lang.String ">
<column name= "vipTitle " length= "20 " not-null= "true " />
</property>
</class>
</hibernate-mapping>
试过把assigned改成native,问题依旧
不知道如何解决这个异常,求教。
------解决方法--------------------------------------------------------
你用的是Mysql数据库马?
如果是 把上面 的 catalog= "test " 去掉 看看
看看你的数据库表中的 id 是不是自增长类型!
------解决方法--------------------------------------------------------
<generator class= "assigned " /> 中把assigned改为vipId的类型