[知了堂學習筆記]_Ajax之解析Json

請關注“知了堂學習社區”,地址:http://www.zhiliaotang.com/portal.php

1.json字符串

var str1 = '{"name":"xxx","sex":"man"}';

2.json對象

var str2 = '{"name":"xxx","sex":"man"}';

3.JavaBean轉json

<button id="str02">javaBean</button>
<p id="info"></p>

$("str02").onclick = function() {
loadTextData("ajax_xml.do?method=javaBeanToJson", "GET", true, function() {
            if(xmlHttpReq.readyState == 4 && xmlHttpReq.status == 200) {
                var res = xmlHttpReq.responseText; // 獲得是一個JSON字符串

                // JSON字符串轉JSON對象
                var obj = JSON.parse(res);

                // 將數據渲染到頁面上
                $("info").innerText = "id : " + obj.id + " name : " + obj.name + " age : " + obj.age;
            }
        }, null);
    }

private void javaBeanToJson(HttpServletRequest request,
            HttpServletResponse response) throws IOException {
        // TODO Auto-generated method stub
        PrintWriter out = response.getWriter();
        AjaxBean ajaxBean = new AjaxBean(1001, "zhangsan", 23);
        Gson gson = new Gson();
        String json = gson.toJson(ajaxBean); // 將JavaBean對象轉成Json
        out.println(json);
        out.flush();
        out.close();
    }

4.list轉json

<button id="str03">List</button>

$("str03").onclick = function() {
        loadTextData("ajax_xml.do?method=listToJson", "GET", true, function() {
            if(xmlHttpReq.readyState == 4 && xmlHttpReq.status == 200) {
                var res = xmlHttpReq.responseText; // 獲得是一個JSON字符串
                // JSON字符串轉JSON對象
                var obj = JSON.parse(res);
                var info = "";
                for(i = 0; i < obj.length; i++) {
                    info += "id : " + obj[i].id + " name : " + obj[i].name + " age : " + obj[i].age + "\n\n";
                }
                $("info").innerText = info;
            }
        }, null);
    }

private void listToJson(HttpServletRequest request,
            HttpServletResponse response) throws IOException {
        // TODO Auto-generated method stub
        response.setContentType("text/plain; charset=utf-8");
        PrintWriter out = response.getWriter();
        List<AjaxBean> list = new ArrayList<>();
        for(int i = 0; i < 3; i++) {
            AjaxBean ajaxBean = new AjaxBean(i, "zhangsan", 23);
            list.add(ajaxBean);
        }
        Gson gson = new Gson();
        String json = gson.toJson(list);
        out.println(json);
        out.flush();
        out.close();
    }
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章