非常急~!求救,hibernate事务的问题~!

HYbdbc 2013-10-10 02:56:06
Session session = getHibernateTemplate().getSessionFactory().openSession();	
Transaction tx = session.beginTransaction();
int count = 0;
try{
for(int i=0;i<data.size();i++){
try{
session.save((TbRawData)data.get(i));
count++;
}catch(HibernateException e){
e.printStackTrace();
}
System.out.println("id:"+count);
if(i%1000==0){
session.flush();
session.clear();
}
}
tx.commit();
}catch(HibernateException e){
tx.rollback();
e.printStackTrace();
}finally{
session.close();
}
return count;

是这样的,由于效率问题,我想批量把数据插入数据库,但是这样的话如果一条数据有问题,那么全部都会rollback,现在是想让有错的数据不管,其他的照常插入,请问下session.save后抛出异常,怎么把这个搞掉,然后flush的时候不报错呢??
...全文
188 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
嘿-先生 2013-10-16
  • 打赏
  • 举报
回复
引用 4 楼 HYbdbc 的回复:
事务自动提交不就是跟一个一个提交一样了,效率会很慢~
那要不然呢 ? lz要把所有的操作作为一个事务来操作 , 事务是有原子性的 要么成功要么失败 只有这两种结果~!
HYbdbc 2013-10-16
  • 打赏
  • 举报
回复
事务自动提交不就是跟一个一个提交一样了,效率会很慢~
闲去野鹤 2013-10-12
  • 打赏
  • 举报
回复
引用 2 楼 sunbo624 的回复:
for在外trycatch在里 catch里continue 事务自动提交就行
+1
sunbo624 2013-10-12
  • 打赏
  • 举报
回复
for在外trycatch在里 catch里continue 事务自动提交就行
wu19891212 2013-10-11
  • 打赏
  • 举报
回复
try catch,catch语句块里加continue?

67,515

社区成员

发帖
与我相关
我的任务
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
  • Java EE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧