hibernate中出现的异常,help!

问题描述

我在保存时出现了此错误,异常代码:Hibernate:insertintoSTATICS.MatchUserList(SALES,LASTSALES,TRANSFOR_RATE,BACK_RATE,GROWTH_RATE,TRADEGROWTHRATE,ORDERS,VISITORS,LEVEL,SCORE,VIEWS,TRADES,BUYERNUMS,TOTALBUYERNUMS,U_ID)values(?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)WARN[main]org.hibernate.util.JDBCExceptionReporter.logExceptions(77)|SQLError:-4228,SQLState:nullERROR[main]org.hibernate.util.JDBCExceptionReporter.logExceptions(78)|[jcc][t4][102][10040][3.57.82]非原子批处理出现故障。虽然已经提交了批处理,但是该批处理的某个成员至少发生了一个异常。使用getNextException()来检索已经过批处理的特定元素的异常。ERRORCODE=-4228,SQLSTATE=nullWARN[main]org.hibernate.util.JDBCExceptionReporter.logExceptions(77)|SQLError:-407,SQLState:23502ERROR[main]org.hibernate.util.JDBCExceptionReporter.logExceptions(78)|Errorforbatchelement#1:DB2SQLError:SQLCODE=-407,SQLSTATE=23502,SQLERRMC=TBSPACEID=2,TABLEID=268,COLNO=3,DRIVER=3.57.82ERROR[main]org.hibernate.event.def.AbstractFlushingEventListener.performExecutions(301)|Couldnotsynchronizedatabasestatewithsessionorg.hibernate.exception.ConstraintViolationException:CouldnotexecuteJDBCbatchupdateatorg.hibernate.exception.SQLStateConverter.convert(SQLStateConverter.java:71)atorg.hibernate.exception.JDBCExceptionHelper.convert(JDBCExceptionHelper.java:43)atorg.hibernate.jdbc.AbstractBatcher.executeBatch(AbstractBatcher.java:253)atorg.hibernate.engine.ActionQueue.executeActions(ActionQueue.java:237)atorg.hibernate.engine.ActionQueue.executeActions(ActionQueue.java:141)atorg.hibernate.event.def.AbstractFlushingEventListener.performExecutions(AbstractFlushingEventListener.java:298)atorg.hibernate.event.def.DefaultFlushEventListener.onFlush(DefaultFlushEventListener.java:27)atorg.hibernate.impl.SessionImpl.flush(SessionImpl.java:1000)atorg.hibernate.impl.SessionImpl.managedFlush(SessionImpl.java:338)atorg.hibernate.transaction.JDBCTransaction.commit(JDBCTransaction.java:106)atorg.springframework.orm.hibernate3.HibernateTransactionManager.doCommit(HibernateTransactionManager.java:655)atorg.springframework.transaction.support.AbstractPlatformTransactionManager.processCommit(AbstractPlatformTransactionManager.java:732)atorg.springframework.transaction.support.AbstractPlatformTransactionManager.commit(AbstractPlatformTransactionManager.java:701)atorg.springframework.transaction.interceptor.TransactionAspectSupport.commitTransactionAfterReturning(TransactionAspectSupport.java:321)atorg.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:116)atorg.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171)atorg.springframework.aop.framework.Cglib2AopProxy$DynamicAdvisedInterceptor.intercept(Cglib2AopProxy.java:635)atcn.firstbillion.match.service.MatchUserListServiceImpl$$EnhancerByCGLIB$$1562535c.saveMatchUserListByMatchuser(<generated>)atcn.firstbillion.match.test.testMatchUserListService.testAddMatchUser(testMatchUserListService.java:16)atsun.reflect.NativeMethodAccessorImpl.invoke0(NativeMethod)atsun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)atsun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)atjava.lang.reflect.Method.invoke(Method.java:592)atjunit.framework.TestCase.runTest(TestCase.java:154)atjunit.framework.TestCase.runBare(TestCase.java:127)atjunit.framework.TestResult$1.protect(TestResult.java:106)atjunit.framework.TestResult.runProtected(TestResult.java:124)atjunit.framework.TestResult.run(TestResult.java:109)atjunit.framework.TestCase.run(TestCase.java:118)atjunit.framework.TestSuite.runTest(TestSuite.java:208)atjunit.framework.TestSuite.run(TestSuite.java:203)atorg.eclipse.jdt.internal.junit.runner.junit3.JUnit3TestReference.run(JUnit3TestReference.java:130)atorg.eclipse.jdt.internal.junit.runner.TestExecution.run(TestExecution.java:38)atorg.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:460)atorg.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:673)atorg.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:386)atorg.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:196)Causedby:com.ibm.db2.jcc.am.wn:[jcc][t4][102][10040][3.57.82]非原子批处理出现故障。虽然已经提交了批处理,但是该批处理的某个成员至少发生了一个异常。使用getNextException()来检索已经过批处理的特定元素的异常。ERRORCODE=-4228,SQLSTATE=nullatcom.ibm.db2.jcc.am.bd.a(bd.java:404)atcom.ibm.db2.jcc.am.p.a(p.java:353)atcom.ibm.db2.jcc.am.lm.a(lm.java:3998)atcom.ibm.db2.jcc.am.lm.c(lm.java:3785)atcom.ibm.db2.jcc.am.lm.executeBatch(lm.java:2257)atorg.apache.commons.dbcp.DelegatingStatement.executeBatch(DelegatingStatement.java:297)atorg.hibernate.jdbc.BatchingBatcher.doExecuteBatch(BatchingBatcher.java:48)atorg.hibernate.jdbc.AbstractBatcher.executeBatch(AbstractBatcher.java:246)...34more求救高手!帮帮忙。

解决方案

解决方案二:
在出错的语句上加个断点看看,肯定是“values”中的某个值有问题!

时间: 2024-10-14 15:21:24

hibernate中出现的异常,help!的相关文章

spring mvc-Spring mvc结合Hibernate中实现ajxa出现懒加载异常

问题描述 Spring mvc结合Hibernate中实现ajxa出现懒加载异常 我要实现一个选择省份加载城市列表,然后选择城市加载区列表的操作,但是我在加载城市的时候一直报懒加载异常,session提前关闭,我觉得是因为我城市中设置的private Province province 对象的原因,请问大神这有什么好的解决办法吗 解决方案 懒加载的话,你直接用fetch属性设为eager就行了,session提前关闭,,可能是你的openSessionInView,,这个过滤器没用,,而且省市区

Hibernate学习(二)Hibernate中Session之get和load方法的真正区别

最近在学习SHH框架中的Hibernate,对Session的get和load方法,有点混不清楚,不知道区别在哪,或者对它们的区别感触不深.所以百度了一下,结果问题来了.百度的结果和实际测试的结果出入很大.主要是对get方法的说法跟实际运行的结果不一致. 先说一下观点吧: get不支持lazy,load支持lazy: 数据不存在时,get返回null,load则抛出ObjectNotFoundException异常. load方法可以返回实体的代理类实例,而get方法直接读取数据库,所以直接返回

Hibernate中load和get的区别

Hibernate中Session.load/get方法均可以根据指定的实体类和id从数据库读取记录,并返回与之对应的实体对象.其区别在于: 1.get()方法直接返回实体类,load()方法可以返回实体的代理类实例. 2.hibernate load是采用延迟机制(当lazy属性为true时) 而get不采用延迟机制(get语句马上读库) 3.找不到符合条件的数据 get方法将返回null load将会报出ObjectNotFoundExcepion 4.get支持多态查询,load只有在la

Hibernate中的Cache管理

Hibernate实现了良好的Cache机制,可以借助Hibernate内部的Cache迅速提高系统的数据读取性能. Hibernate中的Cache可分为两层:一级Cache和二级Cache. 一级Cache: Session实现了第一级Hibernate Cache,它属于事务级数据缓冲.一旦事务结束,这个Cache也随之失 效.一个Session的生命周期对应一个数据库事务或一个程序事务. Session-cache保证了一个Session中两次请求同一个对象时,取得的对象是同一个JAVA

在Hibernate中正确实现关联关系中的级联操作(cascading)

关系数据库系统本身就比较复杂,加上Hibernate的O/R映射层,复杂度加重了,很容易出现问题,本人将最近遇到的问题和解决方法做一个总结,整理在下面的一系列文章中 正确理解Hibernate的聚合类型(collection)的使用 在Hibernate中正确实现关联关系中的级联操作(cascading) 在Hibernate框架中编写持久对象类实现外键关联的几点注意事项 本文是第二篇,讲解在one-to-many(一对多)和many-to-one(多对一)关联关系中的cascade特性的声明方

Struts2在开发中的一些异常总结(持续更新)

版权声明:尊重博主原创文章,转载请注明出处哦~http://blog.csdn.net/eson_15/article/details/51281079 目录(?)[+]          当被错误折磨半天后,突然找到解决办法了,那种快感--不是东京热可以给的了的--好来,不闲扯了,本文主要记录struts2在开发中会遇到的一些问题或者异常,方便后面查阅. 1. java.lang.ClassNotFoundException: org.apache.struts2.dispatcher.ng.

jbpm-关于JBPM执行过程中出现的异常

问题描述 关于JBPM执行过程中出现的异常 在使用JBPMTestCase进行测试时,测试一段时间之后就会出现一次类似的错误,之前将数据库表删除之后重新创建表,就没有该问题了,现在又出现这个情况了,请各位大神指点.错误异常代码如下. org.hibernate.exception.GenericJDBCException: could not execute native bulk manipulation query at org.hibernate.exception.SQLStateCon

Hibernate4.3在开发中的一些异常总结(持续更新)

版权声明:尊重博主原创文章,转载请注明出处哦~http://blog.csdn.net/eson_15/article/details/51273804 目录(?)[+]         当被错误折磨半天后,突然找到解决办法了,那种快感--不是东京热可以给的了的--好来,不闲扯了,这篇文章主要是记录hibernate在开发中所出现的异常,方便以后查看~ 1.java.lang.NoSuchMethodError: 1.1 javax.persistence.Table.indexes()[Lja

Hibernate中load方法与get方法的区别_java

主要区别在于是否延迟加载. load方法 不会立即访问数据库,当试图加载的记录不存在时,load方法返回一个未初始化的代理对象. get方法 总是立即访问数据库.当试图加载的记录不存在时,直接返回null 在hibernate中发现有2个方法很雷同.查阅后发现 Hibernate中有两个极为相似的方法get()与load(),他们都可以通过指定的实体类与ID从数据库中读取数据,并返回对应的实例,但Hibernate不会搞两个完全一样的方法的,它们间的不同在于: get是直接查询数据库,如果查不到