【发布时间】:2011-03-16 13:54:46
【问题描述】:
进入正题的伪代码:
@Entity
Person {
@Id
Integer id;
String SSN;
String name;
}
存储库或服务的用例:
personRepository.save(new Person(ssn:"123456", name:"jeff")):
- id 是唯一且自动递增的主键
- SSN 是唯一的,是一个人的标识符
- name 只是一个字符串,可以更改
目前保存使用休眠的merge() 进行插入/更新,但我在保存时没有id(我的抽象层的一部分,因此客户端代码不需要在全部),那么如果 SSN 已经存在于数据库中,我该如何更新人员姓名,而无需对该字段进行单独查找,然后在其中进行分支逻辑(我不想这样做,因为我可能是一次更新和插入很多人并认为它会很慢)
【问题讨论】:
-
我应该全部删除然后重新插入吗?
标签: java hibernate orm persistence