Json数据交互格式介绍和比较

1、什么是数据交互格式?

  就是客户端和服务端进行信息传输的格式(xml和json),双方约定用什么格式进行传输,然后解析得到自己想要的值

  xml扩展标记语言,属于重量级(第一占宽带、第二解析难)

  json属于轻量级的数据交互格式(不占宽带,解析很简单)

2、xml和json优缺点

  xml优点:格式统一,符合标准;容易与其它系统进行远程交互,数据共享比较方便

  xml缺点:xml文件庞大,文件格式复杂,传输占宽带;

        服务器和客户短需要话费大量代码来解析xml,导致服务器和客户端代码变得异常复杂且不易维护;

        客户端不同浏览器之间解析xml的方式不一致,需要重复编写很多代码;

        服务器和客户端解析xml花费很多的资源和时间

  json优点:数据格式比较简单,易于读写,格式都是压缩的,占用宽带小;

       易于解析;

       支持多种语言,便于服务器的解析;

       fastjson和jackson可以将json数据和对象互转

       json格式能直接为服务器代码使用,大大简化了服务器和客户端的代码开发量,并且易于维护

  json缺点:json格式目前在Web Service中推广还属于初级阶段

3、创建json格式数据

package com.cppdy;

import java.util.ArrayList;
import java.util.List; import com.alibaba.fastjson.JSONObject; public class JsonTest { public static void main(String[] args) {
JSONObject contry=new JSONObject();
JSONObject province1=new JSONObject();
JSONObject province2=new JSONObject();
List<String> cityList1=new ArrayList<String>();
List<String> cityList2=new ArrayList<String>();
List<JSONObject> provinceList=new ArrayList<JSONObject>(); cityList1.add("广州");
cityList1.add("佛山");
cityList1.add("深圳"); province1.put("name", "广东");
province1.put("citys", cityList1); cityList2.add("南京");
cityList2.add("苏州");
cityList2.add("无锡");
province2.put("name", "江苏");
province2.put("citys", cityList2);
provinceList.add(province1);
provinceList.add(province2); contry.put("name", "中国");
contry.put("provinces", provinceList); System.out.println(contry.toJSONString()); } }
上一篇:SI与EMI(一) - 反射是怎样影响EMI


下一篇:SSIS - 9.文件系统任务