JSON

@ResponseBody把返回的对象自动拼成JSON

字号+ 作者:H5之家 来源:H5之家 2016-01-17 12:56 我要评论( )

IT资讯,@ResponseBody把返回的对象自动拼成JSON,UDN开发者论坛,专注企业互联网开发的IT技术社区


  使用@ResponseBody,把要返回的对象自动拼成JSON的格式返回

  当然,需要加入几个jackson的包,这里加入了:

  

  • jackson-core-2.1.2.jar、jackson-annotations-2.1.2.jar、jackson-databind-2.1.2.jar

    复制代码



      n测试使用的Controller的方法:

  • @RequestMapping(value = "/hello")  
  • @ResponseBody  
  • public UserModel handleRequest(@RequestBody String reqBody, UserModel um) {  
  • System.out.println("the reqBody="+reqBody);  
  • um.setName(um.getName()+",server");  
  • return um;  
  • }  

    复制代码




      测试使用的页面

  • <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>  
  • <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8">  
  • </head>  
  • <script language="JavaScript" src="/mvcexample/static/js/jquery-1.3.2.min.js"></script>  
  • <script language="JavaScript">  
  • $().ready(function(){  
  • $.getJSON('/mvcexample/hello',{uuid:'1',name:'test'},function(data){  
  • alert(data.uuid+" , "+data.name);  
  • });  
  • });  
  • </script>  

    复制代码




      去测试看看吧,可以看到Controller的方法直接返回一个um对象,但是 @ResponseBody会把这个对象自动变成json格式的,再传回客户端,非常方便。

      当然, @ResponseBody也支持集合对象自动变成json格式,比如:

      测试使用的Controller方法

  • @RequestMapping(value = "/hello")  
  • @ResponseBody  
  • public List<UserModel> handleRequest(@RequestBody String reqBody, UserModel um) {  
  • System.out.println("the reqBody="+reqBody);  
  • um.setName(um.getName()+",server");  
  • List<UserModel> list = new ArrayList<UserModel>();  
  • list.add(um);  
  • UserModel um2 = new UserModel();  
  • um2.setUuid("22");  
  • um2.setName("222");  
  • list.add(um2);  
  • return list;  
  • }  

    复制代码



      n测试使用的页面

  • <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>  
  • <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"></head>  
  • <script language="JavaScript" src="/mvcexample/static/js/jquery-1.3.2.min.js"></script>  
  • <script language="JavaScript">  
  • $().ready(function(){  
  • $.getJSON('/mvcexample/hello',{uuid:'1',name:'test'},function(data){  
  • $.each(data,function(index,v){  
  • alert("tr="+v.uuid+",v="+v.name);  
  • });  
  • });  
  • });  
  • </script>  

    复制代码

     

  • 1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,请转载时务必注明文章作者和来源,不尊重原创的行为我们将追究责任;3.作者投稿可能会经我们编辑修改或补充。

    相关文章
    • 未来编程的9大猜想:JavaScript不必亲自编写

      未来编程的9大猜想:JavaScript不必亲自编写

      2016-01-30 13:01

    • Jsonp 关键字详解及json和jsonp的区别,ajax和jsonp的区别

      Jsonp 关键字详解及json和jsonp的区别,ajax和jsonp的区别

      2016-01-18 17:28

    • 正则表达式优化JSON字符串的技巧

      正则表达式优化JSON字符串的技巧

      2016-01-18 09:06

    • jquery ajax跨域解决方法(json方式)

      jquery ajax跨域解决方法(json方式)

      2016-01-15 18:06

    网友点评