5
我正在构建的服务从外部系统接收数据,该数据随供应商的“外部ID”一起提供。当我保存在我们的数据库中这个数据,我给你一个自动生成的ID给它太:是否有基于非Id字段进行合并的JPA功能?
@Entity
public class Content {
@Id
@GeneratedValue
private Long id;
private Long externalId;
// many other fields
}
当外部系统重新发送相同内容的数据(使用相同的外部ID),它被反序列化为一个分离的内容POJO:
Content c = deserialize(json);
有什么样EntityManager.merge
可以加载并使用externalId
领域,而不是id
字段更新从数据库中相应的行?
我不觉得有什么。你将不得不通过createQuery来查找你的实体;这可能会在externalId上创建索引。不过有趣的问题IMO – Eugene