【发布时间】:2012-09-04 06:28:14
【问题描述】:
我正在使用带有 JBOSS7 和 JPA2 + Hibernate 的 Java EE 6。对于我的客户,我提供了一个 REST api。
我关心的是如何有效地确保没有资源同时被修改。应该经常发生,但如果发生,我想确保妥善处理。
到目前为止我的方法:
Map<String, ReentrantLock>存储锁。 (我的身份证总是UUIDs) 如果地图中缺少锁,则会按需创建。在这 方法我喜欢并发访问将被阻止,我可以 控制另一个线程尝试锁定资源的时间。使用 JPA2 乐观锁定。
你会推荐哪一个?还是有更好的方法?
【问题讨论】:
-
在获得大量知识后,我建议不要发明轮子并使用 JPA 锁定系统满足您的需求。
标签: java hibernate jakarta-ee concurrency jpa-2.0