Spring中Responsebody注解的作用[通俗易懂]

Spring中Responsebody注解的作用[通俗易懂]好长一段时间以来都只是写些测试代码,好久没写项目代码了,以至于sping那套东西日渐生疏了。最近在折腾一个小项目,写了一个controller用来响应ajax请求,结果断点调试发现一直返回"404…notresponse…",折腾了快2小时,一直没想到是注解的问题,万般无赖之下上了度娘,方才如梦初醒,特意记录一下,一来提醒一下自己,二来也让跟我遇到一样问题的朋友少受些折磨。这个注解表示…

大家好,又见面了,我是你们的朋友全栈君。

好长一段时间以来都只是写些测试代码,好久没写项目代码了,以至于spring那套东西日渐生疏了。最近在折腾一个小项目,写了一个controller用来响应ajax请求,结果断点调试发现一直返回”404 …not response…”,折腾了快2小时,一直没想到是注解的问题,万般无赖之下上了度娘,方才如梦初醒,特意记录一下,一来提醒一下自己,二来也让跟我遇到一样问题的朋友少受些折磨。

 

这个注解表示该方法的返回结果直接写入HTTP response body中,一般在异步获取数据时使用。

在使用@RequestMapping后,返回值通常解析为跳转路径。加上@responsebody后,返回结果直接写入HTTP response body中,不会被解析为跳转路径。比如异步请求,希望响应的结果是json数据,那么加上@responsebody后,就会直接返回json数据。
 

 
		@RequestMapping(value="/publish" ,produces="application/json;charset=UTF-8")
		public Object publish()throws Exception{
			Map<String,String> map = new HashMap<String,String>();
			ModelAndView mv = this.getModelAndView();
			PageData pd = new PageData();
			pd = this.getPageData();
			。。。
			map.put("result", "success");
			return AppUtil.returnObject(new PageData(), map);
		}

 

 

 

例如,在我用来响应ajax请求的上述方法中,因为没加@responsebody, responseCode一直是404。后来像下面这样加上后, responseCode就是200了,一切正常了。

 

 

 

 

 
		@RequestMapping(value="/publish" ,produces="application/json;charset=UTF-8")
                @ResponseBody
		public Object publish()throws Exception{
			Map<String,String> map = new HashMap<String,String>();
			ModelAndView mv = this.getModelAndView();
			PageData pd = new PageData();
			pd = this.getPageData();
			。。。
			map.put("result", "success");
			return AppUtil.returnObject(new PageData(), map);
		}

 

 

 

 

 

 

 

 

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

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/140645.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • dota2比分网_浅谈极电竞比分网,脱兔电竞,1zplay和奇兵电竞有什么不同

    在电子竞技飞速发展的背景下,电竞直播行业成为连接电竞比赛和电竞观众们的重要桥梁。以往电竞直播还不像现在发达,观众们常常需要到现场观看比赛,才能感受到热烈的电竞氛围。现在有了电竞线上直播,观众们通过弹幕互动,在家也一样可以跟网友们一起讨论比赛。随着观众们观看比赛的要求越来越高,他们往往不仅满足于观看选手们的精彩操作,更多是希望通过更详细的电竞数据来读懂比赛,由此,电竞比分网成为了电竞爱好者们的新选择…

    2022年4月1日
    64
  • 使用MySQL UDFs来调用gearman分布式任务分发系统

    使用MySQL UDFs来调用gearman分布式任务分发系统

    2021年7月8日
    691
  • python怎么运行ipynb文件_jupyter如何打开D盘的文件

    python怎么运行ipynb文件_jupyter如何打开D盘的文件2019独角兽企业重金招聘Python工程师标准>>>…

    2022年8月26日
    7
  • NetworkManager 使用「建议收藏」

    NetworkManager 使用「建议收藏」NetworkManagerNetworkManageraimsforNetworkConnectivitywhich”JustWorks”.Thecomputershouldusethewirednetworkconnectionwhenit’spluggedin,butautomaticallyswitchtoawirelessc

    2022年10月5日
    1
  • github 网络安全_黑客编程语言

    github 网络安全_黑客编程语言这个开源项目是黑客的多合一工具包,包含了各种黑客工具,比如逆向工程、老鼠工具、SQL注入工具等等。声明:该开源项目仅限学习使用,勿用与从事违法活动。开源地址:https://github.com/Z4nzu/hackingtool这个开源项目是教程序员如何优雅地挣零花钱,本开源项目是一本电子书,从副业的重要性、到程序员可能得副业路径,以及知识付费、课程录制等实战案例为基础,打磨的一本程序员副业指南。开源地址:https://github.com/easychen/lean-side-bussiness“Aw

    2022年9月2日
    4
  • jedis操作redis_redis java使用

    jedis操作redis_redis java使用1、Jedis客户端https://redis.io/clients2、Jedis源码包与使用介绍https://github.com/xetorthio/jedis3、项目中使用通过maven引入Jedis的依赖包<!–https://mvnrepository.com/artifact/redis.clients/jedis–><depen…

    2022年10月10日
    4

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号