Ajax传递数组对象
一、JS部分写法
1、JSON.stringify(submitMainComponent.billSubmit) 转json
2、contentType: ‘application/json’ 类型用json
$.ajax({
url : context + '/submit/save',
data:JSON.stringify(submitMainComponent.billSubmit),
type : 'post',
contentType: 'application/json',
cache : false,
success:function(ret){
if (ret) {
if (ret.retCode == GLOBAL_INFO.SYS_SUCCESS) {
test.ret = ret;
if (ret.retObj) {
}
}
}
}
});
二、java 部分写法
1、参数写法 @RequestBody List<Map<String,Object>> list 如果js中定义的参数和后台定义的bean一样,可以将map换成bean
@RequestMapping(value = "save")
@ResponseBody
public HandlerResult saveBill(@RequestBody List<Map<String,Object>> list,
HttpServletRequest request)
{
HandlerResult result = HandlerResult.newInstance();
try
{
UserInfoBean userInfo = SessionUserUtils.gainUserFromSession(request);
System.out.println(list);
Map<String,Object> params = new HashMap<String, Object>();
params.put("orgNum",userInfo.getOrg_num());
Map<String,Object> goodsInfo = this.procureSubmitService.goodsInfo(params);
result.setRetObj(goodsInfo);
result.setRetCode(IResultCode.SYS_SUCCESS);
result.setSysCode(SystemCodeConstants.QUERY_INFO_SUCCEED);
}
catch (Exception e)
{
e.printStackTrace();
result.setRetCode(IResultCode.SYS_FAILED);
result.setSysCode(SystemCodeConstants.QUERY_INFO_FAILED);
result.setResMsg("内部异常!");
}
return result;
}