2
基本問題,我是新來使用「樂觀鎖定」機制 - 我使用休眠(在JBoss中)和容器管理事務(CMT)。 我要處理的情景時,我實體讀和實體更新之間別人在DB更新同一實體(即行)。 在這種情況下,我想拋出異常..樂觀鎖(休眠)
我有我的註釋與@Version實體 - 就像
@Version
private Long version;
現在,我很困惑,如果這是不夠的版本管理或我需要顯式調用 的EntityManager.lock()API等預先
{
.
.
final QueryDTO queryDTO = entityManager.find(QueryDTO.class, id);
entityManager.lock(queryDTO, LockModeType.READ);
queryDTO.setStatus(updatedStatus);
entityManager.persist(queryDTO);
}
感謝,