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.