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;
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。
相关文章
Spring中的NamespaceHandler接口及相关软件包说明
这篇文章主要介绍了Spring中的NamespaceHandler接口及相关软件包说明,NamespaceHandler 接口,DefaultBeanDefinitionDocumentReader 使用该接口来处理在spring xml 配置文件中自定义的命名空间,需要的朋友可以参考下2023-12-12
SpringBoot Security使用MySQL实现验证与权限管理
安全管理是软件系统必不可少的的功能。根据经典的“墨菲定律”——凡是可能,总会发生。如果系统存在安全隐患,最终必然会出现问题,这篇文章主要介绍了SpringBoot安全管理Spring Security基本配置2022-11-11
详解Spring系列之@ComponentScan自动扫描组件
这篇文章主要介绍了Spring @ComponentScan自动扫描组件使用,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下2022-06-06
Java Math.round(),Math.ceil(),Math.floor()的区别详解
这篇文章主要介绍了Java Math.round(),Math.ceil(),Math.floor()的区别详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧2020-08-08
IDEA中程序包Org.Springframework.Boot不存在问题及解决
这篇文章主要介绍了IDEA中程序包Org.Springframework.Boot不存在问题及解决方案,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教2023-07-07


最新评论