课程回顾:

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:

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

  1. java httpclient 断点续传_【幻化万千戏红尘】qianfengDay27-HttpURLConnection,OkHttpClient,,多线程下载且断点续传基础学习:...

    课程回顾: Servlet:java语言开发的运行在服务器上的 开发步骤: 1.创建Servlet类 2.重写doGet或doPost方法 3.运行在服务器 生命周期: 1.初始化 2.服务 3.销毁 ...

  2. 【幻化万千戏红尘】qianfeng-JAVA课程结束总结

    JAVA知识点: 面向对象: 面向对象是一种思想 编程的指导 封装: 面向对象2大核心: 1.类:描述信息,抽象 格式:[public/abstract/final] class 类名 { 属性 构造 ...

  3. Json、Gson、FAST-JSON解析学习

    Json JavaScript Object Notation javascript表示对象的一种方式 基于JavaScript语言的轻量级的数据交换格式;即:用来传输数据的一种格式.不管是web应用 ...

  4. 【幻化万千戏红尘】qianfengDay25-HTML基础学习:

    Tomcat:服务器 免费 主要运行B/S程序 目录说明: bin:执行文件 lib:第三方的jar包 webapps:发布的项目 网络程序结构: 1.B/S 2.C/S HTML:超文本标记语言 ( ...

  5. 【幻化万千戏红尘】qianfengDay04-java基础学习:for语句.while语句,do-while语句

    课程回顾: 程序的结构: 分支结构: 1.if-else 格式:if(boolean类型表达式){代码块}[else if(boolean型表达式){代码块}--][else{代码块}] //注意:i ...

  6. 【幻化万千戏红尘】千峰培训Day01-java基础学习:历史、数据类型

    课堂笔记: 今日内容: Java的版本发展: java是sun开发高级语言,1995 2014年3月最新版本为8.0 Java的分支: 1.JAVASE:标准版,Java入门和桌面应用程序开发 2.J ...

  7. 【幻化万千戏红尘】qianfengDay09-java基础学习:接口,抽象类,抽象方法,多态,instanceof

    课程回顾: 访问修饰符 private--->default--->protected---->public 重写:子类中 1.访问修饰符不能比父类的更严格 2.静态/非静态.返回值 ...

  8. 【幻化万千戏红尘】qianfeng-Android-Day16动画

    动画资源 一.分类: (一).概要: 3.0以前,android支持两种动画模式,补间动画(tween animation),帧动画(frame animation),在android3.0中又引入了 ...

  9. Andorid中使用Gson和Fast-json解析库解析JSON数据---第三方库学习笔记(二)

    JSON介绍: JSON:JavaScript对象表示法 JSON是存储和交换文本信息的语法. 特点: JSON是轻量级的文本数据交换格式 JSON独立于语言和平台 JSON具有自我描述性,更易理解 ...

最新文章

  1. 2016012009 马佳欣 散列函数的应用及其安全性
  2. Java多线程中join方法详解
  3. Spring-Aop-XML实现
  4. 三维重建7:Visual SLAM算法笔记
  5. VS2005 快捷键
  6. 编程环境中Runtime(运行时)的三个含义
  7. 优先队列实现迪杰特斯拉模板
  8. 浪潮服务器硬盘阵列怎么做,server - 浪潮服务器RAID阵列配置及OS安装
  9. 在禁用视图状态的情况下仍然使用ViewState对象
  10. 向量间的距离和范数到线性空间、赋范空间、內积空间
  11. Nicescroll用法
  12. 计算机软件退税,软件企业2021增值税退税
  13. 车道线检测-LSTR-论文学习笔记
  14. 【工具】idea去掉UML类图的虚线箭头(依赖关系)
  15. 漏洞系列一一看我一招征服漏洞SSRF
  16. locale 国际化配置(springboot)
  17. html css标记文本,HTML图像标记和CSS核心基础和文本相关样式
  18. 微信朋友圈附近推效果怎么样?
  19. 用python轻松实现数据分析中的RFM建模
  20. 未来宝宝照片合成,怎么做到的呢?

热门文章

  1. 论数学在计算机科学中的基础作用
  2. L1-018 大笨钟(java)
  3. (网页开发/前端)配置VsCode,让您拥有更舒适的开发环境
  4. 实验5-三种基本结构综合应用:7-1 数字金字塔 (20 分)
  5. vue3 瀑布流插件 vue-masonry 使用
  6. 安全联盟2016年度网络诈骗数据报告
  7. 几句话明白:神经网络中的基本概念batch,epoch,iterations及对训练效果的影响
  8. 不懂函数和等量能学c语言吗,幼升小中超难的等量代换,跟着这套方法一学就会...
  9. 运营 | 讨论积分的维度
  10. 没有apihost什么意思_约女生她说不确定有没有时间,这是什么意思?又该如何幽默回复?...