Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/387.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java Spring数据,保存前如何合并实体?_Java_Spring_Spring Data - Fatal编程技术网

Java Spring数据,保存前如何合并实体?

Java Spring数据,保存前如何合并实体?,java,spring,spring-data,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 de

假设我有以下课程:

@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
字段中?

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

这就是问题所在,我有客户端的值,除此之外没有其他内容,只有id和一些其他字段,因此每次我需要从数据库中查询具有该id的对象时,手动合并它,保存我的对象。我想去掉那个额外的查询。编辑bean时是否使用表单绑定功能