如果您使用 spring 3.0++,请使用“@ResponseBody”注解。
你想发送一个 json 请求,并接收来自 json 的响应吗?如果是这样,您将像这样更改您的代码。
var list = {testArray:["a", "b", "c"]};
$.ajax({
url : '/test',
data : $.toJSON(list),
type : 'POST', //<== not 'GET',
contentType : "application/json; charset=utf-8",
dataType : 'json',
error : function() {
console.log("error");
},
success : function(arr) {
console.log(arr.testArray);
var testArray = arr.testArray;
$.each(function(i,e) {
document.writeln(e);
});
}
});
服务器端:
创建自己的“Arr”类。
public class Arr {
private List<String> testArray;
public void setTestArray(List<String> testArray) {
this.testArray = testArray;
}
public List<String> getTestArray() {
return testArray;
}
}
和
@RequestMapping(value = "/test", method = RequestMethod.POST)
@ResponseBody// <== this annotation will bind Arr class and convert to json response.
public Arr addAnotherAppointment(
HttpServletRequest request,
HttpServletResponse response,
@RequestBody Arr arr,
Model model,
BindingResult errors) {
return arr;
}