如果前台将Object对象,使用JSON.stringify(obj)转成Json字符串,并依此请急求后台时,其中
contentType : application/x-www-form-urlencoded ,该属性为表单提交的默认类型。
使用Spring Mvc接收参数和Request 接收参数有所不同:
Spring Mvc接收参数: 会对Json字符串中的""进行转义,而request.getParamter()不会。
示例:
前台代码:
var testObj=new Object();
testObj.name='abc'; testObj.age='8'; var testJson=JSON.stringify(testObj); console.log(conditionsJson); lrDgLeftGrid.datagrid('load',{ 'testJson':testJson });后台代码:
@RequestMapping(value="/testJson") @ResponseBody public DataGrid testJson(PageHelper ph, String testJson,HttpServletRequest request) throws Exception { System.out.println("spring="+testJson); System.out.println("getParamter="+request.getParameter("testJson")); }
后台输出:
spring={"name":"abc","age":"8"}getParamter={"name":"abc","age":"8"}