后台
环境:spring mvc
@RequestMapping("/test")
@ResponseBody
public List<String> test(@RequestParam(value="test",required=true)String t,@RequestParam(value="test2",required=true)String t2){
System.out.println(t+" "+t2);
List<String> ls=new ArrayList<String>();
ls.add(t);
ls.add(t2);
return ls;
}
前台
环境:jquery
$.ajax({
url : ontextPath_+ '/t_system/test',
type : "POST",
data : {
test:"test1111",
test2:"test2222"
},
success : function (json){
alert(json);
}
});
服务器返回数据
["test1111","test2222"] 返回的list会被转换成数组
ajax是异步请求,发了请求,数据会等一段时间才开始返回,js会马上执行之后的代码,所以后面代码如果用到了返回的数据,要放到回调函数中
第二种
服务端
@RequestMapping("/test")
@ResponseBody
public Person test(){
Person person=new Person();
person.setId(1);
person.setName("aaa");
return person;
}
package cn.com.yunyoutianxia.tour.outlets.controller.product;
public class Person {
private String name;
private Integer id;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public Integer getId() {
return id;
}
public void setId(Integer id) {
this.id = id;
}
}
后台ajax
$.ajax({
url : _contextPath_+ '/t_product/hotel/test',
type : "POST",
data : {
test:"test1111",
test2:"test2222"
},
success : function (json){
alert(json.name);
}
服务器返回数据
{name:"aaa",id:1} @ResponseBody会把对象转成json数据