【发布时间】:2016-10-25 06:55:12
【问题描述】:
我正在使用 jackson-core-2.8.3,并且我有一个 json,它在多种情况下都提供了元素。我想将它映射到我的班级,但我不能这样做,因为我的班级中只能有一种 PropertyNamingStratergy。
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);
我在任何地方都找不到任何解决方案。如果有人可以帮助如何继续,那就太好了。
【问题讨论】:
-
问题是json可以改变调用,所以snakecase可以是camelcase格式
标签: java json jackson objectmapper