zoukankan      html  css  js  c++  java
  • json使用示例

    (1)Gson
    Map map = new HashMap();
    map.put("id", "1");
    List list = new ArrayList();
    list.add("许海涛");
    list.add("陈凌霄");
    map.put("name", list);
    String json = new Gson().toJson(map);
    System.out.println(json);
    --> {"id":"1","name":["许海涛","陈凌霄"]}
    
    (2)
    JSONObject rootObj = new JSONObject();
    JSONArray array = new JSONArray();
    JSONObject temp = new JSONObject();
    try {
        temp.put("id", "1");
        temp.put("title", "title");
        array.put(temp);
        rootObj.put("allplus", array);
    } catch (JSONException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    }
    System.out.println(rootObj);
    --> {"allplus":[{"id":"1","title":"title"}]}
    
    如果是json对象中放json数组还是用第2种方法好
    String s = "{'allplus':[{'id':'1','title':'title'}]}";
    JSONObject rootObj = new JSONObject(s);
    JSONArray array = rootObj.getJSONArray("allplus");
    for (int i = 0; i < array.length(); i++) {
        JSONObject temp = array.getJSONObject(i);
        System.out.println(temp.get("id") + "-->" + temp.get("title"));
    }
    (1)public void doGet(HttpServletRequest request, HttpServletResponse response)
            throws ServletException, IOException {
        PrintWriter out = response.getWriter();
        String userid = request.getParameter("userid");
        
        int i = userDaoImpl.getCount(userid);
        if (i == 1) {
            String json = "{'flag' : 'true'}";
            out.print(json);
        } else {
            out.print("false");
        }
    }
    
    注意:String json = "{'flag' : 'true'}";
          out.print(json);
    可以先写好map,然后用Gson转换为json格式,如下:
    Map map = new HashMap();
    map.put("flag", "true");
    String json = new Gson().toJson(map);
    out.print(json);
    
    (2)$("#uname").blur(function(){
         var id = $("#uname").val();
         $.ajax({
           type: "POST",
           url: "CheckServlet",
           data: "userid=" + id,
           success: function(data){
              alert(data); 
              var obj = eval("("+data+")");
              alert(obj.flag);
              if (obj.flag == "true") {
                  
                  document.getElementById("msg").innerHTML = "用户ID重复,无法使用!" ;
                  //alert("Data: " + data + "
    Status: " + status);
              }    else {
                  document.getElementById("msg").innerHTML = "此用户ID可以注册!" ;
                  //alert("Data: " + data + "
    Status: " + status);
              }
           }
         })
    })
    注意点:接收后台传递的json参数时,var obj = eval("("+data+")"); 必须要eval加括号。只写eval(data)还不行。
  • 相关阅读:
    环境装好,开始学习
    懒惰了
    我的net试验田
    时间不够用
    【转帖】关于委托的精彩解说(非常形象)
    【转帖】 CLR 全面透彻解析:托管和本机代码互操作性
    【转贴】C#中的API32
    【转帖】Windows Mobile 开发系列文章收藏 Windows Mobile 6.x
    弹跳圣经——扣篮梦
    【转帖】.Net中C#的DllImport的用法
  • 原文地址:https://www.cnblogs.com/mabiao008/p/6168591.html
Copyright © 2011-2022 走看看