Я пытаюсь сопоставить некоторые объекты JSON с объектами Java с Jackson. Некоторые из полей в объекте JSON являются обязательными (что я могу отметить с помощью @NotNull
), а некоторые являются необязательными.
После сопоставления с Jackson все поля, которые не заданы в объекте JSON, будут иметь нулевое значение в Java. Есть ли аналогичная аннотация для @NotNull
, которая может сказать Джексону установить значение по умолчанию для члена класса Java, если оно равно null?
Изменить: Чтобы сделать этот вопрос более ясным, приведен пример кода.
Объект Java:
class JavaObject {
@NotNull
public String notNullMember;
@DefaultValue("Value")
public String optionalMember;
}
Объект JSON может быть:
{
"notNullMember" : "notNull"
}
или
{
"notNullMember" : "notNull",
"optionalMember" : "optional"
}
Аннотации @DefaultValue
- это просто показать, что я прошу. Это не настоящая аннотация. Если объект JSON похож в первом примере, я хочу, чтобы значение optionalMember
было "Value"
, а не null
. Есть ли аннотация, которая делает такую вещь?