2016-08-18 75 views
2

假設我有以下類:春季數據,如何在保存前合併實體?

@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}} 

然後,它會是,我的意思是列描述將owerwrited被保存,成爲null,我怎麼能告訴它,只更新不是null的字段,並將舊值合併到null字段?

回答

1

沒有,這是不可能的,春天就會假設你已經設置的屬性設置爲null,因爲你要刪除它們,那東陽你必須拿出自己的解決方案 例如: - 你可以閱讀以前對象並將這些細節設置爲當前對象。

+0

這就是關鍵,我有從客戶端的價值觀,沒有什麼更多,但只有ID和一些其他領域,所以每次我需要從數據庫查詢對象與該ID,手動合併它,保存我的目的。我想擺脫額外的查詢。 – saroff

+0

編輯bean時是否使用了表單綁定功能 – Priyamal