Spring MVC中通过Jquery低版本的ajax传递参数值 遇到415的错误

首先将contentType修改为application/json,然后将JSON对象序列化为字符串

//重载掉默认的postJSON数据格式

$.postJSON = function(url, data, callback) {  
    return jQuery.ajax({  
        'type' : 'POST',  
        'url' : url,  
        'contentType' : 'application/json',  
        'data' : JSON.stringify(data),  
        'dataType' : 'json',  
        'success' : callback  
    });  
};  

function save(_this){
    var $tr=$(_this).parents("tr");
    var inputs=$tr.find("input");
    var data={};
    data.name=inputs.eq(0).val();
    data.sex=inputs.eq(1).val();
    data.dept=inputs.eq(2).val();
    data.job=inputs.eq(3).val();
    data.mobilephone=inputs.eq(4).val();
    data.telephone=inputs.eq(5).val();
    data.address=inputs.eq(6).val();
    data.qq=inputs.eq(7).val();
    data.email=inputs.eq(8).val();
    data.remark=inputs.eq(9).val();
    data.id=inputs.eq(10).val();
    console.log(data);
     var callback = function (data) {  
         alert(JSON.stringify(data));  
     }  ;
     $.postJSON('${ctx}/testdb/update', data, callback)  ;
     } 
然后提交数据

服务器端这样就可以成功200,但是使用@RequestBody就会报错

 @RequestMapping(value="/update",method=RequestMethod.POST)
 @ResponseBody
 public void update(@RequestParam Map<String, String> params, final HttpServletResponse response) {
     System.out.println(params.keySet().toString());
     outJson("{'1':'2'}",response);
 }

你可能感兴趣的:(Spring MVC中通过Jquery低版本的ajax传递参数值 遇到415的错误)