我使用JPA庫在我SpringBoot應用程序相同的行我有我的數據庫定期設置某些元素「準備好」 我也有一個用戶可以調用和端點的後臺任務可以修改同一個表的一行。JPA兩種事務更新
有沒有辦法來避免一個又一個相互抵消寫?就拿這個場景
Table:
Key
id name is_ready
0)有初始數據的關鍵(1個NO_NAME假)
1)在後臺任務踢和即將通過設置
is_ready to true
Key key = repo.findKeyByIsReady(false)
key.setIsReady(true)
repo.save(key) <--- does NOT yet execute this
修改表的關鍵2)用戶調用api端點將密鑰名稱更改爲「new_name」並完成
3)現在後臺服務執行repo.save(key),最後的數據是
1 no_name true
代替
1 new_name true
基本上後臺任務已覆蓋鍵名用戶
是有辦法避免這種情況的設置?交易如何在這裏有所幫助?