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()); ???????????}}
Json数据交互格式介绍和比较
原文地址:https://www.cnblogs.com/cppdy/p/10029128.html