1. 使用方法(提交json,返回json)
ajax与SSM整合,需要jar包支持:controller写法
@Controller
public class ajaxController {
@Autowired
private AdminService adminService;
//@RequestBody标签:将传入的 json字符串(必须是字符串格式) 绑定为Admin对象。
//@ResponseBody同理,将admin对象转换为json格式返回。
@RequestMapping("/checkAdmin")
public @ResponseBody Admin checkAdmin(@RequestBody Admin admin) throws Exception {
System.out.println("传入内容为"+admin.getAdminname());
return admin;
}
@RequestMapping("/ajax")
public String ajax() throws Exception {
return "WEB-INF/jsp/ajax.jsp";
}
}
jsp页面写法
$(function(){
$("#btn1").click(function(){
var tmp = $("#input1").val();
//json格式的对象
var admin = {
"adminname":tmp,
"password":"123123123"
}
//JSON.stringify将对象转换为json字符串
var admin_json = JSON.stringify(admin);
$.ajax({
url:"${pageContext.request.contextPath}/checkAdmin.action",
type:"POST",
dataType:"json",
contentType: "application/json;charset=UTF-8",
//data是字符串格式,在上面已经转换
data:admin_json,
success:function(data){
alert(data.adminname);
}
})
})
})
注意data数据,是一个字符串,且key要和pojo对象中的属性一致。可以用JSON.stringify()方法,将一个var对象序列化为json字符串格式。
contentType: "application/json;charset=UTF-8"不可省略,该属性表明传入一个json数据。