首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何从java.sql.SQLexception重试/恢复:并发修改

如何从java.sql.SQLexception重试/恢复:并发修改
EN

Stack Overflow用户
提问于 2010-02-03 05:18:03
回答 1查看 751关注 0票数 3

在GAE上使用JDO时,我使用了一个简单的数据库事务代码块,如下所示。

重试/恢复抛出的java.sql.SQLException:并发修改的好方法是什么?

私有最终提供程序pmp;...

PersistenceManager pm = pmp.get();尝试{ pm.currentTransaction().begin();

MyObject myObject= pm.getObjectById(MyObject.class,id);

pm.currentTransaction().commit();

}终于{

if (pm.currentTransaction().isActive()) { log.severe( this.getClass().getName() +“捕获数据库异常”);pm.currentTransaction().rollback();}}

EN

回答 1

Stack Overflow用户

发布于 2010-02-03 06:53:48

这个异常到底抛在哪里呢?您确定commit()和isActive()的语义吗?commit()可以自动创建一个新事务,使该事务始终处于活动状态。

我的另一种猜测是,这是一个并发访问的单例bean,它们都在同一个事务中结束,其他查询同时修改您请求的对象。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/2187785

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档