Sobes.tech
Junior — Middle

Jak se dá zabránit zpracování nových polí při převodu JSON na stávající Java objekt?

sobes.tech AI

Odpověď od AI

Чтобы при десериализации JSON в существующий Java-объект игнорировать новые (неизвестные) поля, можно использовать настройки библиотеки, которая выполняет преобразование. Например, при использовании Jackson:

  • Добавить аннотацию @JsonIgnoreProperties(ignoreUnknown = true) к классу, чтобы игнорировать поля, отсутствующие в классе.
import com.fasterxml.jackson.annotation.JsonIgnoreProperties;

@JsonIgnoreProperties(ignoreUnknown = true)
public class MyClass {
    private String knownField;
    // геттеры и сеттеры
}
  • Либо настроить ObjectMapper:
ObjectMapper mapper = new ObjectMapper();
mapper.configure(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES, false);

Таким образом, новые поля в JSON не будут вызывать ошибки и не будут обрабатываться, сохраняя существующую структуру объекта.