我有一个要求,我需要修改 6 个表中的一个字段,并且需要在单个事务中执行此操作。
所以我使用了spring @Transactional(使用默认设置)。
现在,在事务方法中获取和更新数据时,如果任何其他调用尝试访问表之一(事件),我的应用程序由于事件表上的可能锁定而被挂起,并且在应用程序日志中,我得到javax.persistence.PessimisticLockException .
我想要的是,在执行@Transactional方法时,应用程序应该服务于对数据库的所有读取请求,并且不应该因为锁定而挂起。
注意:我在嵌入式模式下使用 derby 数据库。MySql 一切正常。
请帮忙。
谢谢。