首页 / 更多教程 / @ResponseBody注解的作用
@ResponseBody注解的作用
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了@ResponseBody注解的作用,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含868字,纯文字阅读大概需要2分钟。
内容图文
![@ResponseBody注解的作用](/upload/InfoBanner/zyjiaocheng/1230/0ddd572a3af44ffa9cbd0fd13f5a84ff.jpg)
@ResponseBody的作用就是将返回的对象通过MessageConverter处理之后,写入response的outputStream中返回。大致流程如下
1.在DispatcherServlet中调用doDispatch方法,该方法中有如下代码。这里的ha为RequestMappingHandlerAdapter,这个对象怎么来的,简单点说就是通过request的请求路径匹配到执行器链,通过执行器链中的处理器匹配到对应的适配器,暂时不做深入讨论。
2.handle方法会走到RequestMappingHandlerAdapter的handleInternal中
3.调用invokeHandlerMethod方法
4.查看invokeAndHandle方法,这里就到了本文的重点了
5.查看handleReturnValue
6.查看selectHandler
7.这里遍历预置的处理器是否支持返回值的类型。这里的returnValueHanlers比较多,有15个。对应@ResponseBody注解的为RequestResponseBodyMethodProcessor。直接看该对象的supportsReturnType方法。
8.匹配到RequestResponseBodyMethodProcessor之后就执行该第5步中该对象的handleReturnValue
到此,@ResponseBody注解的作用就讲完了。
顺带一提,配置了视图解析器之后,通常情况下为ViewNameMethodReturnValueHandler这个类来处理视图。
这里是15个returnValueHandler的截图
总结:简单的讲,@ResponseBody注解就是为了RequestResponseBodyMethodProcessor处理返回值提供标识。
如有不对之处望指教。
原文:https://www.cnblogs.com/guyaoblog/p/11382057.html
内容总结
以上是互联网集市为您收集整理的@ResponseBody注解的作用全部内容,希望文章能够帮你解决@ResponseBody注解的作用所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。