2011-01-31 210 views
0

我上的客戶端 - 服務器應用程序的工作,就像是一個分離OBJET:休眠:從合併會話

1-客戶端調用服務器從DB

2-得到一個對象服務器打開一個hibernate會話並獲取()一個實體。然後關閉會話。

3-爲了減少通過網絡傳輸的數據,只有一部分數據被複制到數據傳輸對象中。

4-客戶端更新數據,並將數據傳輸對象發送回服務器。

5-服務器將DTO轉換爲新的實體。

6-所以問題是:

如何堅持/從從數據庫中數據的客戶合併數據,而不overiding存儲在數據庫中的非空值?

我需要使用update()嗎? merge()?我是否需要使用「dynamic-update = true」屬性?

在此先感謝

回答

4

我認爲唯一安全的策略是重新保存之前加載在步驟5當前實體表格數據庫,然後DTO複製到它。