本文主要是介绍jsonlib 插件的使用,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
首先导入六个jar包,jar包的名字如下,主要jar包是json-lib-2.4-jdk15.jar其他jar包是其依赖的jar包.
关于jsonlib插件的使用:
1.导包(6个包)
2.将java对象转换成json
-->1.对于数组,List集合,要想转换成json
JSONArray.fromObject(java对象); ["value1","value2"]
-->2.对于JavaBean,Map
JSONObject.fromObject(JavaBean对象); {name1:value1,name2:value2}
对于json数据,它只有两种格式
-->1.[值1,值2,...] ------>这就是JavaScript中的数组.
-->2.{name:value,...} ------>就是JavaScript中的对象.
但是这两种格式可以嵌套.
[{},{},{}]
{name:[],name:[]}
3.如果JavaBean中有一个属性,不想生成在json中,怎样处理?
JsonConfig config = new JsonConfig();
config.setExcludes(new String[] {"type"});
JSONArray.fromObject(ps,config).tostring();
上述代码就是在生成json时,不将type属性包含.
然后创建一个jsonLibTest.java的类.
package cn.com.jsonlib;import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;import net.sf.json.JSONArray;
import net.sf.json.JSONObject;
import net.sf.json.JsonConfig;import org.junit.Test;import cn.com.domain.Product;public class JsonLibTest {// 将数组转换成json@Testpublic void fun1() {String[] st = { "aaa", "bbb", "ccc" };String json = JSONArray.fromObject(st).toString();System.out.println(json); // ["aaa","bbb","ccc"]}// 将List集合转换成json@Testpublic void fun2() {List<String> list = new ArrayList<String>();list.add("111");list.add("222");list.add("333");String json = JSONArray.fromObject(list).toString();System.out.println(json); // ["111","222","333"]}// 将一个javaBean转换成json@Testpublic void fun3() {Product p = new Product(1, "电冰箱", 1800);String json = JSONObject.fromObject(p).toString();System.out.println(json); // {"id":1,"name":"电冰箱","price":1800}}// 如果List<Product>@Testpublic void fun4() {List<Product> ps = new ArrayList<Product>();ps.add(new Product(1, "洗衣机", 1800));ps.add(new Product(2, "电视机", 3800));ps.add(new Product(3, "空调", 5800));JsonConfig config = new JsonConfig();config.setExcludes(new String[] { "type" });String json = JSONArray.fromObject(ps, config).toString();System.out.println(json);}// map集合转换成json@Testpublic void fun5() {Map<String, String> map = new HashMap<String, String>();map.put("aaa", "1111");map.put("bbb", "222");System.out.println(JSONObject.fromObject(map).toString());}// 将json转换成java@Testpublic void fun6() {Product p = new Product(1, "电冰箱", 1800);JSONObject jsonObj = JSONObject.fromObject(p);// 将jsonObj在转换成java对象Product pp= (Product) JSONObject.toBean(jsonObj,Product.class);System.out.println(pp);}
}
下面是每个方法在控制台的输出效果.
这篇关于jsonlib 插件的使用的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!