• 关于JSON的使用


    在页面端,参数可以组装成JSON的格式,然后通过Ext.encode(str),变成字符串,作为参数发送请求。

    如:param = ["a":"123","b":"[4,5,6]"]

    url:XXX?param=Ext.encode(param);

    在后台,JSON对象的处理有多个jar可选,我们选择org.json.simple包,包括几个常用的对象:

    JSONValue :提供将String解析为JSON的能力,如将上述的param参数从request中解析,并转为JSON对象。

    String param = request.getParameter("param");
    Map<String,Object> jsonMap = (Map<String,Object>) JSONValue.parse(param);

    parse方法可以把符合JSON格式的String字符串,递归解析成Object,并以Map的形式存放,因为json天然有key-value的形式,符合map的存储。

    解析后的结果是这样的map:

    key:a , value :123

    key:b , value :[456]

    然后通过jsonMap.get(key)的方法获取对象对应的值,这里的值有2种形式,一种是String,另一种是List<String>,这个取决于存入的类型,如果key对应的value是String,则为String(如123),如果是数组,则为list(如4,5,6)

        String param = request.getParameter("param");
                Map<String,Object> jsonMap = (Map<String,Object>) JSONValue.parse(param);
                String version = (String) jsonMap.get("version");           
                //获取表头
                List<String> headers = (List<String>) jsonMap.get("tableHead");

    后台返回给前台时,可以把JSON对象转化成JSON字符串,方法如下:

    JSONArray jsonArray = new JSONArray();

    jsonArray.toJSONString();

    或者:

    JSONObject jsonobj = new JSONObject();
      jsonobj.toJSONString()
      

  • 相关阅读:
    Linux操作系统的进程管理
    CentOS 7网络配置工具
    Python并发编程-线程
    Python并发编程-queue
    Python并发编程-并发解决方案概述
    图Graph
    计算机网络基础之IP地址详解
    计算机网络基础之TCP/IP 协议栈
    计算机网络基础之网络设备
    计算机网络基础之OSI参考模型
  • 原文地址:https://www.cnblogs.com/glgl2424/p/JSON.html
Copyright © 2020-2023  润新知