使用jackson将json字符串转为泛型对象的方法

转为泛型集合

public static  T JSONStringToObject(String str, Class collectionClass, Class... elementClasses) throws IOException {
    ObjectMapper mapper = new ObjectMapper();
    JavaType javaType = mapper.getTypeFactory().constructParametricType(collectionClass, elementClasses);
    return mapper.readValue(str, javaType);
}

第一个class是泛型集合或者泛型类的class,后面的class数组则是具体的元素类的class。若集合为HashMap则数组依次填入key value的class。

转为泛型类

与转为集合方法相同,只是传入集合类class的地方改为传入泛型类的class。

你可能感兴趣的:(java)