《第一行代码》学习笔记42-网络(3)

1.网络上传输数据最常用的格式:XML和JSON。

2.解析XML格式的数据有多种方式,常用的有Pull解析和SAX解析。

3.比起XML,JSON的主要优势为体积更小,在网络上传输的时候更省流量;缺点为语义性较差,看起来不如XML直观。

4.解析JSON数据也有很多方法,可使用官方提供的JSONObject,也可以使用谷歌的开源库GSON。

5.GSON库:主要是可以将一段JSON格式的字符串自动映射成一个对象,从而不需要再手动编写代码解析。
eg.一段JSON格式的数据如下:

{"name": "Tom", "age":20}

定义一个Person类,加入name和age两个字段,然后调用如下代码将JSON数据自动解析成一个Person对象:

Gson  gson  =  new Gson();
Person person = gson . fromJson(jsonData, Person.class);

若解析的是一段JSON数组,需借助TypeToken将期望解析成的数据类型传入到fromJason()方法中,如下:

List<Person> people = gson  . fromJson(jsonData, new TypeToken<List<Person>>(){}.getType());

6.通常情况下应该将这些通用的网络操作提取到一个公共的类里,并提供一个静态方法,当想要发起网络请求的时候
只需要调用这个方法。

原文地址:https://www.cnblogs.com/Iamasoldier6/p/5052153.html