java开发中为什么我的spring mvc后台接收不到前台传来的参数?

这是页面的传参方法:
$.ajax({
type:'post',
url:'frequency/add.do',
dataType:'json',
contentType:'application/json;charset=UTF-8',
data:$('#frequencyForm').serializeArray(),
success:function(result){
alert(result.msg);
}
});
});

这是后台的controller方法 能进入这个方法 但获取不到参数
@RequestMapping("add.do")
public ModelAndView addFrequency(Frequency f){
ModelAndView mav=new ModelAndView();
System.out.println("检查人"+f.getCheck_person());//打印空值
Map param=new HashMap();
param.put("msg", "thank you");
mav.addAllObjects(param);
return mav;
}

前台form表单的input元素的name与Frequency类的各个属性都对应 名字都一样
后台如果用request.getParameter可以获取参数 但是Frequency对象有20多个属性呢。。。
如果去掉contentType:'application/json;charset=UTF-8',根本没法发送到后台 会告诉我400bad request

第1个回答  2014-11-20
将serializeArray()改为serialize()试试?追问

一样不行

第2个回答  2014-11-20

这样暂时看不出什么问题,你可以按F12看看浏览器的请求的详细信息,看看你的具体请求的内容,主要是传递的数据字段的名称像这样的

本回答被网友采纳
相似回答