ssh批量添加问题,听祖先说,标题要长,大哥大姐才会进来

quickTang 2010-12-23 02:10:55
spring config(其中关键2条):
<tx:method name="*" rollback-for="Exception" propagation="REQUIRED" />

<aop:pointcut expression="execution(* com..*.service..*.*(..))" id="methods"/>
然后我再service层写实现代码:
for (int i = 0; i < entity.size(); i++) {
if(i==10){
throw new Exception();
}
b = super.save(entity.get(i));
}
在执行第10行的时候手动抛出异常,但是前10条还是进数据库了。
我要怎么做,当有异常的时候让前10条不进数据库呢。
...全文
139 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
quickTang 2010-12-25
  • 打赏
  • 举报
回复
public <T> boolean saveBatch(final List<T> entity) {
Session session = this.getSession();
Transaction tx = null;
try {
tx = session.beginTransaction();
for (int i = 0; i < entity.size(); i++) {
session.save(entity.get(i));
if (i % 50 == 0) {
session.flush();
session.clear();
}
}
// tx.commit();spring框架会自动提交事务
} catch (Exception ex) {
ex.printStackTrace();
tx.rollback();
}
return true;
}
Jlins 2010-12-23
  • 打赏
  • 举报
回复
使用事务 捕获异常后主动跑 运行时异常 事务就会回滚了[Quote=引用 1 楼 inhibitory 的回复:]

使用事务,所有元子操作都成功才接交,有异常就不进行提交。
[/Quote]
Inhibitory 2010-12-23
  • 打赏
  • 举报
回复
使用事务,所有元子操作都成功才接交,有异常就不进行提交。

67,513

社区成员

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

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