博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
【json】前台ajax序列化的多个属性拼接在一起的字符串,转化为JSONObject对象
阅读量:6165 次
发布时间:2019-06-21

本文共 1839 字,大约阅读时间需要 6 分钟。

1.首先看一下前台序列化了哪些东西:

部分js代码

//查询按钮    $(".questButton").click(function(){             $.ajax({url:"/questionnaire/statistics.jhtml",                 type:"get",                 async:false,                 traditional:false,                 data:{questOptions:$("input[name='category']:checked").serialize(),condition:$(".form1 :not(input[name='category'])").serialize()},                 success:function(data){

前台发送给后台的序列化的字符串是如下的样子:

2.后台接受到就是两个字符串,并且是编码之后的,所以第一点先要按照编码解析,然后再进行处理

@RequestMapping(value= "/statistics" ,produces = "text/html;charset=UTF-8")    @ResponseBody     public String statistics(HttpServletRequest request,String condition,String  questOptions) throws UnsupportedEncodingException{        questOptions = questOptions.replaceAll("category=", "");        String [] questArr = questOptions.split("&");                condition = URLDecoder.decode(condition, "utf-8");        condition = "{"+condition.replaceAll("&", "\",").replaceAll("=", ":\"")+"\"}";        JSONObject jsonObject = JSONObject.fromObject(condition);        System.out.println("JSONObject格式:"+jsonObject);                System.out.println("为转化之前的字符串:"+condition);        System.out.println("另一个参数的样子:"+questOptions);        return null;    }
condition = URLDecoder.decode(condition, "utf-8"); 先进行编码解析
condition = "{"+condition.replaceAll("&", "\",").replaceAll("=", ":\"")+"\"}"; 替换相关的符号,拼接成标准的JSON字符串
JSONObject jsonObject = JSONObject.fromObject(condition); 转换成JSONObject对象 3.结果如下
JSONObject格式:{"userName":"测试数据","sex":"男","age1":"20","age2":"30","height1":"","height2":"","weights1":"","weights2":"","uaValue1":"","uaValue2":"","uaphValue1":"","uaphValue2":""}为转化之前的字符串:{userName:"测试数据",sex:"男",age1:"20",age2:"30",height1:"",height2:"",weights1:"",weights2:"",uaValue1:"",uaValue2:"",uaphValue1:"",uaphValue2:""}另一个参数的样子:2.1.2&3.1.1&3.2.3&7.2.2

 

 
 

转载地址:http://tpyba.baihongyu.com/

你可能感兴趣的文章
javascript获取URL中的各种参数
查看>>
Word中使用正则表达式
查看>>
zabbix自动发现结合shell实现自动发现占用内存最大top10进程并监控其资源
查看>>
CSS 备忘
查看>>
redis 主从配置
查看>>
nginx 允许访问目录
查看>>
DataBase异常状态:Recovery Pending,Suspect,估计Recovery的剩余时间
查看>>
烂泥:apache性能测试工具ab的应用
查看>>
strcpy函数的实现
查看>>
DAC的使用用法
查看>>
mysql+keepalived(测试过的完整的)
查看>>
saltstack中的minion匹配
查看>>
Twitter-Finagle使用ZK作为service discovery
查看>>
appium二: 参数配置与初识inspector
查看>>
HACMP&Cluster的常用命令
查看>>
MacBook 安装github 上传本地代码
查看>>
Get the Number of Placement Groups Per Osd
查看>>
Linux下kickstart服务器部署
查看>>
OBS捕捉桌面显示器一直是黑屏怎么办?
查看>>
spring配置线程池-异步执行任务
查看>>