Spring Data,如何在保存之前合并实体?

时间:2016-08-18 10:08:59

标签: java spring spring-data

假设我有以下课程:

@Entity
class Person {
    @Id
    private Integer id;

    @JoinColumn
    private Job job;
//getters.. . setters

@Entity
class Job {
    @Id
    private Integer id;

    @Column
    private String name;

    @Column
    private String description;
//getters... setters

如果我将创建Person对象,看起来像

{ id:0, job: {id: 1, name: "newName", description: null}}

然后它会按原样保存,我的意思是列描述会变得更加强大,变成null,我怎么能告诉它,只更新不是null的字段,并且合并旧值到null个字段?

1 个答案:

答案 0 :(得分:1)

不,这是不可能的,spring会假设您已将属性设置为null,因为您要删除它们,因为您必须提出自己的解决方案 例如: - 您可以读取上一个对象并将这些详细信息设置为当前对象。