Java 解析json

一、   JSON (JavaScript Object Notation)一种简单的数据格式,比xml更轻巧。
 Json建构于两种结构:
     1、“名称/值”对的集合(A collection of name/value pairs)。不同的语言中,它被理解为对象(object),纪录(record),结构(struct),字典(dictionary),哈希表(hash table),有键列表(keyed list),或者关联数组 (associative array)。 如:     
        {
            “name”:”jackson”,
            “age”:100
         }


    2、值的有序列表(An ordered list of values)。在大部分语言中,它被理解为数组(array)如:
     {
        “students”:
        [
            {“name”:”jackson”,“age”:100},
            {“name”:”michael”,”age”:51}
        ]
     }
二、java解析JSON步骤
    A、服务器端将数据转换成json字符串
      首先、服务器端项目要导入json的jar包和json所依赖的jar包至builtPath路径下(这些可以到JSON-lib官网下载:http://json-lib.sourceforge.net/
 
 Java 解析json
    然后将数据转为json字符串,核心函数是:
 public static String createJsonString(String key, Object value)
    {
        JSONObject jsonObject = new JSONObject();
        jsonObject.put(key, value);
        return jsonObject.toString();

    }
B、客户端将json字符串转换为相应的javaBean
   1、客户端获取json字符串因为android项目中已经集成了json的jar包所以这里无需导入
public class HttpUtil
{
   
    public static String getJsonContent(String urlStr)
    {
        try
        {// 获取HttpURLConnection连接对象
            URL url = new URL(urlStr);
            HttpURLConnection httpConn = (HttpURLConnection) url
                    .openConnection();
            // 设置连接属性
            httpConn.setConnectTimeout(3000);
            httpConn.setDoInput(true);
            httpConn.setRequestMethod("GET");
            // 获取相应码
            int respCode = httpConn.getResponseCode();
            if (respCode == 200)
            {