本文主要是介绍Jackson反序列化比较好的通用代码,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
环境
java:1.8+
jackson-databind:2.9.1
代码
/*** 使用的是JackJson,没有使用fastJson,* 因为fastJson对转义符和特殊字符,空串,null支持的不够友好* @param json* @return*/
public static XmlModel parser(String json) {ObjectMapper objectMapper = new ObjectMapper();//允许出现特殊字符和转义符objectMapper.configure(JsonParser.Feature.ALLOW_UNQUOTED_CONTROL_CHARS, true);//允许出现单引号objectMapper.configure(JsonParser.Feature.ALLOW_SINGLE_QUOTES, true);//支持结尾逗号objectMapper.configure(JsonParser.Feature.ALLOW_TRAILING_COMMA, true);//没有的属性不进行反序列化objectMapper.configure(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES, false);//支持null和空串objectMapper.configure(DeserializationFeature.ACCEPT_EMPTY_STRING_AS_NULL_OBJECT, true);//这个类就是自定义的POJO类模型XmlModel xmlModel = null;try {xmlModel = objectMapper.readValue(json, xmlModel.class);} catch (IOException e) {e.printStackTrace();}return xmlModel;
}
参考地址:
Jackjson用法并解决反序列化嵌套带引号的字符串对象
这篇关于Jackson反序列化比较好的通用代码的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!