Spring MVC前后台传递JSON
2017-03-19 21:10
155 查看
1. 传递JSON参数
vardata = {'id':1,'name':'abc'};
$.ajax({
type:'post',
url:'homePageAction.do?testAJax',
contentType:'application/x-www-form-urlencoded',
data:JSON.stringify(data),
success:function(data){
console.log("aaaaaaaaaaa")
console.log(data.msg);
},
error:function(){
}
});
// @RequestMapping(params= "testAJax")
// public voidtestAjax(@RequestParam String id,String name,HttpServletRequest req){
// Stringid2 = req.getParameter("id");
// Stringname2 = req.getParameter("name");
// System.out.println("1111");
// System.out.println("2222");
// }
2. 传递JSON对象或JSON数组(后台接收使用EventInfo[],而不是List<EventInfo> list)
vardata = [{'id':1,'name':'abc'},{'id':2,'name':'def'},{'id':3,'name':'ghi'}];
console.log(JSON.stringify(data));
$.ajax({
type:'post',
url:'homePageAction.do?testAJax',
contentType:'application/json',
data:JSON.stringify(data),
success:function(data){
console.log(data.msg);
console.log(data.obj.id);
console.log(data.obj.name);
},
error:function(){
}
});
// @RequestMapping(params= "testAJax")
// @ResponseBody
// publicJSONObject testAjax(@RequestBody EventInfo[] ei,HttpServletRequest req){
// Longid1 = ei[0].getId();
// Stringname1 = ei[0].getName();
// JSONObjectjo = new JSONObject();
// jo.put("msg","return success");
// jo.put("obj",ei[0]);
// return jo;
// }
3. 传递JSON数组,后台用List接收
前端Ajax传参数:
[ "0866282192144020" ]
后端Spring方法接收参数:
@RequestParam("carnums[]") List<String> carnums
4. 后台返回前台JSON,需要在返回方法上加上@ResponseBoby,代表将JSON数据放到Http Boby中返回
返回值标识了@ResponseBody,SpringMVC将使用StringHttpMessageConverter的write()方法,将结果作为String值写入响应报文,当然,此时canWrite()方法返回true。
关于HttpMessageConverter和@RequestBody、@ResponseBody的关系请看我另一篇文章。
vardata = {'id':1,'name':'abc'};
$.ajax({
type:'post',
url:'homePageAction.do?testAJax',
contentType:'application/x-www-form-urlencoded',
data:JSON.stringify(data),
success:function(data){
console.log("aaaaaaaaaaa")
console.log(data.msg);
},
error:function(){
}
});
// @RequestMapping(params= "testAJax")
// public voidtestAjax(@RequestParam String id,String name,HttpServletRequest req){
// Stringid2 = req.getParameter("id");
// Stringname2 = req.getParameter("name");
// System.out.println("1111");
// System.out.println("2222");
// }
2. 传递JSON对象或JSON数组(后台接收使用EventInfo[],而不是List<EventInfo> list)
vardata = [{'id':1,'name':'abc'},{'id':2,'name':'def'},{'id':3,'name':'ghi'}];
console.log(JSON.stringify(data));
$.ajax({
type:'post',
url:'homePageAction.do?testAJax',
contentType:'application/json',
data:JSON.stringify(data),
success:function(data){
console.log(data.msg);
console.log(data.obj.id);
console.log(data.obj.name);
},
error:function(){
}
});
// @RequestMapping(params= "testAJax")
// @ResponseBody
// publicJSONObject testAjax(@RequestBody EventInfo[] ei,HttpServletRequest req){
// Longid1 = ei[0].getId();
// Stringname1 = ei[0].getName();
// JSONObjectjo = new JSONObject();
// jo.put("msg","return success");
// jo.put("obj",ei[0]);
// return jo;
// }
3. 传递JSON数组,后台用List接收
前端Ajax传参数:
[ "0866282192144020" ]
后端Spring方法接收参数:
@RequestParam("carnums[]") List<String> carnums
4. 后台返回前台JSON,需要在返回方法上加上@ResponseBoby,代表将JSON数据放到Http Boby中返回
返回值标识了@ResponseBody,SpringMVC将使用StringHttpMessageConverter的write()方法,将结果作为String值写入响应报文,当然,此时canWrite()方法返回true。
关于HttpMessageConverter和@RequestBody、@ResponseBody的关系请看我另一篇文章。
相关文章推荐
- jsp中将后台传递过来的json格式的list数据绑定到下拉菜单select
- 使用ajax通过json传递不确定个参数至C#后台(Razor)
- 扩展juery 将 js object对象 转成 json结构字符串 用于ajax 传递json (验证可用)后台 对应fastJSON
- easyui-combobox 传递参数到后台获取json来绑定选项
- Asp.Net WebAPI传递json对象、后台手动接收参数
- js将json数组传递到后台及接收
- 【Ajax】传递Json对象到MVC后台解析
- MVC中前台如何向后台传递数据------$.get(),$post(),$ajax(),$.getJSON()总结
- Json 遍历和后台json格式的传递
- $.ajax contenType是appliation/json的时候,spring mvc后台无法接受data参数
- spring mvc 前台向后台传递参数方法总结
- 关于Java后台的Json数据的传递问题
- spring MVC框架下前台往java后台传送json数据
- jquery通过ajax-json访问java后台传递参数,通过request.getParameter获取不到参数的说明
- springMvc 前端用json的方式向后台传递对象数组
- 从Android使用JSON传递参数到后台中文编码问题
- java后台传递json数据到前端并渲染react组件(react+struts2)
- jsp中将后台传递过来的json格式的list数据绑定到下拉菜单select
- iOS中使用NSJSONSerialization转换成json字符串后传递到后台的引号转义处理
- iOS 过滤后台传递 其他Json数据类型【过滤非字符串类型】