Hibernate常见异常总结

转载 2008年10月03日 16:15:00
本文总结Hibernate中常见的异常。

1. net.sf.hibernate.MappingException

       当出现net.sf.hibernate.MappingException: Error reading resource:…异常时一般是因为映射文件出现错误。

       当出现net.sf.hibernate.MappingException: Resource: … not found是因为XML配置文件没找到所致,有可能是放置目录不正确,或者没将其加入hibernate.cfg.xml中。

2. net.sf.hibernate.PropertyNotFoundException

       当出现net.sf.hibernate.PropertyNotFoundException: Could not find a setter for property name in class …时,原因一般是因为XML映射文件中的属性与对应的Java类中的属性的gettersetter方法不一致。

3. org.hibernate.id.IdentifierGenerationException

       当出现org.hibernate.id.IdentifierGenerationException: ids for this class must be manually assigned before calling save():异常时,一般是因为<id>元素配置不正确,<id>元素缺少其子元素<generator></generator>的配置引起。

       解决方案:<id>元素映射了相应数据库表的主键字段,对其子元素<generator class="">,其中class的取值可以为incrementidentitysequencehilonative……等,更多的可参考hibernate参考文档,一般取其值为native 。具体可参考2.2.2.1小节。

4. a different object with the same identifier value was already associated with the session

       当出现a different object with the same identifier value was already associated with the session时,一般是因为在hibernate中同一个session里面有了两个相同标识但是是不同实体。

       有如下几种解决方案:

1)使用session.clean(),如果在clean操作后面又进行了saveOrUpdate(object)等改变数据状态的操作,有可能会报出"Found two representations of same collection"异常。

2)使用session.refresh(object),当object不是数据库中已有数据的对象的时候,不能使用session.refresh(object)因为该方法是从hibernatesession中去重新取object,如果session中没有这个对象,则会报错所以当你使用saveOrUpdate(object)之前还需要判断一下。

3session.merge(object)Hibernate里面自带的方法,推荐使用。

5. SQL Grammer Exception,Could not execute JDBC batch update

       当出现SQL Grammer Exception,Could not execute JDBC batch update异常时,一般是由如下问题引起:

1SQL语句中存在语法错误或是传入的数据有误;

2)数据库的配置不合法,或者说是配置有误。较容易出现的有数据表的映射文件(,hbm.xml文件)配置有误;Hibernate.cfg.xml文件配置有误;

3 当前的数据库用户权限不足,不能操作数据库。以是以Oracle 数据库为例,这种情况下在错误提示中会显示java.sql.BatchUpdateException: ORA-01031: insufficient privileges这样的信息。

       针对上面的各种原因,开发人员可以找出对应的解决方案。

【Hibernate总结系列】常见异常总结(不断补充)

转自:http://www.blogjava.net/amigoxie/archive/2008/01/07/173342.html        本文总结Hibernate中常见的异常。1. net...
  • shenzhen_mydream
  • shenzhen_mydream
  • 2009年03月18日 22:28
  • 556

java中的常见异常总结

作者:未知 转载至:http://blog.csdn.net/taijianyu/article/details/11634881 算术异常类:ArithmeticExecption   空指针异...
  • qq_34731574
  • qq_34731574
  • 2017年03月16日 17:04
  • 545

Java 常见异常总结

工程中常遇到的java异常总结与说明
  • lutianfeiml
  • lutianfeiml
  • 2016年08月20日 20:51
  • 591

Java web 三大框架异常学习总结

struts2.1.8+hibernate2.5.6+spring3.0(ssh2三大框架)常见异常原因和解决方案 http://www.cnblogs.com/lanxuezaipiao/p/361...
  • bcbobo21cn
  • bcbobo21cn
  • 2017年03月06日 20:51
  • 446

javaWeb常见异常的解决方法

1.如果不能给属性赋上值,就检查getter 和 setter方法; 2.如果不能创建对象,检查是否有空参的构造函数 3.注意文本需要去除回车、换行符,不然修改回显数据时前端会报错 4....
  • followMyInclinations
  • followMyInclinations
  • 2015年11月15日 21:31
  • 1188

Hibernate总结系列

在Hibernate中,各表的映射文件….hbm.xml可以通过工具生成,例如在使用MyEclipse开发时,它提供了自动生成映射文件的工具(如果想了解,请百度 myeclipse hiberna...
  • ITdada
  • ITdada
  • 2014年07月10日 16:48
  • 543

Java常见的异常总结

作为一个程序员了解异常和总结异常还是一件很重要的事情。 NullPointerException 空指针异常类 ClassCastException 类型强制转换异常 ...
  • jbjwpzyl3611421
  • jbjwpzyl3611421
  • 2015年09月29日 11:20
  • 792

【Hibernate总结系列】....hbm.xm…

在Hibernate中,各表的映射文件….hbm.xml可以通过工具生成,例如在使用MyEclipse开发时,它提供了自动生成映射文件的工具(如果想了解,请百度 myeclipse hibernate...
  • c466254931
  • c466254931
  • 2014年03月20日 17:26
  • 350

【Hibernate总结系列】使用举例

本节讲述如何使用Hibernate实现记录的增、删、改和查功能。1 查询       在Hibernate中使用查询时,一般使用Hql查询语句。HQL(Hibernate Query Language...
  • lcj8
  • lcj8
  • 2008年06月07日 17:11
  • 473

Java中异常的总结

转自:http://blog.csdn.net/hguisu/article/details/6155636根据上面的层次图,异常类包括Error和Exception两大类 Error类异常主要是运...
  • zjwcdd
  • zjwcdd
  • 2016年05月26日 16:33
  • 960
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Hibernate常见异常总结
举报原因:
原因补充:

(最多只允许输入30个字)