腾飞工作室

Java后端JSON解析全解

  • fastJson
  • jackson
  • Gson
  • NutzJson

本文只关注用法,不关注各个框架的性能对比,更多资料请参考各自官网

对象转JSON字符串

JSON字符串转对象

JSON格式化输出

  • jackson

    ObjectMapper mapper = new ObjectMapper();
    System.out.println(mapper.writerWithDefaultPrettyPrinter().writeValueAsString(user));
    
  • fastJson

  • NutzJson

JSON对泛型的处理

众多Json框架都会遇到的问题

JSON注释

标准json是不支持注释的,但是当我们有这个需求的时候怎么办?

给JSON加注释

  • nutzJson

带有注释JSON

  • 引子

    随着 JSON 应用场景的增加,为了满足需求很多不规范的 JSON 也出现了
    对于后端开发来说常用的注释有以下三种
        #          单行注释
        //         单行注释
        /* */     多行注释     
    实际的开发中经常会有队友为了便于理解,习惯性的就用这三种形式给 JSON 加上注释
    带有这些注释的 JSON 不是标准的 JSON。
    虽然不规范,但是容易理解,尤其是在接口文档中这种形式还是很受欢迎的
    于是如何解析这种带有注释 JSON 就成了一个问题
    
  • 方法一:使用正则替换

    String result =JsonStr.replaceAll("//.*[\\n|\\r\\n]", "")
                       .replaceAll("/\\*[\\s\\S]*\\*/", "")
                       .replaceAll("#.*[\\n|\\r\\n]", "")
    

如何自己写个JSON解析器

前端支持带有注释的 Json 框架


本文出自 “腾飞工作室” 博客,请务必保留此出处:http://tfgzs.net/2017/06/26/Java后端JSON解析全解/