日期:2011-1-7
内容:Json和Gson区别与联系及其使用规范
一、Json和Gson的定义
1、什么是Json?
关于Json百度百科的解释是这样的:
总而言之Json具有如下几个特点:
①、轻量级的数据交换格式;
②、理想的数据交换语言;
③、易于人阅读和编写;
④、易于机器解析和生成;
Json的语法描述:
JSON 语法是 JavaScript 对象表示语法的子集。
①、数据在键值对中
②、数据由逗号分隔
③、花括号保存对象
④、方括号保存数组
2、什么是Gson?
二、Json和Gson可以为我们做什么?
三、如何使用Json和Gson?
1、Json在java中的使用。
①、一个Json的基本结构:
②、json的官方网站:http://json.org/json-zh.html
在pom.xml中添加json的依赖。这是使用Maven部署的项目。
③、使用JSONObject生成Json数据格式:
JsonObjectSample.java:
package json;
import org.json.JSONException;
import org.json.JSONObject;
/**
* @author Administrator:
* @version 创建时间:2016-9-6 下午9:49:41
* 类说明
*/
public class JsonObjectSample {
public void jsonObject()
{
//创建一个Json对象
JSONObject liudehua = new JSONObject();
//创建一个空之
Object nullObj = null;
//设置数据
try {
liudehua.put("name", "刘德华");
liudehua.put("age", 50.5);
liudehua.put("birthday","1766-12-10");
liudehua.put("school", "北京电影学院");
liudehua.put("major", new String[]{"演员","歌手"});
liudehua.put("has_girlfriend", false);
liudehua.put("car", "null");
liudehua.put("house", "null");
liudehua.put("comment", "这是注释部分,因为JSON里面没有注释这一说");
//调用Json的toString方法打印json信息
System.out.println("转换的Json格式如下:"+liudehua.toString());
} catch (JSONException e) {
//抛出运行时异常
throw new RuntimeException("转换成Json格式失败......");
}
}
}
②、单体测试方法:JsonObjectSampleTest.java:
package json;
import org.junit.After;
import org.junit.Before;
import org.junit.Test;
/**
* @author Administrator:
* @version 创建时间:2016-9-6 下午9:50:13
* 类说明
*/
public class JsonObjectSampleTest {
//初始化
JsonObjectSample jos;
@Before
public void before()
{
//获得实例化对象
jos = new JsonObjectSample();
System.out.println("Json使用开始......");
}
@After
public void after()
{
System.out.println("Json使用结束......");
}
@Test
public void testJson()
{
//调用方法打印实例化的Json信息
jos.jsonObject();
}
}
③、打印的结果:
Json使用开始......
转换的Json格式如下:{"birthday":"1766-12-10","major":["演员","歌手"],"school":"北京电影学院","car":"null","name":"刘德华","has_girlfriend":false,"comment":"这是注释部分,因为JSON里面没有注释这一说","house":"nullObj","age":50.5}
Json使用结束......
2、Gson在java中的使用。
四、总结