【问题标题】:Patch or Put with new Object使用新对象修补或放置
【发布时间】:2018-12-27 18:54:15
【问题描述】:

在我的应用程序中,我有以下两个对象:

@Entity
public class A {
    @Id
    @GeneratedValue(strategy = GenerationType.AUTO)
    private Long id;
    // ... //
    @OneToOne
    private B b;
}

@Entity
public class B {
    @Id
    @GeneratedValue(strategy = GenerationType.AUTO)
    private Long id;

    private String label;
    // ... //
}

首先,我用 b 为空来记录对象 A。在我需要使用数据库中尚不存在的新对象 B 更新 A 之后,我想自动更新 A 并将 B 保存在一起。 你能告诉我怎么做这个手术吗?

注意:我无法在 JSON 请求中使用 B 链接,因为对象 B 尚不存在

【问题讨论】:

    标签: java json rest spring-data-jpa


    【解决方案1】:

    您可以添加 ann 注释,告诉您在级联连接实体时保存类

    @Cascade({CascadeType.ALL})
    

    所以你的班级会变成

    @Entity
    public class A {
        @Id
        @GeneratedValue(strategy = GenerationType.AUTO)
        private Long id;
        // ... //
        @OneToOne
        @Cascade({CascadeType.ALL})
        private B b;
    }
    

    你可以研究级联类型HERE,这样你就可以选择最适合你需要的类型

    【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2016-10-10
    • 1970-01-01
    • 2018-08-31
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多