我有一个刚创建的实体(因为还没有保存在数据库中,所以是分离状态)。这个实体持有另一个已经存在于数据库中的实体(但也是分离状态)。因此,我会使用
如果我想要获取新创建的ID,我将在之后使用
em.merge(myNewEntity)
来存储它。如果我想要获取新创建的ID,我将在之后使用
em.flush()
。然后我调用myNewEntity.getId()
。用persist
的方式,我会收到由DB/JPA生成的ID。但是用merge
的方式却不是这样。对象中的ID仍然保持为null
。为什么会这样呢?