Spring MVC 中 AJAX请求并返回JSON
一、以ModelAndView的方式返回
先看下JavaScript代码:
/**
* 保存-同步(版本控制库)
*/
function saveSynchronizedVcHorse(obj) {
var ss = $("#SynchronizedSelection div");
var cacheSelectAry = new Array()
for(var i = 0; i < ss.length; i ++) {
//alert(ss.eq(i).html());
//alert(ss.eq(i).find('label').html());
var o=ss.eq(i).find('label').find("input[type='checkbox']"); var s = $(o).attr('checked');//由于$(obj).attr("checked", false); checked属性会被
if(s != null) {
cacheSelectAry.push($(o).attr('value'));
}
}
if(cacheSelectAry.length == 0) {
alert("请选择城市");
return;
}
var json = "SynchronizedBean={\"exceptionId\":\""+exceptionId+"\",\"cityIds\":["
for(var i = 0; i < cacheSelectAry.length; i ++) {
if(i == cacheSelectAry.length -1) {
json = json +"\""+ cacheSelectAry[i] + "\"";
} else {
json = json + "\"" + cacheSelectAry[i] + "\",";
}
}
json = json + "]}";
$.ajax({
type: "POST",
dataType: "json",
url: "../main/saveSynchronizedData",
data: json,
success: function(msg){
alert(msg.main);
},
error: function () {//XMLHttpRequest, textStatus, errorThrown
alert("请求失败");
}
});
}
主要是看ajax请求部分。
再看Spring 中控制器的代码:
@RequestMapping(value = "/saveSynchronizedData", method = RequestMethod.POST)
public @ResponseBody ModelAndView saveSynchronizedData(@RequestParam("SynchronizedBean") String mSynchronizedJSON) {
ObjectMapper objectMapper = new ObjectMapper();
Map<String, String> map = new HashMap<String, String>();
try {
SynchronizedBean bean = objectMapper.readValue(mSynchronizedJSON, SynchronizedBean.class);
if(bean != null) {
String[] ary = bean.getCityIds();
if(ary != null && ary.length > 0) {
for(String s : ary) {
VCHousePo po = new VCHousePo();
po.setExceptionId(bean.getExceptionId());
po.setCustomerCode(s);
po.setCreateTime(new Date());
po.setExceptionState(0);
vcHService.add(po);
}
}
}
map.put("msg", "success");
} catch (JsonParseException e) {
e.printStackTrace();
map.put("msg", "error");
} catch (JsonMappingException e) {
e.printStackTrace();
map.put("msg", "error");
} catch (IOException e) {
e.printStackTrace();
map.put("msg", "error");
}
return new ModelAndView(new MappingJackson2JsonView(),map);
}
这里是通过ModelAndView的方式进行返回JSON的。另外:MappingJackson2JsonView使用的package是
import org.springframework.web.servlet.view.json.MappingJackson2JsonView;
二、返回String的形式
这种方式不做实验,请查看http://hw1287789687.iteye.com/blog/2128304
Spring MVC 中 AJAX请求并返回JSON的更多相关文章
- Spring MVC 学习笔记11 —— 后端返回json格式数据
Spring MVC 学习笔记11 -- 后端返回json格式数据 我们常常听说json数据,首先,什么是json数据,总结起来,有以下几点: 1. JSON的全称是"JavaScript ...
- Spring MVC中forward请求转发2种方式(带参数)
Spring MVC中forward请求转发2种方式(带参数) http://www.51gjie.com/javaweb/956.html
- Spring MVC 中Ajax返回字符串
今天想用Ajax返回一个html的字符串数据. JavaScript代码: function saveMarkSolve() { //editor1.sync(); //var s = editor1 ...
- 如何在.NET MVC中使用jQuery并返回JSON数据
http://blog.csdn.net/dingxingmei/article/details/9092249 开始实践 - jQuery端 假设我们要从服务器端获取一个文章列表,并把文章条目显示在 ...
- Spring MVC控制器用@ResponseBody声明返回json数据报406的问题
本打算今天早点下班,结果下午测试调试程序发现一个问题纠结到晚上才解决,现在写一篇博客来总结下. 是这样的,本人在Spring mvc控制层用到了@ResponseBody标注,以便返回的数据为json ...
- 转转转!!Spring MVC控制器用@ResponseBody声明返回json数据报406的问题
本打算今天早点下班,结果下午测试调试程序发现一个问题纠结到晚上才解决,现在写一篇博客来总结下. 是这样的,本人在Spring mvc控制层用到了@ResponseBody标注,以便返回的数据为json ...
- [转]如何在.NET MVC中使用jQuery并返回JSON数据
本文转自:http://blog.sina.com.cn/s/blog_48e42dc90100xp1p.html 二.开始实践 - jQuery端 假设我们要从服务器端获取一个文章列表,并把文章条目 ...
- 使用ajax请求SpringMVC返回Json出现乱码解决方法
1:在使用ajax请求后台访问数据的数据,后台返回的数据是乱码,带??问号的乱码,之前还一直没有遇到过,在这里记录整理一下,贴出解决代码! (1):前台使用ajax ,已经设定返回的结果为json格式 ...
- spring mvc ajaxfileupload文件上传返回json下载问题
问题:使用spring mvc ajaxfileupload 文件上传在ie8下会提示json下载问题 解决方案如下: 服务器代码: @RequestMapping(value = "/ad ...
随机推荐
- HDU 1011 Starship Troopers 树形+背包dp
http://acm.hdu.edu.cn/showproblem.php?pid=1011 题意:每个节点有两个值bug和brain,当清扫该节点的所有bug时就得到brain值,只有当父节点被 ...
- pat 素数对猜想
让我们定义dn为:dn=pn+1−pn,其中pi是第i个素数.显然有d1=1,且对于n>1有dn是偶数.“素数对猜想”认为“存在无穷多对相邻且差为2的素 ...
- bzoj 2763: [JLOI2011]飞行路线 -- 分层图最短路
2763: [JLOI2011]飞行路线 Time Limit: 10 Sec Memory Limit: 128 MB Description Alice和Bob现在要乘飞机旅行,他们选择了一家相 ...
- Educational Codeforces Round 10 C. Foe Pairs 水题
C. Foe Pairs 题目连接: http://www.codeforces.com/contest/652/problem/C Description You are given a permu ...
- 2015 UESTC 搜索专题D题 基爷的中位数 二分
基爷的中位数 Time Limit: 20 Sec Memory Limit: 256 MB 题目连接 http://acm.uestc.edu.cn/#/contest/show/61 Descr ...
- iOS开发系列——内购、GameCenter、iCloud、Passbook系统服务开发汇总
社交 Social 现在很多应用都内置“社交分享”功能,可以将看到的新闻.博客.广告等内容分享到微博.微信.QQ.空间等,其实从iOS6.0开始苹果官方就内置了Social.framework专门来实 ...
- JAVA容器-模拟LinkedList实现(双链表)
概述 LinkedList实质上就是双向链表的拓展的实现,我们将关注一下问题.LinkedList 1.双向链表怎么来实现插入.删除.查询? 2.利用二分法提高查询效率. 3.不同步,线程不安全,需要 ...
- [译]Java 程序员应该了解的 10 个面向对象设计原则
面向对象设计原则是OOPS(Object-Oriented Programming System,面向对象的程序设计系统)编程的核心,但大多数Java程序员追逐像Singleton.Decorator ...
- Spring Bean引用例子
在Spring,bean可以“访问”对方通过bean配置文件指定相同或不同的引用. 1. Bean在不同的XML文件 如果是在不同XML文件中的bean,可以用一个“ref”标签,“bean”属性引用 ...
- 在安卓上,微信公众号无法分享到QQ的解决办法之一
今天做一个微信公众号分享功能,参考微信sdk,代码几乎没有任何问题,但就是分享到QQ失败,以下是我QQ分享部分的代码: wx.onMenuShareQQ({ title: '快来和我一起玩转大脑', ...