我遇到了一個問題,以更新現有數據,無論用戶做了什麼更改。比較兩個對象中的字段並將其中的一個更新到另一箇中
例如,我有一個公司對象,如下
public class Company {
private String id;
private String name;
private String url;
//Getter and setter.....
}
現在我有一個數據一個公司的實例如下
Company company = new Company();
company.setId("id12345678");
company.setName("company Old Name");
company.setUrl("company Old Url");
現在用戶創建另一個公司實例只是爲了更新name
和url
已有Company
Company newCompany = new Company();
newCompany.setId("id12345678");
newCompany.setName("company New Name");
newCompany.setUrl("company New Url");
可以看到,Company
的新實例與舊版本具有相同的Id
,但具有不同的name
和url
。
是否有任何實用工具/庫可以簡單地找到這兩個對象之間的所有區別並將更改應用到company
實例? (真的不希望編寫代碼來手動比較每個字段)
喜歡的東西
company = AwesomeLibraryUtils.compareAndApplyDifferences(company, newCompany);
在此之後,company
實例保持相同ID但隨着name
和newCompany
url
所有的新值實例。
謝謝。
不知道,但看看這是否符合您的要求https://github.com/SQiShER/java-object-diff – virendrao
我會留在這裏:[*「問題要求我們推薦或找到一本書,工具,軟件庫,教程或其他非現場資源對於堆棧溢出而言是偏離主題的,因爲它們傾向於吸引自以爲是的答案和垃圾郵件。「*](http://stackoverflow.com/help/on-topic)。 – Tom
感謝virendrao,我看看這個。 – jasonfungsing