您的位置:首页 > 编程语言 > Java开发

SpringMVC处理Ajax请求(请求数据为 json 格式字符串)

2015-10-01 09:12 816 查看
1.前端页面的javascript代码:

<script type="text/javascript">
$(document).ready(function(){
//以json 格式字符串请求服务器
$("#add").click(function(){
var saveDataAry=[];
var data1={"userName":"test","address":"gz"};
var data2={"userName":"Teemo","address":"hy"};
saveDataAry.push(data1);
saveDataAry.push(data2);
$.ajax({
type:"POST",
url:"saveUser",
dataType:"json",
contentType:"application/json",
data:JSON.stringify(saveDataAry), //将 json 对象转为 json字符串
success:function(data){
//alert(data);
for(var i=0;i<data.length;i++){
var userName = data[i].userName;
var address = data[i].address;
alert(userName + "---" + address);
}
}
});
});
});
</script>
2.后台SpringMVC的controller: 使用 @RequestBody 注解来接受请求数据,使用@ResponseBody 注解来返回数据。

<span style="white-space:pre">	</span>/**
* 前端 请求 jons 串,后台返回 json串
* @param users
*/
@ResponseBody
@RequestMapping(value = "saveUser", method = {RequestMethod.POST })
<span style="white-space:pre">	</span>public List<User> saveUser(@RequestBody List<User> users) {
<span style="white-space:pre">	</span>System.out.println("user的size: " + users.size());

<span style="white-space:pre">		</span>List<User> listUser = new ArrayList<>(users);
<span style="white-space:pre">	</span>for(User list:listUser){
<span style="white-space:pre">	</span>System.out.println(list.getUserName()+ "---" + list.getAddress());
<span style="white-space:pre">	</span>String address = list.getAddress();
<span style="white-space:pre">	</span>list.setAddress(address + "^^^");
<span style="white-space:pre">	</span>}
<span style="white-space:pre">	</span>//将 listUser 返回前端
<span style="white-space:pre">	</span>return listUser;
<span style="white-space:pre">	</span>}
3.为了能接受从前端传过来的json数据,需要定义一个JavaBean。

package com.hebtu.springmvc.crud.entities;

public class User {

private String userName;

private String address;

public String getAddress() {
return address;
}
public void setAddress(String address) {
this.address = address;
}
public String getUserName() {
return userName;
}
public void setUserName(String userName) {
this.userName = userName;
}

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: