素材巴巴 > 程序开发 >

当Json遇到Map

程序开发 2023-09-12 09:31:37

请添加图片描述

文章目录

  • fastjson 你真的学会了吗?
  • 总结
  • 前言

    了解一下日常开发中关于 Json 解析的一些非常规用法,以及使用 fastjson 的一些总结。

    Json 解析

    常规使用

    一般情况 Json 的使用都是非常简单的。 我们会根据上游定义的 Json 数据格式,由下游定义相应的解析模型。比如像下面这个简单的 Json 字符串。

    {"name":"mike","address":"beijing"
     }
     

    一般会定义如下的数据类(以 Kotlin 为例)

    data class KotlinPeople(val name: String? = "", val address: String? = "")
     

    具体使用也是非常简单了,无论是借助 fastjson 、gson 或者是原生的 JsonObject 都可以非常方便的完成数据的序列化和反序列操作,比如以 fastjson 为例。

    val people = JSONObject.parseObject(json, KotlinPeople::class.java)
     
    val jsonStr = JSONObject.toJSONString(people)
     

    无论原始的 Json 数据格式多么的复杂,包含原始数据类型、List、数组还是他类型,只要需要解析的属性的 key 是确定的,那么就可以定义出相应的数据模型来解析。 因为在定义任何一个数据模型是时,对于其中的每一个字段(或者叫做属性、类成员),唯一需要确定的就是变量的类型和变量名的名称,比如面对下面这个略显复杂的 Json :

    {"token": "1234","key": "mute","simple": {"age": 11},"sites": [{"id": "1","name": "菜鸟教程","url": "www.runoob.com"},{"id": "2","name": "菜鸟工具","url": "c.runoob.com"},{"id": "3","name": "Google","url": "www.google.com"}]
     }
     

    我们依旧可以定义出如下的数据模型

    public class SiteWrapper {public String token;public String key;public Simple simple;public List sites;    public class Simeple {public String age;}public static class Site {public String id

    标签:

    上一篇: ant 倒计时 发送验证码倒计时 下一篇:
    素材巴巴 Copyright © 2013-2021 http://www.sucaibaba.com/. Some Rights Reserved. 备案号:备案中。