如何在Hibernate或JDBC中处理并发插入。
让我们说下面的场景需要在插入之前进行检查。
select count(1) from XYZ;
if(cnt>2)
throw exception;
else
insert into table
现在多个线程尝试同时插入记录,下面的代码很可能会失败。
如何妥善处理此类案件
答案 0 :(得分:0)
您需要在表XYZ
上进行表级锁定才能获得正确的计数,并且不允许其他事务修改计数。
所以在JDBC中:
不确定JPA是否可以实现表级锁定。