Я работаю с jackson-core-2.8.3, и у меня есть json, у которого есть элемент, предоставленный в нескольких случаях. Я хочу сопоставить его с моим классом, но я не могу этого сделать, потому что у меня может быть только один тип PropertyNamingStratergy в моем классе.Как десериализовать несколько случаев с помощью Jackson
Пример Json: -
{"tableKey": "1","not_allowed_pwd": 10}
Там может быть другой, как JSON
{"tableKey": "1","notAllowedPwd": 10}
ClassToMap: -
class MyClass {
public String tableKey;
public Integer notAllowedPwd;
}
ObjectMapper код: -
ObjectMapperobjectMapper=new ObjectMapper();
objectMapper.configure(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES,false);
objectMapper.configure(MapperFeature.ACCEPT_CASE_INSENSITIVE_PROPERTIES,true);
objectMapper.setSerializationInclusion(Include.NON_NULL);
objectMapper.setVisibility(PropertyAccessor.ALL,Visibility.NONE);
objectMapper.setVisibility(PropertyAccessor.FIELD,Visibility.ANY);
MyClass obj = objectMapper.readValue(s, MyClass.class);
Я нигде не нашел решения. Будет хорошо, если кто-то может помочь, как действовать дальше.
Посмотрите http://stackoverflow.com/questions/12583638/when-is-the-jsonproperty-property-used-and-what-is-it-used-for –
Эта ссылка может помочь вам http://websystique.com/java/json/jackson-json-annotations-example/ –
Проблема заключается в том, что json может варьироваться при вызове вызова, так что snakecase может быть в формате camelcase – Swaraj