新创建一个实体对象,并将其在持久化到数据库中时,可选择实体的ID为自动管理的。
采用自动管理ID时,若当前的实体从未持久化过则需要:
1、id必须保持为null。
2、若当前实体被另一个主实体绑定时,必须先persist当前的实体,然后再persist或merge绑定该实体的实体对象,否则当前实体的id可能会一直为null,不会为新建的实体对象自动分配ID.
总结如下:
当更新一组相互绑定的实体时,必须是新创建的实体先persist更新,已经存在id的实体后merge再persist更新才可以,否则新创建的实体对象可能无法获得id。
转载于:https://blog.51cto.com/zhangyansong/665177