Sobes.tech
Junior — Middle

Hogyan lehet elkerülni az új mezők feldolgozását JSON-ról Java-objektumra történő átalakításkor?

sobes.tech MI

Válasz az MI-től

Annak érdekében, hogy a JSON deszerializálásakor az új (ismeretlen) mezőket figyelmen kívül hagyja egy meglévő Java objektumban, használhatja a konverziót végző könyvtár beállításait. Például Jackson használata esetén:

  • Adja hozzá a @JsonIgnoreProperties(ignoreUnknown = true) annotációt a osztályhoz, hogy figyelmen kívül hagyja a hiányzó mezőket.
import com.fasterxml.jackson.annotation.JsonIgnoreProperties;

@JsonIgnoreProperties(ignoreUnknown = true)
public class MyClass {
    private String knownField;
    // getterek és setterek
}
  • Vagy konfigurálja az ObjectMapper-t:
ObjectMapper mapper = new ObjectMapper();
mapper.configure(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES, false);

Így az új mezők a JSON-ben nem okoznak hibát, és nem lesznek feldolgozva, megőrizve a meglévő objektum szerkezetét.