Hibernate异常总结

1.org.hibernate.exception.ConstraintViolationException: Could not execute JDBC batch update
2.java.lang.OutOfMemoryError: PermGen space(全称:Permanent Generation space),指的是内存的永久保存区域
3.org.hibernate.hql.ast.QuerySyntaxException
4.Caused by: org.hibernate.ObjectNotFoundException: No row with the given identifier exists: [com.butterfly.entity.Notice#2]
5.Caused by: org.hibernate.exception.SQLGrammarException: could not insert: [com.butterfly.entity.Photo]
6.org.apache.jasper.JasperException: /zone/edit_forum.jsp(2,0) Page directive must not have multiple occurrences of pageencoding
7.Caused by:java.sql.BatchUpdateException: Incorrect string value: '\xE6\x88\x91\xE7\x9A\x84...' for column 'description' at row 1:原因不是主键是组合造成了insert和update的误判,而是mysql里数据库
'description' 字段编码设置的问题,改成utf-8就没事啦,
8.Caused by: org.springframework.beans.BeanInstantiationException: Could not instantiate bean class [org.springframework.orm.hibernate3.LocalSessionFactoryBean]: Constructor threw exception; nested exception is java.lang.NoClassDefFoundError: org/slf4j/impl/StaticLoggerBinder;问题解决:导入spring包下目录spring-framework-2.5.6\lib\slf4j的slf4j-log4j12-1.5.0.jar
9.Caused by: java.lang.NoClassDefFoundError: javax/persistence/Entity;缺少ejb3-persistence.jar引起
10.Caused by: java.lang.ClassNotFoundException: org.hibernate.cfg.AnnotationConfiguration:缺少hibernate-commons-annotations.jar引起
11.Caused by: java.lang.IllegalArgumentException: 'sessionFactory' or 'hibernateTemplate' is required
  问题是:使用HibernateDaoSupport引起,程序中所有的DAO继承HibernateDaoSupport,而HibernateDaoSupport需要spring注入'sessionFactory'
12.java.lang.NullPointerException
at org.apache.struts2.views.jsp.ComponentTagSupport.doStartTag(ComponentTagSupport.java:49):解决办法是:action里对应的属性忘记用@Resource(name="forumCategoryInfor")注入了,写上问题解决
13.java.lang.OutOfMemoryError: Java heap space
14.org.springframework.dao.InvalidDataAccessApiUsageException: Write operations are not allowed in read-only mode (FlushMode.NEVER/MANUAL): Turn your Session into FlushMode.COMMIT/AUTO or remove 'readOnly' marker from transaction definition.解决:问题是我们开启了OpenSessionInViewFilter过滤器,配置配置OpenSessionInViewFilter,防止在hibernate延迟加载时,不会再因为session被关闭,而导致的的延迟加载数据异常 ,这个过滤器的FLUSHMODE默认设置是MANUAL,如果将FLUSHMODE设置为MANUAL或NEVEL,在操作过程中hibernate会将事务设置为readOnly,所以删除,添加就会出现这个异常
15.Caused by: org.hibernate.MappingException: Repeated column in mapping for entity: com.ao.model.Employee column: DEPARTID (should be mapped with insert="false" update="false");
   问题解决:   
    把not-null="true"去掉即可,我数据库里设置的是可以为空,与配置文件的不为空而引起的
16.java.lang.ClassNotFoundException: org.apache.commons.lang.xwork.StringUtils
 at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1358)
 at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1204)
 at org.apache.struts2.json.SerializationParams.(SerializationParams.java:57)
 at org.apache.struts2.json.JSONResult.writeToResponse(JSONResult.java:214)
 at org.apache.struts2.json.JSONResult.execute(JSONResult.java:204)   解决方案:是由于在struts中使用json缺少jar引起,引入xwork-core-2.1.6.jar即可
17.org.hibernate.QueryException: could not resolve property: employee.depart.departid of: com.ao.model.Hols
18.jboss部署项目:org.jboss.deployers.spi.DeploymentException: URL file:/E:/jboss/jboss-5.0.1.GA/server/default/deploy/study-bbs.war/ deployment failed
  发现deploy下已经存在一个ROOT.war的文件夹,将这个WAR文件删除掉,重新部署你的包,重启JBOSS,方解决了

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值