JSON-Objekte mit Gson in Java zusammenführen / erweitern

anchmal muss ich zwei JSON-Objekte zusammenführen (ähnlich wie bei jQueries$.extend() works). Die Gson-Bibliothek hat jedoch keine eingebaute Funktionalität und sie haben @ gesaSie werden es nicht implementieren.

Etwas tun wie:

private void merge(JsonObject firstObj, JsonObject secondObj){
    for(String keyInSecondObj : secondObj.entrySet().keySet()) {
      if(!firstObj.has(keyInSecondObj )){
        firstObj.add(secondMap.get(keyInSecondObj));
    }
}

Ist zu einfach, weil es nicht das rekursive Zusammenführen von JsonObjects behandelt, Konflikte nicht behandelt, wenn der Schlüssel in beiden Maps vorhanden ist, und keine spezielle Behandlung für nicht-primitive Werte wie Arrays hat.

Ich habe keine vorgefertigten Lösungen dafür gefunden. Ich würde es vorziehen, etwas zu verwenden, das gründlich getestet wurde, anstatt meine eigene Methode zu schreiben, aber es muss @ se Gson (nicht Jackson oder andere).

Edit: Am Ende habe ich meine eigene Implementierung geschrieben, die als @ hinzugefügt wurd Antwort auf diese Frage

Diese Frag istnich ein Duplikat, da es nicht Gson (oder Java für diese Angelegenheit) verwendet.

Antworten auf die Frage(8)

Ihre Antwort auf die Frage