当前位置: 首页 > 知识库问答 >
问题:

嵌套对象未被Spring JpaRepostory保存

周滨海
2023-03-14

我有GWT的Spring入学申请。在服务器端,我为所有实体提供了简单的JpaRepository接口,例如:

@Repository
public interface MyEntityRepository extends JpaSpecificationExecutor<MyEntity>, JpaRepository<MyEntity, Long> {
}

有一个MyEntity类与My其他Entity类有一对一的关系。当我调用我的实体服务持久化方法时

public void saveMyEntity (MyEntity myEntity) {
    myEntityRepository.save(myEntity);
}

将只保存myEntity对象。MyEntity的所有子对象都被忽略。保存myEntity对象和myOtherEntity对象的唯一方法是调用

    myOtherEntityRepository.save(myOtherEntity);

在上面的代码之前。那么有没有更优雅的方法来使用JpaRepostory接口自动保存子对象呢?

共有1个答案

徐嘉谊
2023-03-14

我不知道你的实施细节。但是,我认为,它只需要使用< code>JPA中的< code>CascadeType。JPA参考级联型。

尝试如下。

public class MyEntity {
    @OneToOne(cascade=CascadeType.PERSIST) <or> @OneToOne(cascade=CascadeType.ALL) <-- for all operation
    @JoinColumn(name = "YOUR-ID")
    private MyOtherEntity myOtherEntity ;
}

用于递归我的实体关系

public class MyEntity {
    @OneToOne(cascade=CascadeType.PERSIST) <or> @OneToOne(cascade=CascadeType.ALL) <-- for all operation
    @JoinColumn(name = "YOUR-ID")
    private MyEntity myEntity ;
}
 类似资料:
  • 我是MongoDB的新手,我正在用Mongoose创建一个简单的数据库,模型如下:用户、游戏和玩家。 因此,一个用户不包含或包含多个游戏。每个游戏都有一个玩家,每个玩家都指一个用户。如下所示(为了清晰起见,我简化了模式): 因此,现在在前端,我想向后端发送一份请愿书,为用户Joe(_id:11111)和Bob(_id:22222)创建一个新游戏,因此我向/api/games发送了一篇帖子,帖子的主

  • 我将spring boot与thymeleaf结合使用,在页面中尝试显示表单及其嵌套对象。 我的对象工厂有 id 当我显示时 我的工厂有很多机器,但没有一台展出 任何想法?

  • 问题内容: 这是我在elasticsearch中存储在索引上的数据类型。我必须找到包含主要成分牛肉(且重量小于1000)和成分-(辣椒粉且重量小于250),(橄榄油和重量小于300)以及所有其他成分类似的食谱。 索引的映射是 我的查询是 但这给了Null。有人可以帮我吗?我认为我没有正确使用嵌套查询 问题答案: 试试这个:

  • 让我们考虑一下这些帖子的集合。每个帖子都有一个评论数组,每个评论都有一个字符串数组,带有键“likes”,表示喜欢该评论的用户。 如何使用mongoose检查用户是否喜欢具有给定ID的评论?

  • 问题内容: 我有这样的角度嵌套对象。有没有办法为嵌套属性过滤它 我只显示父元素,但想按两个元素进行过滤,例如: 问题答案: 是的,如果我正确理解您的示例,则可以。 根据集合的大小,计算迭代所用的集合可能会更好,这样过滤器就不会随着模型的更改而不断地进行操作。 http://jsfiddle.net/suCWn/ 基本上,如果我理解正确,您会执行以下操作: