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;
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。
相關文章
SpringBoot與Postman實現(xiàn)REST模擬請求的操作
這篇文章主要介紹了SpringBoot與Postman實現(xiàn)REST模擬請求的操作,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2021-06-06
Java IO中字節(jié)流復制圖片實現(xiàn)代碼
這篇文章主要介紹了Java IO中字節(jié)流復制圖片實現(xiàn)代碼的相關資料,需要的朋友可以參考下2017-04-04
POI導出之Excel實現(xiàn)單元格的背景色填充問題
這篇文章主要介紹了POI導出之Excel實現(xiàn)單元格的背景色填充問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2023-03-03
spring整合atomikos實現(xiàn)分布式事務的方法示例
本文整合了一個spring和atomikos的demo,并且通過案例演示說明atomikos的作用,具有一定的參考價值,感興趣的小伙伴們可以參考一下2019-05-05
Java通用BouncyCastle實現(xiàn)的DES3加密的方法
這篇文章主要介紹了Java通用BouncyCastle實現(xiàn)的DES3加密的方法,本文給大家介紹的非常詳細,對大家的學習或工作,具有一定的參考借鑒價值,需要的朋友可以參考下2020-12-12

