关于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()
  

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值