IDEA(JAVA)使用json


首先介紹一下json

SON是一種取代XML的數據結構,和xml相比,它更小巧但描述能力卻不差,由於它的小巧所以網絡傳輸數據將減少更多流量從而加快速度。

JSON就是一串字符串 只不過元素會使用特定的符號標注。

{} 雙括號表示對象

[] 中括號表示數組

"" 雙引號內是屬性或值

: 冒號表示后者是前者的值(這個值可以是字符串、數字、也可以是另一個數組或對象)

所以 {"name": "Michael"} 可以理解為是一個包含name為Michael的對象

而[{"name": "Michael"},{"name": "Jerry"}]就表示包含兩個對象的數組

當然了,你也可以使用{"name":["Michael","Jerry"]}來簡化上面一部,這是一個擁有一個name數組的對象

 

第一步:導入相關的jar包

我已經將所有需要的包打包好了,大家可以用打開這個鏈接下載,密碼:k2gy

 

第二步:簡單的示例(生成json)

由於我是要直接開發服務器的程序,所以這里做了一個簡單的serverlet來示范一下,這里給出了三種生成json的方式,下面是代碼 

 

package com.tanlei.json;

import net.sf.json.JSONArray;
import net.sf.json.JSONObject;

import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.io.PrintWriter;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

@WebServlet("/json")
public class JsonServerlst extends HttpServlet {
    @Override
    protected void service(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        resp.setContentType("text/html;charset=UTF-8");
        PrintWriter out =resp.getWriter();

        //1.普通生成json數據
        JSONObject job=new JSONObject();
        job.put("key","value");
        out.println(job);
        out.println("</br>");

        //2.通過list生成json數據
        List list=new ArrayList();
        list.add("first");
        list.add("second");
        list.add("third");
        JSONArray jsonArray=JSONArray.fromObject(list);
        out.println(jsonArray);
        out.println("</br>");

        //3.通過map生成json數據
        Map map=new HashMap();
        map.put("key1","value1");
        map.put("key2","value2");
        map.put("key3","value3");
        JSONObject jsonObject3=JSONObject.fromObject(map);
        out.println(jsonObject3);
        out.println("</br>");

        //4.Bean轉換成json代碼
        //JSONObject jsonObject =JSONObject.fromObject(new JsonBean());

        //5.數組轉換成json代碼
        boolean[] boolArray = new boolean[] { true, false, true };
        JSONArray jsonArray1 =JSONArray.fromObject(boolArray);
        out.println(jsonArray);
        out.println("</br>");

        //6.一般數據轉換成json代碼
        JSONArray jsonArray3 =JSONArray.fromObject("['json','is','easy']" );
        out.println(jsonArray3);
        out.println("</br>");
    }
}

 

 

第三步:(解析json)

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM