微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

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{


  public void testAjax(@RequestBody String str){//接收客户端发送的ajax请求中的json字符串
           System.out.println(str); 
     }      
}

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

@Controller
@ResquestMapping("user")
public class UserController{


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

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

@Controller
@ResquestMapping("user")
public class UserController{


  public @ResponseBody User testAjax(@RequestBody User user){//接收客户端发送的ajax请求中的json字符串,后端自动转换为User对象
           System.out.println(user); 
           
            user.setName("tom");
            user.setAge("12");
            //返回user对象
            return user;
     }      
} 

 

总结:

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

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

注意:

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

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

 

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐