json使用示例

Posted 程序员之路

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了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 + "\nStatus: " + status);
          }    else {
              document.getElementById("msg").innerHTML = "此用户ID可以注册!" ;
              //alert("Data: " + data + "\nStatus: " + status);
          }
       }
     })
})
注意点:接收后台传递的json参数时,var obj = eval("("+data+")"); 必须要eval加括号。只写eval(data)还不行。

 

以上是关于json使用示例的主要内容,如果未能解决你的问题,请参考以下文章

VS Code配置snippets代码片段快速生成html模板,提高前端编写效率

需要示例代码片段帮助

如何使用 extJS 发布 json 数据

错误代码:错误域 = NSCocoaErrorDomain 代码 = 3840“JSON 文本没有以数组或对象和允许未设置片段的选项开头。”

处理屏幕旋转上的片段重复(带有示例代码)

json 个人的vscode的代码片段