憨厚生

          ----Java's Slave----
          ***Java's Host***

            BlogJava :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理 ::
            165 隨筆 :: 17 文章 :: 90 評論 :: 0 Trackbacks

          son入門(2) json在服務器端的應用
            
             在上文中說了json應用的一個簡單過程。在本文中詳細說一個json在服務器端的應用。
             json在服務器端應用大致分為2類:
             1,接受并解析客戶端發送給服務器的json數據
             2,服務器向客戶端發送json數據
            
             下面分別說一下這2方面的應用:
             1,接受并解析客戶端發送給服務器的json數據
             如果客戶端發送給服務器的數據是 {name:'hello',obj:['age','13']}   
            
             服務器端程序如下:
             package com.test;
             import org.json.JSONArray;
             import org.json.JSONException;
             import org.json.JSONObject;
             /*+++++++++++++++++++++++++++++++++++++++++++++++++
              +@author lzh
              +Description:
              +Copyright:Copyright 2008 HULIZHONG
              +Author:lzh(hulizhong2008@163.com)
              +History:
             ++++++++++++++++++++++++++++++++++++++++++++++++++*/
             public class JSONHandler {
           public void parseJSON(String jsonStr) throws Exception{
               //參數jsonStr的值為{name:'hello',obj:['age','13']} 
            String name=null,age=null;
            JSONObject jSONObject=new JSONObject(jsonStr);
             
            name=(String)jSONObject.get("name");
            //name的值應是hello
            age=((JSONObject)jSONObject.get("obj")).get("age");
            //age的值應是13  
           }
            }
           
            上面的程序就完成了服務器端對客戶端發送json數據的解析工作,再獲取name,age值后,即可進行其它業務邏輯處理!
           
            2,服務器向客戶端發送json數據
               package com;

               import javax.servlet.http.HttpServletResponse;
               import org.json.JSONObject;
               /*+++++++++++++++++++++++++++++++++++++++++++++++++
                +@author lzh
                +Description:
                +Copyright:Copyright 2008 HULIZHONG
                +Author:lzh(hulizhong2008@163.com)
                +History:
               ++++++++++++++++++++++++++++++++++++++++++++++++++*/
              public class JSONResponse {
                public void jsonResponse(HttpServletResponse response) throws Exception {
            //向客戶端發送數據:{name:'hello',obj:['age','13']}
            JSONObject obj1 = new JSONObject();
            JSONObject obj2 = new JSONObject();
            obj2.put("age", "13");
            obj1.put("name", "hello");
            obj1.put("obj", obj2);

            response.setHeader("Cache-Control", "no-cache");
            response.setContentType("text/plain");
            response.setCharacterEncoding("UTF-8");
                  //obj1.toString()即為{name:'hello',obj:['age','13']}
            response.getWriter().print(obj1.toString());
           }
             }
             上述代碼即為完成了服務端向客戶端發送json數據的解析工作,客戶端在接受{name:'hello',obj:['age','13']}數據后
             根據具體業務要求進行數據處理
            
             參考:
             www.JSON.org:訪問 JSON Web 站點來進一步了解這種數據格式,包括到幾種 JSON API 實現的鏈接
            下載附件:
             /Files/hulizhong/json.pdf

          posted on 2008-09-11 08:24 二胡 閱讀(631) 評論(4)  編輯  收藏 所屬分類: ajax

          評論

          # re: json入門(2) json在服務器端的應用 2008-09-11 15:16 onejavaer
          您好 您方便的話可以把上面使用的JSON lib發給我一份好嗎 我去www.json.org上下載 頁面轉到了sf.net上 只找到for jdk15的json lib 里面的包結構也和您上面的不同 net.sf.**** 所以我在使用過程中有點問題 請您方便時發給我一份學習一下 謝謝
          onejavaer@126.com  回復  更多評論
            

          # re: json入門(2) json在服務器端的應用 2008-09-12 10:46 二胡
          @onejavaer
          已發到你郵箱!收一下!  回復  更多評論
            

          # re: json入門(2) json在服務器端的應用 2008-10-10 11:32 gsm
          很好 不錯啊
            回復  更多評論
            

          # re: json入門(2) json在服務器端的應用 2008-12-28 10:50 壞習慣
          您好!能不能也發一份給我,找了很久都沒找到哪里下載!

          421160896@qq.com

          謝謝!  回復  更多評論
            

          主站蜘蛛池模板: 高唐县| 南开区| 永泰县| 宁津县| 新昌县| 两当县| 银川市| 修水县| 南充市| 高平市| 治县。| 时尚| 德阳市| 陇川县| 北流市| 邵东县| 诏安县| 铁力市| 通辽市| 阿坝| 永靖县| 宜阳县| 土默特左旗| 湖南省| 拜泉县| 平利县| 潍坊市| 西畴县| 密山市| 保康县| 宁晋县| 武宣县| 奇台县| 安泽县| 枣庄市| 乐陵市| 聊城市| 淮阳县| 三亚市| 罗田县| 钟祥市|