zoukankan      html  css  js  c++  java
  • 使用jquery的getJSON从服务器端获得数据

    有时候我们需要从服务器端获取数据,来显示到页面

    这时我们可以用jquery的getJSON来获得数据

    这要求我们构造JSON格式的数据

    json格式数据为:[{{'name':'老王'},{'age':'22'}},{{'name':'老李'},{'age':'32'}}]

    前台代码:

    jquery:

    $.get("${pageContext.request.contextPath}/manage/orderManage_parseData.action?num="+Math.random()*1000+"&path="+encodeURI(filepath),null,function(data){
      $.each(data,function(k,v){ 
       $.each(v,function(kk,vv){
              str+="<td  height='20' bgcolor='red' class='STYLE6'><div align='center'><span class='STYLE19'>"+vv+"</span></div></td>";
            });
      });

    其中data是返回的json数据,因为我们构造的是多维数组类型,所以可以通过迭代来获取其中的数据

    后台服务器代码:

    /**
      * getJSON请求分析数据
      */
     public void parseData(){
      HttpServletResponse response = ServletActionContext.getResponse();
      response.setCharacterEncoding("utf-8");
      List<String[]> list=new ArrayList<String[]>();
      try {
       System.out.println(path);
       path= URLDecoder.decode(path,"utf-8");
       list = ImportExportDataUtil.parseData(path);
       String[] format ={"Empo_Name","Empo_Code","User_ID","User_Pass"};
       String jsonData = ImportExportDataUtil.getJSONData(list, format);
       EmpoCode empoCode;
       for(int i=0;i<list.size();i++){
        String[] st=list.get(i);
        for(int j=0;j<format.length;j++){
         empoCode = new EmpoCode();
        }
       }
       PrintWriter writer = response.getWriter();
       writer.write(jsonData);
      } catch (Exception e) {
       e.printStackTrace();
      }
     }

    其中list是List<String[]>格式的数据,format为所要构造的数据类型

    上面红色字体所调用的代码如下,主要是构造json类型数据

    /**
      * 返回json格式的数据,如[{name:小强,age:22},{name:小李,age:23},{name:小王,age:21}]
      * @param list 输入数据
      * @param format 转换格式,如String[] format ={"name","age"};
      * @return
      */
     public static String getJSONData(List<String[]> list,String[] format){
      StringBuffer jsonData = new StringBuffer();
      jsonData.append("[");
      for(int j=0;j<list.size();j++){
       String[] st= list.get(j);
       jsonData.append("{");
       for(int i=0;i<format.length;i++){
        if(i==format.length-1){
         jsonData.append("\""+format[i]+"\":\""+st[i]+"\"");
        }else{
         jsonData.append("\""+format[i]+"\":\""+st[i]+"\",");
        }
       }
        if(j==list.size()-1){
         jsonData.append("}");
        }else{
         jsonData.append("},");
        }
      }
      jsonData.append("]");
      return jsonData.toString();
     }

  • 相关阅读:
    42、lucene和机器学习进行全文搜索,并排序
    41、javaMail机制
    40、dom以xml结尾的文件
    39、重新复习js之三
    38、重新复习javascript之三
    36、重新复习html和css之二
    35、重新复习html与css(1)
    34、Shiro框架入门三,角色管理
    33、插入一段大学学的计算机,正儿八经的计算机图形学
    32、shiro框架入门3.授权
  • 原文地址:https://www.cnblogs.com/qixing/p/3049574.html
Copyright © 2011-2022 走看看