Sobes.tech
Junior — Middle

Kaip išvengti naujų laukų apdorojimo konvertuojant JSON į esamą Java objektą?

sobes.tech AI

Atsakymas iš AI

Norint ignoruoti naujus (nežinomus) laukus JSON deserializacijos metu esančiame Java objekte, galite naudoti konvertavimo vykdančios bibliotekos nustatymus. Pavyzdžiui, naudojant Jackson:

  • Pridėkite anotaciją @JsonIgnoreProperties(ignoreUnknown = true) klasei, kad ignoruotumėte trūkstamus laukus.
import com.fasterxml.jackson.annotation.JsonIgnoreProperties;

@JsonIgnoreProperties(ignoreUnknown = true)
public class MyClass {
    private String knownField;
    // getteriai ir setteriai
}
  • Arba sukonfigūruokite ObjectMapper:
ObjectMapper mapper = new ObjectMapper();
mapper.configure(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES, false);

Tokiu būdu, nauji laukai JSON'e nesukels klaidų ir nebus apdorojami, išlaikant esamą objekto struktūrą.