关于springMVC与ajax之间不同数据格式的交互
近段时间做项目,碰到springMVC与ajax之间不同数据格式的交互问题。特此记录下来。希望对小伙伴们有帮助。
1.json格式
当我们前台页面需要后台为其传递json数据,以往struts框架时通常会借助jackson插件。现在利用SpringMVC则通过方法名称上加@responseBoby,方法的返回值类型设为Map<String, Object>(注:此类型是当我们需要得到的是个集合类型时可以使用)。
例如:
/**
* 获取所有的信息
*
* @return
*/
@RequestMapping(value = "/getMAll")
@ResponseBody
public Map<String, Object> getMAll() {
Map<String, Object> map = new HashMap<String, Object>();
map.put("result", "success");
List<M> list = new ArrayList<M>();
list = MService.getMAll();
map.put("data", list);
return map;
}
注:前台ajax方法中dataType设为json即可。如果报错请注意检查你后台所传递的数据组成的格式,是否是正确json格式
2.html(.jsp)文件格式
后台:
@RequestMapping(value = "/getM")
@ResponseBody
public ModelAndView getM(@Valid @RequestParam("MName") String MName, BindingResult br) {
Map<String, Object> map = new HashMap<String, Object>();
map.put("result", "success");
map.put("data", MService.getMByMName(MName));
ModelAndView mav = new ModelAndView();
mav.setViewName("/system/M/index-edit");
mav.addObject("M", map);
return mav;
}
前台:ajax的datatype设置为 html即可
相关推荐
结束数据方法的参数,该如何定义?-- 集合为自定义实体类中的结合属性,有几个实体类,改变下标就行了。<input id="add" type="button" value="新增visitor&quo