java的Jackson将json字符串转换成泛型List

Jackson,我感觉是在Java与Json之间相互转换的最快速的框架,当然Google的Gson也很不错,但是参照网上有人的性能测试,看起来还是Jackson比较快一点

为沛县等地区用户提供了全套网页设计制作服务,及沛县网站建设行业解决方案。主营业务为成都网站建设、做网站、沛县网站设计,以传统方式定制建设网站,并提供域名空间备案等一条龙服务,秉承以专业、用心的态度为用户提供真诚的服务。我们深信只要达到每一位用户的要求,就会得到认可,从而选择与我们长期合作。这样,我们也可以走得更远!

Jackson处理一般的JavaBean和Json之间的转换只要使用ObjectMapper 对象的readValue和writeValueAsString两个方法就能实现。但是如果要转换复杂类型Collection如 List,那么就需要先反序列化复杂类型 为泛型的Collection Type。

如果是ArrayList那么使用ObjectMapper 的getTypeFactory().constructParametricType(collectionClass, elementClasses);

如果是HashMap那么 ObjectMapper 的getTypeFactory().constructParametricType(HashMap.class,String.class, YourBean.class);

  public final ObjectMapper mapper = new ObjectMapper(); 
   
  public static void main(String[] args) throws Exception{ 
    JavaType javaType = getCollectionType(ArrayList.class, YourBean.class); 
    List lst = (List)mapper.readValue(jsonString, javaType); 
  }
  
    /**  
    * 获取泛型的Collection Type 
    * @param collectionClass 泛型的Collection  
    * @param elementClasses 元素类  
    * @return JavaType Java类型  
    * @since 1.0  
    */  
  public static JavaType getCollectionType(Class<?> collectionClass, Class<?>... elementClasses) {  
    return mapper.getTypeFactory().constructParametricType(collectionClass, elementClasses);  
  }

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持创新互联。


本文标题:java的Jackson将json字符串转换成泛型List
分享链接:http://bzwzjz.com/article/ijeehi.html

其他资讯

Copyright © 2007-2020 广东宝晨空调科技有限公司 All Rights Reserved 粤ICP备2022107769号
友情链接: 成都网站设计 成都网站设计 成都网站建设公司 企业网站设计 成都响应式网站建设 H5网站制作 外贸网站建设 网站设计 达州网站设计 成都网站设计 移动手机网站制作 成都网站建设 成都网站制作 营销型网站建设 成都网站制作 重庆企业网站建设 温江网站设计 网站设计 成都定制网站建设 企业网站制作 成都网站建设公司 成都网站制作