Как я могу десериализовать как случай верблюда, так и случай змеи в Джексоне?JAVA

Программисты JAVA общаются здесь
Anonymous
Как я могу десериализовать как случай верблюда, так и случай змеи в Джексоне?

Сообщение Anonymous »

Я хотел бы десериализовать строки json, включающие регистр верблюда или регистр змеи, как показано ниже.

Код: Выделить всё

{"testField":"test"}
или

Код: Выделить всё

{"test_field":"test"}
И я хотел бы десериализовать эти строки json только с помощью одного объекта ObjectMapper, как показано ниже.

Код: Выделить всё

public class Test {
public static void main(final String[] args) throws JsonProcessingException {
final ObjectMapper objectMapper = new ObjectMapper();
objectMapper.disable(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES);

System.out.println(objectMapper.readValue("{\"testField\":\"test\"}", Parent.class));
System.out
.println(objectMapper.readValue("{\"test_field\":\"test\"}", Parent.class));
}

@Data
@AllArgsConstructor
@NoArgsConstructor
static class Parent {
String testField;
}
}
Но я мог бы десериализовать либо в случай верблюда, либо в случай змеи.
Кроме того, во время сериализации мне нужен только случай змеи.
Я попробовал собственную стратегию PropertyNamingStrategy.
Но она не сработала.

Подробнее здесь: https://stackoverflow.com/questions/789 ... in-jackson

Вернуться в «JAVA»