ResponseBody浅析[通俗易懂]

ResponseBody浅析[通俗易懂]@[TOC]ResponseBody浅析欢迎使用Markdown编辑器你好!这是你第一次使用Markdown编辑器所展示的欢迎页。如果你想学习如何使用Markdown编辑器,可以仔细阅读这篇文章,了解一下Markdown的基本语法知识。新的改变我们对Markdown编辑器进行了一些功能拓展与语法支持,除了标准的Markdown编辑器功能,我们增加了如下几点新功能,帮助你用它写博客:…

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

写代码中遇到的一个小问题,记录一下

@Controller层@RequestMapping后会直接返回ModelAndView对象,而对于Ajax请求,有些时候只需要返回String字符串或者一个Object对象,此时@ResponseBody这个注解通常使用在控制层(controller)的方法上,其作用是将方法的返回值以特定的格式写入到response的body区域,进而将数据返回给客户端。当方法上面没有写ResponseBody,底层会将方法的返回值封装为ModelAndView对象。

假如是字符串则直接将字符串写到客户端,假如是一个对象,此时会将对象转化为json串然后写到客户端。这里需要注意的是,如果返回对象,按utf-8编码。如果返回String,默认按iso8859-1编码,页面可能出现乱码。因此在注解中我们可以手动修改编码格式,例如@RequestMapping(value=”/cat/query”,produces=“text/html;charset=utf-8”),前面是请求的路径,后面是编码格式。

那么,控制层方法的返回值是如何转化为json格式的字符串的呢?其实是通过HttpMessageConverter中的方法实现的,因为它是一个接口,因此由其实现类完成转换。如果是bean对象,会调用对象的getXXX()方法获取属性值并且以键值对的形式进行封装,进而转化为json串。如果是map集合,采用get(key)方式获取value值,然后进行封装。

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

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

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


相关推荐

  • kali 目录扫描_kali扫描命令

    kali 目录扫描_kali扫描命令1、简介dirsearch是一个基于python3的命令行工具,常用于暴力扫描页面结构,包括网页中的目录和文件。相比其他扫描工具disearch的特点是:支持HTTP代理多线程支持多种形式的网页(asp,php)生成报告(纯文本,JSON)启发式检测无效的网页递归扫描用户代理随机化批量处理扫描器与字典(注:字典必须是文本文件)2、下载及安装GitHub的下载地址为:https://github.com/maurosoria/dirsearchWindows10安装方式点击c

    2022年9月26日
    3
  • pytorch中resnet_通过Pytorch实现ResNet18

    pytorch中resnet_通过Pytorch实现ResNet18对于像我这样刚刚入门深度学习的同学来说,可能接触学习了一个开发工具,却没有通过运用来熟练的掌握它。而ResNet是深度学习里面一个非常重要的backbone,并且ResNet18实现起来又足够简单,所以非常适合拿来练手。我们这里的开发环境是:python3.6.10pytorch1.5.0torchvision0.6.0cudatoolkit10.2.89cudnn7.6.5首先,我们需…

    2022年5月26日
    35
  • 2a锂电池充电管理芯片_锂电池电压检测芯片

    2a锂电池充电管理芯片_锂电池电压检测芯片:兼容PD和QC快充充电器输入单节锂电池2A充电板1.2应用:便捷充电设备等1.3电池组:3.7V锂电池组,多并或单串,充满4.2V

    2022年9月27日
    2
  • Mac OS 如何卸载干净Pycharm

    Mac OS 如何卸载干净Pycharm由于Pycharm新版本的某些原因想更换低版本的朋友,可以按照以下步骤清除干净pycharm残留数据(本人卸载过程记录,如有错误请指正):1、打开访达,找到PyCharm应用,右键移到废纸篓;2、清理缓存,参数,日志相关配置文件:(注意:使用lsPyCharm关键字进行搜索,PyCharm2020.1是我的文件名称)a、cd~/Library/Preferences/rm-rfPyCharm2020.1/…

    2022年8月27日
    9
  • MATLAB绘图总结

    MATLAB绘图总结目录一些常用的MATLAB绘图方法二维图像绘制三维作图提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档一些常用的MATLAB绘图方法总结一下一些常用的MATLAB的绘图函数和参数设置,增强结果的可视化程度。二维图像绘制二维图像是在不同的平面坐标上将数据点连接起来的平面图像。常用的平面坐标有,直角坐标、极坐标、对数坐标等,MATLAB有很多常用的指令来绘制不同的二维图像。plot和fplotMATLAB中最常用的两个二维函数绘制函数plot()和fplot()pl

    2022年6月29日
    23
  • Poetry(1)Poetry介绍与安装

    Poetry(1)Poetry介绍与安装介绍Poetry是Python中的依赖管理和打包工具,当然它也可以配置虚拟环境。它允许您声明项目所依赖的库,并为您管理(安装/更新)它们。之前一直使用virtualenvwrapper管理虚拟

    2022年7月29日
    27

发表回复

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

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