`
123003473
  • 浏览: 1042596 次
  • 性别: Icon_minigender_1
  • 来自: 南京
社区版块
存档分类
最新评论

Json-lib 跟 Gson的对比

    博客分类:
  • java
 
阅读更多
2. Json-lib 和 Gson的对比
上一篇已经给大家介绍过json的表达方式,这一篇讲开始介绍如何在java中生成json。

1.用json-lib生成json

要用到的jar包:commons-beanutils-1.8.3.jar, commons-collections-3.2.1.jar, commons-lang-2.4.jar, commons-logging-1.1.1.jar, ezmorph-1.0.6.jar, json-lib-2.3-jdk15.jar


//1.对象
package com.hx.test;

import com.hx.entity.Person;

import net.sf.json.JSONObject;

public class JsonTest {

	public static void main(String[] args) {
		
		Person person = new Person();
		person.setName("tom");
		person.setAddress("UK");
		person.setAge(14);
		JSONObject json = JSONObject.fromObject(person);
		System.out.println(json.toString());
	}
}
//输出结果为:
//{"address":"UK","age":14,"name":"tom"}


//2.数组和集合
package com.hx.test;

import java.util.ArrayList;
import java.util.List;

import net.sf.json.JSONArray;

public class JsonTest {

	public static void main(String[] args) {
		
		List<String> fruit = new ArrayList<String>();
		
		fruit.add("apple");
		fruit.add("pear");
		fruit.add("orange");
		fruit.add("banana");
		
		JSONArray fruits = JSONArray.fromObject(fruit);
		
		System.out.println(fruits.toString());
	}
}
//输出结果:
//["apple","pear","orange","banana"]
//

2)Map集合
//Map集合比较特殊,因为 key-value键值对的对应方式,所以咱们应当用JSONObject来生成json。
package com.hx.test;

import java.util.HashMap;
import java.util.Map;

import net.sf.json.JSONObject;

public class JsonTest {

	public static void main(String[] args) {
		
		Map<String, String> map = new HashMap<String, String>();
		
		map.put("001", "apple");
		map.put("002", "pear");
		map.put("003", "orange");
		map.put("004", "banana");
		
		JSONObject json = JSONObject.fromObject(map);
		
		System.out.println(json.toString());
	}
}
//输出结果:
//{"004":"banana","001":"apple","002":"pear","003":"orange"}


//3) Map集合扩展
package com.hx.test;

import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

import net.sf.json.JSONObject;

public class JsonTest {

	public static void main(String[] args) {
		
		Map<String, List<String>> map = new HashMap<String, List<String>>();
		
		List<String> strList1 = new ArrayList<String>();
		
		strList1.add("aa");
		strList1.add("bb");
		strList1.add("cc");
		
		
		List<String> strList2 = new ArrayList<String>();
		
		strList2.add("dd");
		strList2.add("ee");
		strList2.add("ff");
		
		
		List<String> strList3 = new ArrayList<String>();
		
		strList3.add("gg");
		strList3.add("hh");
		strList3.add("ii");

		
		map.put("001", strList1);
		map.put("002", strList2);
		map.put("003", strList3);
		
		JSONObject json = JSONObject.fromObject(map);
		
		System.out.println(json.toString());
	}
}
//输出结果:
//{"001":["aa","bb","cc"],"002":["dd","ee","ff"],"003":["gg","hh","ii"]}

/*
  和json-lib相比,Gson操作就相当的更简单了
  不管是对象还是数组,还是上面较复杂的map集合,
  操作都是一样的,Gson是出自google,应为比较小巧,所以其自己系统android上面用的也      是这个。
*/

//因为操作都一样,所以在这里只给大家演示一种情况。
//别忘了导jar包:gson-2.1.jar
package com.hx.test;

import com.google.gson.Gson;
import com.hx.entity.Person;

public class GsonTest {

	public static void main(String[] args) {
		
		Person person = new Person();
		
		person.setAddress("UK");
		person.setAge(14);
		person.setName("tom");
		
		Gson gson = new Gson();
		
		System.out.println(gson.toJson(person));
	}
}
//输出结果:
//{"name":"tom","age":14,"address":"UK"}


分享到:
评论

相关推荐

    json-lib-2.2.2-jdk15及其所依赖的jar包

    jar包如下:commons-beanutils-1.7,commons-collections,commons-lang,commons-logging-1.1.1,ezmorph, gson-2.2.1,gson-2.2.1-sources,json-lib-2.2.2-jdk15

    Java四大json库gson+fastjson+jackson+json-lib

    Java常用四大json库,包含目前最新版gson,fastjson,jackson,json-lib

    json.jar,gson.jar,json-lib及其依赖包

    json.jar,gson.jar,Junit.jar,json-lib及其依赖包下载,亲测可用

    gson,fastJson,json-lib实例

    本项目是gson,fastJson,json-lib实例,包含完整代码和jar包,亲测可用,已经用于公司项目开发中。

    gson-2.3.1_json-lib-2.3-jdk15

    包含gson解析json,JSONArray,JSONObject解析用到的gson-2.3.1.jar,json-lib-2.3-jdk15.jar,commons-lang-2.0.jar,commons-logging-1.1.1.jar,ezmorph-1.0.2.jar,commons-collections-3.2.jar,commons-...

    使用Gson和Json-lib去解析json和组装Json数据例子

    NULL 博文链接:https://jilongliang.iteye.com/blog/1909209

    gson,fastJson,json-lib测试与实例

    本项目是完整项目,内含完整代码和jar包,亲测可用,已用于公司项目中。

    jackson-all.jar

    (3)转换效率:jackson &gt; Gson &gt; JSON-lib (4)简单易用并且性能也要相对高些。 (5)Jackson社区相对比较活跃,案例丰富,更新速度快。 附加JSON数据格式化和查看器,方便JSON数据测试和校验,有利于开发。

    Gson和Jsonlib需要的jar包

    json解析工具,两个:分别是Gson和Jsonlib,用与对json解析

    解析json的jar包

    Java解析json格式数据所需的jar包,这里给了三种方式的jar包,org.json、json-lib和gson

    json解析jar包大全

    包含gson、json-lib、commons-beanutils-1.9.3-bin、commons-collections4-4.1-bin、commons-lang3-3.7-bin、commons-logging-1.2-bin、ezmorph-1.0.6

    三种json解析方法

    json数据格式现在很流行,解析方便,传输速度快,这里举例实现了三种类库解析json:json-lib;Gson;Jackson,非常方便!

    json.rar_gson

    java有很多种处理json格式数据的框架,包括Gson,fastJson,Jackson,Json-lib,Json2014,都是源码,通过http请求获取对应的json,然后通过bean转化成对象。

    json工具类

    当然了,现在对于“将查询数据库得到的结果集resultRest转换为JsonArray”已经有很多json的库来解决了,譬如json-lib、gson、jackson、fastjson等等,本文介绍的正是json-lib这种比较纯洁的库来处理resultSet,晚点...

    json-jstl的小项目所有相关jar包

    跟json所有有关的jar commons-beanutils-1.7.0.jar commons-collections-3.2.1.jar commons-lang-2.4.jar ...gson-2.2.2.jar json-lib-2.2.3-jdk15.jar jstl.jar log4j-1.2.15.jar ojdbc14_g.jar standard.jar

    json-jar包工具类

    json需要的6个jar包commons-beanutils-1.8.3/commons-collections-3.2.1/commons-lang-2.6/commons-logging-1.1.1/ezmorph-1.0.6/json-lib-2.4-jdk15

    JsonPerformanceVS:mson,jackson,FastJson,Gson,Json-Smart,org.json,json-lib

    主流JSON引擎性能比较(GSON,FASTJSON,JACKSON,JSONSMART) 前言 测试目的: Purpose 测试当前主流Json引擎的序列化与反序列化性能,包括JSON,FASTJSON,JACKSON and SMARTJSON。 Test the performance of the ...

    json例子源码

    fastjson gson jackjson json-lib org.json的使用例子 package ivyy.taobao.com.utils; import com.google.gson.Gson; import com.google.gson.GsonBuilder; import com.google.gson.JsonElement; import ...

    json解析的几个工具包好gson,jackson,json_lib

    json解析的几个工具包好gson2.2.4,jackson,json_lib及其支持包

    jackson-databind-2.10.5.jar

    Java下常见的Json类库有Gson、JSON-lib和Jackson等,Jackson相对来说比较高效,在项目中主要使用Jackson进行JSON和Java对象转换

Global site tag (gtag.js) - Google Analytics