jackson-mapper-asl.1.9.4.jar
ObjectMapper mapper =new ObjectMapper();
对象转换为json串
public static String Object2Json(Object o) throws BusinessException { StringWriter writer = new StringWriter(); try { mapper.writeValue(writer, o); } catch (IOException var3) { var3.printStackTrace(); throw new BusinessException("Entity转换成Json时出现异常。", var3); } return writer.toString(); }
json转换为bean
entity = (Entity)mapper.readValue(json, clazz);
与List<T>转换
public static <T extends BaseEntity> List<T> json2List(String json, Class<T> clazz) throws BusinessException { ObjectMapper mapper = new ObjectMapper(); JavaType javaType = mapper.getTypeFactory().constructParametricType(ArrayList.class, new Class[]{clazz}); try { return (List)mapper.readValue(json, javaType); } catch (JsonParseException var5) { var5.printStackTrace(); throw new BusinessException("Json转换成List<T>异常。", var5); } catch (JsonMappingException var6) { var6.printStackTrace(); throw new BusinessException("Json转换成List<T>异常。", var6); } catch (IOException var7) { var7.printStackTrace(); throw new BusinessException("Json转换成List<T>异常。", var7); } }
复杂对象转换:Result<List<
ReasonDepartmentDto>>
JavaType tType = mapper.getTypeFactory().constructParametricType(ArrayList.class,ReasonDepartmentDto.class); JavaType javaType = mapper.getTypeFactory().constructParametricType(Result.class, tType); result =(Result<List<ReasonDepartmentDto>>) mapper.readValue(dataMap.get("value"), javaType);