使用json-lib解析json数据

1、首先要理解几个概念

    json对象,json数组,json字符串

    json对象可以用JsonObject表示

    json数组可以用JsonArray表示

   json字符串就是就是一个String类型的字符串

   然后在看下面的代码简单多了

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;


public class Test {
public static void main(String[] args) {
// List集合转换json数组(与数组一致)
List<String> list = new ArrayList<String>();
list.add("a");
list.add("b");
JSONArray jsonArray = JSONArray.fromObject(list);
System.err.println(jsonArray.toString());
// map集合转换json对象
Map<String, String> map = new HashMap<String, String>();
map.put("1", "1");
map.put("2", "2");
JSONObject jsonObject = JSONObject.fromObject(map);
System.out.println(jsonObject.toString());
//将map集合转换为json数组(javabean与map类型一致)
JSONArray jsonArray2 = JSONArray.fromObject(map);
System.out.println(jsonArray2.toString());
// 一般数据(json字符串)转换为json
JSONArray jsonArray3 = JSONArray.fromObject("[‘1‘,‘2‘,‘4‘]");
System.out.println(jsonArray3);

}
}

更复杂的转换都是基于上面基础的转化。

最近在项目中用到一个将json字符串转换为自定义bean的数组对象

先将字符串转换为json数组,再利用JsonArray.toString方法将

指定的json数组转换为相应的自定义的bean对象

String users = request.getParameter("users");

JSONArray jsonArray = JSONArray.fromObject(users);


User[]users2 = (User[]) JSONArray.toArray(jsonArray, User.class);/


  

 

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。