JAVA响应ajax请求的_springmvc接受及响应ajax请求。 以及@RequestBody 和@ResponseBody注解的使用...

1.发送ajax请求

$.ajax({

url:"user/testAjax",

contentType:"application/json;charset=UTF-8",

data:"{"name":"ethan","age":"123"}",

dataType:"json",

type:"post",

success:function(data){

console.log(data);

}

});

2.编写controller代码

@Controller

@ResquestMapping("user")

public class UserController{

publicvoid testAjax(@RequestBody String str){//接收客户端发送的ajax请求中的json字符串

System.out.println(str);

}

}

3.将接受的请求转换成对象

@Controller

@ResquestMapping("user")public classUserController{public void testAjax(@RequestBody User user){//接收客户端发送的ajax请求中的json字符串,后端自动转换为User对象

System.out.println(user);

}

}

4.返回(响应)JavaBean(user对象)

@Controller

@ResquestMapping("user")public classUserController{public @ResponseBody User testAjax(@RequestBody User user){//接收客户端发送的ajax请求中的json字符串,后端自动转换为User对象

System.out.println(user);

user.setName("tom");

user.setAge("12");//返回user对象

returnuser;

}

}

总结:

1.RequestBody  获取请求体的内容,get请求不使用

2.ResponseBody  该注解用于将Controller的方法返回的对象,通过HttpMessageConverter接口转换为指定格式的数据如:json,xml等,通过Response响应给客户端

注意:

Springmvc默认用MappingJacksonHttpMessageConverter对json数据进行转换,需要加入jackson的包。

json字符串和JavaBean对象互相转换的过程中,需要使用jackson的jar包

68da7594d69d4ddb563ac1f9a285cd0f.png

你可能感兴趣的:(JAVA响应ajax请求的)