赛迪网 > IT技术 Java > 技术动态
  IT资讯搜索
 
IT产品搜索
[程序开发][网管世界][网络安全][数据库技术]
[操作系统][嘉宾聊天·在线访谈][活动集锦]
[精彩专题][Symantec专区][订阅IT技术周刊]
[开发论坛][网管论坛][安全论坛][数据库论坛]
[操作系统论坛][Sybase专区][IBM dW技术专区]
[病毒求助][病毒与漏洞播报][文档·源码下载]

JAVA进阶:hibernate配置文件异常的排除

发布时间:2007.12.28 04:43     来源:赛迪网    作者:yanglx

最近在做一个小的web程序时,遇到了一些小问题,在经过小弟的一番努力后都一一化解了,欣喜之余就想把这些解决心得择取一二与大家共享。这些问题都比较初级,高手就不必看了,以免浪费时间,呵呵。
异常1:*.hbm.xml 配置文件中元素配置异常
抛出异常描述:
org.springframework.orm.hibernate3.HibernateSystemException: ids for this cla
ss must be manually assigned before calling save(): com.ebupt.ncsp.assist.ser
vice.department.domain.Department; nested exception is org.hibernate.id.Ident
ifierGenerationException: ids for this class must be manually assigned before
 calling save(): com.ebupt.ncsp.assist.service.department.domain.Department
org.hibernate.id.IdentifierGenerationException: ids for this class must be ma
nually assigned before calling save(): com.ebupt.ncsp.assist.service.departme
nt.domain.Department

出错或异常原因:
    元素配置不正确,元素缺少其子元素的配置。
解决方法:
元素映射了相应数据库表的主键字段,对其子元素,其中class的取值可以为increment、identity、sequence、hilo、native……等,更多的可参考hibernate 参考文档,一般取其值为native 。
在配置* .hbm.xml文件时我没有使用自动生成工具,直接手动地配置,这也是我一时粗心,加之对hibernate参考不是很熟,只是依葫芦画瓢,建议大家(新手)多看看参考文档,是很有帮助的。

异常2:*.hbm.xml 配置文件中元素配置异常
抛出异常描述:
org.springframework.orm.hibernate3.HibernateSystemException:exception setting property value with CGLIB(set hibernate.cglib.use-reflection-optimizer=false for more info) setter of com.info.beran.com.SetComCode nested exception is org.hibernate.PropertyAccessException: setting property value with CGLIB(set hibernate.cglib.use-reflection-optimizer=false for more info)

出错或异常原因:
1.    数据库表中的字段(一般都是数值型的字段)的类型与配置文件中所配置的类型不一致。
2.    在数据库中,数值型字段的值为空null。
相应的解决:
1.    将该字段在配置文件中的类型修改成一致的类型都为Integer。
2.    因为null不能赋值给原始类型,所以在配置数据库中数值型的字段类型(long、int、tinyint)都映射成对象类型Integer问题就解决了。

其实上述的两个异常在使用自动生成配置文件的工具来映射时是不会遇到的,我在这里举出这两个例子希望对大家能够有所帮助。

       (责任编辑:包春林)


[ 发表评论 ] 字体[  ] [ 打印 ] [ 进入博客 ] [ 进入论坛 ]  [ 推荐给朋友 ]
  相关文章
· 关于提高Java技能的几种简单有效的方法 (12-27) · 进阶:关于EJB返回值的最好的解决方案 (12-27)
· ServletContext与ServletConfig的分析 (12-27) · 基础:关于EJB返回值的最好的解决方案 (12-27)
· J2SE综合--讨论Vector遍历的通用实现 (12-27) · JSP/Servlet:tomcat深入内部结构描述 (12-27)
· 用 JSP 定制标签创建超连接的方法(一) (12-27) · 用JSP定制标签创建超连接的方法(二) (12-27)
· J2EE综合:关于Config参数和Context参数 (12-27) · 用JSTL标签访问list且判断list的选中项 (12-27)
  客户需求反馈表
* 姓  名:
更多资料  了解方案  认识厂商
* 单位名称:
* 联系电话:
* 电子邮件:
  赛迪推荐  
  手机·资费 ·新品·导购·评测·手机资费·宽带
手机搜索  诺基亚 N73 MOTO Z6
  IT产品 ·笔记本·台式机·服务器·打印·投影
IT产品搜索 
  IT技术 ·开发·网管·安全·数据库·操作系统
  信息化 ·热点·专题·访谈·周刊·方案案例
· 网银交易收费 我国银行业如何达国际化标准
· 家庭信息化普及率提高 网上缴费成为新时尚
· 五条黄金准则能够让CIO巧妙加薪 CIO焦虑调查
· 网上书店解决方案 深圳边检指挥中心ITSM项目
  IT博客 ·曾剑秋·项立刚·Java学习·网管
  IT技术论坛 ·开发·网管·安全·数据库·系统