• 【幻化万千戏红尘】qianfengDay29-Json解析、Gson解析、FASTJSON解析基础学习:


    课程回顾:

    XML:可扩展的标记语言
    跨平台、跨网络、跨编程语言
    描述数据
    作用:
    1、传输数据
    2、配置文件
    3、Android的布局文件

    解析XML:
    1、SAX
    2、PULL

    创建类


    今日内容:
    JSON:JavaScript Object Notation就是符合一定格式的字符串
    是轻量级,数据交互的格式
    目前互联网中使用范围最为广泛的数据交互的格式
    跨平台、跨网络、跨编程语言
    JSON的规则:
    {}---->对象,内部只能是属性组成
    []---->数组,内部只能是元素组成
    ""---->属性名称或属性的值(字符串类型)
    ,----->隔开属性或元素
    :----->连接属性和值

    格式:
    "{'id':1,'name':'张三'}"
    "{'stu':{'id':1,'name':'张三'}}"
    "{'stu1':{'id':1,'name':'张三'},'stu2':{'id':1,'name':'张三'}}"
    "[{'id':1,'name':'张三'},{'id':2,'name':'李四'}]"
    "{'list':[{'id':1,'name':'张三'},{'id':2,'name':'李四'}]}"
    "{'id':1,'schoolName':'北大','list':[{'id':1,'name':'张三'},{'id':2,'name':'李四'}]}"

    解析方式:
    1、JSON官方
    JSONObject:解析对象---{}
    常用方法:
    length:获取对象的属性个数
    keys:获取所有属性的迭代器
    getXXX:获取属性的值
    putXXX:添加对应的属性和值
    optXXX:获取指定属性的值

    JSONArray:解析数组----[]
    常用方法:
    length:获取元素个数
    optXXX:获取指定索引的元素内容

    实际创建的类,属性不做要求

    2、Gson谷歌
    Gson类
    1、解析对象:fromJson(待解析的字符串,Class<T>);
    参数说明:
    第一个参数:待解析的字符串,对象字符串
    第二个参数:对应对象的Class对象

    2、解析数组:fromJson(待解析的字符串([),new TypeToken<ArrayList<元素类型>>(){}.getType())
    参数说明:
    第一个参数:待解析的字符串,数组字符串
    第二个参数:对应集合的Type类型

    3、生成JSON格式字符串:toJson(对象)

    要求创建的类必须可以体现JSON格式字符串的内容

    3、FASTJSON阿里巴巴
    工具类JSON
    常用静态方法:
    1、parseObject
    解析对象字符串
    2、parseArray
    解析数组字符串
    3、toJson
    转换为诶JSON格式字符串

    要求创建的类必须可以体现JSON格式字符串的内容
    还必须有无参构造

    练习:
    {'data':{'type':'学生','stu1':{'id':1,'name':'张三'},'stu2':{'id':2,'name':'李四'}}}}

    @SerializName("原来的名称")
    @JSONField(name="原来的名称")

    练习:
    http://www.qubaobei.com/ios/cf/dish_list.php?stage_id=1&limit=20&page=1
    解析

    练习:
    使用Servlet创建接口
     返回JSON格式字符串
     
     再写客户端进行数据的请求和解析
     
     
     JSON和XML的区别?
     JSON:
     
     XML:


     

  • 相关阅读:
    Saltstack安装及入门
    网络-flannel及calico
    vxlan 协议
    5G系统架构
    5G及移动边缘计算(MEC)学习笔记(3)
    linux 环境变量
    Python 包管理工具
    linux 后台运行程序
    训练测试样本划分
    kmeans 聚类 k 值优化
  • 原文地址:https://www.cnblogs.com/weigongcheng/p/5786215.html
Copyright © 2020-2023  润新知