Spring中Responsebody注解的作用

 最近 写了一个controller用来响应ajax请求,结果断点调试发现一直返回"404 ...not response..." 。这个注解表示该方法的返回结果直接写入HTTP response body中,一般在异步获取数据时使用。在使用@RequestMapping后,返回值通常解析为跳转路径。加上@responsebody后,返回结果直接写入HTTP response body中,不会被解析为跳转路径。比如异步请求,希望响应的结果是json数据,那么加上@responsebody后,就会直接返回json数据。


[html]  view plain  copy
  1. <pre code_snippet_id="2127366" snippet_file_name="blog_20170114_1_8611268" name="code" class="java">        @RequestMapping(value="/publish" ,produces="application/json;charset=UTF-8")  
  2.         public Object publish()throws Exception{  
  3.             Map<String,String> map = new HashMap<String,String>();  
  4.             ModelAndView mv = this.getModelAndView();  
  5.             PageData pd = new PageData();  
  6.             pd = this.getPageData();  
  7.             。。。  
  8.             map.put("result", "success");  
  9.             return AppUtil.returnObject(new PageData(), map);  
  10.         }</pre><br>  
  11. <br>  
  12. <pre></pre>  
  13. 例如,在我用来想应阿贾克斯请求的上述方法中,因为没加@responsebody, responseCode一直是404。后来像下面这样加上后, responseCode就是200了,一切正常了。  
  14. <p></p>  
  15. <p></p>  
  16. <pre code_snippet_id="2127366" snippet_file_name="blog_20170114_2_1861845" name="code" class="html"><pre code_snippet_id="2127366" snippet_file_name="blog_20170114_2_1861845" name="code" class="java">        @RequestMapping(value="/publish" ,produces="application/json;charset=UTF-8")  
  17.                 @ResponseBody  
  18.         public Object publish()throws Exception{  
  19.             Map<String,String> map = new HashMap<String,String>();  
  20.             ModelAndView mv = this.getModelAndView();  
  21.             PageData pd = new PageData();  
  22.             pd = this.getPageData();  
  23.             。。。  
  24.             map.put("result", "success");  
  25.             return AppUtil.returnObject(new PageData(), map);  
  26.         }</pre><br>  
  27. <br>  
  28. <pre></pre>  
  29. <p></p>  
  30. <p></p>  
  31. <p></p>  
  32. <pre></pre>  
  33. <pre></pre>  
  34.      
  35. </pre>  
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值