我正在使用JPA,我有一个名为User的实体,并且发现User by id从数据库中获取给定id的用户
for ( String id: ids) {
User u = getUser(id);
u.setName(smthing); // fires one update statement
u.setDate(smthing); // fires another update statement
}
getUser返回一个托管实体,因此任何集合都会导致更新语句,当dao关闭时,这些语句将被提交。但问题是用户有一个@version字段,因为有多个更新在提交时运行,它以某种方式不会更新列表中的最后一个用户。这种情况持续发生所以这不是一个间歇性的问题。
User {
@Version
Date lastUpdatedDate;
}
有人遇到类似的问题。我的理想选择是以分离模式获取这些用户对象,设置值然后进行批量更新。任何帮助表示赞赏。