Json字符串与Object、List、Map的互转工具类
packagecom.cq2022.zago.base.util; importjava.io.FileReader; importjava.io.FileWriter; importjava.io.IOException; importjava.io.StringWriter; importjava.util.List; importjava.util.Map; importorg.codehaus.jackson.JsonFactory; importorg.codehaus.jackson.JsonGenerationException; importorg.codehaus.jackson.JsonGenerator; importorg.codehaus.jackson.JsonNode; importorg.codehaus.jackson.JsonParseException; importorg.codehaus.jackson.map.JsonMappingException; importorg.codehaus.jackson.map.ObjectMapper; importorg.codehaus.jackson.map.SerializationConfig; importorg.codehaus.jackson.map.annotate.JsonSerialize; importcom.alibaba.fastjson.JSONArray; /** *Json工具类,实现JSON与JavaBean的互相转换 */ publicclassJsonUtils{ privatestaticObjectMapperobjectMapper=newObjectMapper(); privatestaticJsonFactoryjsonFactory=newJsonFactory(); static{ objectMapper.configure(SerializationConfig.Feature.WRITE_NULL_MAP_VALUES,false); objectMapper.setSerializationInclusion(JsonSerialize.Inclusion.NON_NULL); } /** *泛型返回,json字符串转对象 *@paramjsonAsString *@parampojoClass *@return *@throwsJsonMappingException *@throwsJsonParseException *@throwsIOException */ publicstaticTfromJson(StringjsonAsString,Class pojoClass)throwsJsonMappingException, JsonParseException,IOException{ returnobjectMapper.readValue(jsonAsString,pojoClass); } publicstatic TfromJson(FileReaderfr,Class pojoClass)throwsJsonParseException,IOException{ returnobjectMapper.readValue(fr,pojoClass); } /** *Object对象转json *@parampojo *@return *@throwsJsonMappingException *@throwsJsonGenerationException *@throwsIOException */ publicstaticStringtoJson(Objectpojo)throwsJsonMappingException,JsonGenerationException,IOException{ returntoJson(pojo,false); } publicstaticStringtoJson(Objectpojo,booleanprettyPrint)throwsJsonMappingException,JsonGenerationException, IOException{ StringWritersw=newStringWriter(); JsonGeneratorjg=jsonFactory.createJsonGenerator(sw); if(prettyPrint){ jg.useDefaultPrettyPrinter(); } objectMapper.writeValue(jg,pojo); returnsw.toString(); } publicstaticvoidtoJson(Objectpojo,FileWriterfw,booleanprettyPrint)throwsJsonMappingException, JsonGenerationException,IOException{ JsonGeneratorjg=jsonFactory.createJsonGenerator(fw); if(prettyPrint){ jg.useDefaultPrettyPrinter(); } objectMapper.writeValue(jg,pojo); } /** *json字符串转Map *@paramjsonStr *@return *@throwsIOException */ publicstaticMap parseMap(StringjsonStr)throwsIOException{ Map map=objectMapper.readValue(jsonStr,Map.class); returnmap; } publicstaticJsonNodeparse(StringjsonStr)throwsIOException{ JsonNodenode=null; node=objectMapper.readTree(jsonStr); returnnode; } publicstaticObjectMappergetObjectMapper(){ returnobjectMapper; } /** *json字符串转List对象 *@paramstrjson字符串 *@paramclazz转换的类型 *@return */ publicstatic List fromListJson(Stringstr,Class clazz){ returnJSONArray.parseArray(str,clazz); } }
总结
以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对毛票票的支持。如果你想了解更多相关内容请查看下面相关链接