postgresql Spring JPA如何持久化嵌套对象

cqoc49vn  于 2023-05-22  发布在  PostgreSQL
关注(0)|答案(1)|浏览(157)

上下文:

假设我有三个实体。实体A(Portfolio)包含实体B(Categories)的列表,实体B包含实体C(CategoryItems)的列表
假设我已经有了一个包含一些类别和类别项的Portfolio。

问题

如果我有一个Categories和嵌套CategoryItems的列表。其中一些具有ID,因为它们已经被持久化,并且一些是新对象并且具有空ID。也许某些类别项已经更新,现在嵌套在不同的类别下。
有没有什么简单的方法可以用Hibernate来持久化它?
或者我们需要手动处理合并,通过遍历新更新的Categories和Items并处理更新/创建新的条目。

kwvwclae

kwvwclae1#

参考此JPA - Persisting a One to Many relationship还可以通过JPA管理ID。您可以参考此规范:https://docs.oracle.com/cd/E16439_01/doc.1013/e13981/cmp30cfg001.htm在更新层次结构的同时,你最好从DAO层获取实体,然后根据来自前端的内容更新它,然后持久化列表。从数据库中将现有的父项和子项拉到一起。像对待一个pojo和保存。请不要操纵ID。

相关问题