Hinweis Dies ist kein Multithreading-Fall Alter Wert wird im Cache gespeichert, neuer Wert wird vom Server abgerufen und der endgültige Wert wird aktualisiert - einer, der erneut im Cache gespeichert wird.Zwei Klassenmitglieder in neue Final Klasse mappen
Ihre beiden Objekt der Klasse Name
- obj-> Alte Werte,
- obj1-> Neue Werte.
Recquried
- obj3-> Endgültige Ausgabe.
Alte Werte
class A{
String name="abc";
String email="[email protected]";
String phone="123456789";
}
Neue Werte
class A{
String name="xyz";
String email="";
}
Wollen Sie alte Werte mit neuen Werten nur aktualisieren, wenn sie einige aktualisierte Inhalte in neuen Werten ist.
Wie in obigem Fall
- Name akzeptiert wird, wie es ändert
- E-Mail wird nicht akzeptiert, da sie leer ist.
- Telefon hat keinen Wert so abgelehnt.
fertige Ausgabe ist:
class A
{
String name="xyz";
String email="[email protected]";
String phone="123456789";
}
Ist sie jede einfache Lösung, um es einfach
Jackson können vorhandene Objekte aktualisieren. Werfen Sie einen Blick auf diese Antwort, die einen ähnlichen Anwendungsfall hat (Patchen eines Objekts): http://stackoverflow.com/questions/42976804/java-mapper-patcher-for-pojo/42977044#42977044 – john16384
@ john16384 Ist dies möglich mit GSON. Derzeit verwende ich Retrofit mit GSON –
Ich bin mir nicht sicher, ob es mit GSON möglich ist, müssen Sie untersuchen :) – john16384