当前位置: 首页 > article >正文

@ResponseBody详细解释及代码举例

@ResponseBody 是 Spring 框架中的一个注解,用于标记控制器方法的返回值将直接写入 HTTP 响应体中,而不是作为视图名称来渲染视图。这意味着该方法的返回值不会经过视图解析器处理,而是直接作为响应内容返回给客户端。这在处理 RESTful API 时特别有用,因为通常需要直接返回 JSON 或 XML 数据,而不是 HTML 页面。

@ResponseBody 的作用

  1. 直接返回数据

    • 当一个控制器方法被 @ResponseBody 注解时,该方法的返回值将直接作为 HTTP 响应的内容返回给客户端。
  2. 避免视图解析

    • 默认情况下,Spring MVC 会将控制器方法的返回值当作视图名称来解析。使用 @ResponseBody 可以避免这一行为,直接返回实际的数据内容。
  3. 自动序列化

    • 如果返回的对象不是原始类型(如 String、Integer 等),而是自定义对象,Spring 会自动将其序列化为 JSON 或 XML 格式(具体取决于客户端请求的 Accept 头信息)。
  4. 支持多种数据类型

    • @ResponseBody 支持多种数据类型的返回,包括字符串、JSON 对象、XML 文档等。

使用示例

下面通过几个示例来展示 @ResponseBody 的使用方法。

示例 1:返回字符串
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.bind.annotation.ResponseBody;

@RestController
@RequestMapping("/api/messages"

http://www.kler.cn/news/358620.html

相关文章:

  • MiniConda 的安装与使用
  • RabbitMQ系列学习笔记(二)--简单模式
  • 基于SSM服装定制系统的设计
  • 学习docker第五弹------Docker容器数据卷
  • Python知识点:基于Python技术和工具,如何使用IPFS进行去中心化存储
  • 基于MATLAB HU不变矩的树叶识别系统
  • 基于python+dj+mysql的音乐推荐系统网页设计
  • 本地部署 mini-omni
  • 【火山引擎】语音识别 |流式语音识别 | python
  • 根据json转HttpClient脚本
  • 数据为何成为资产?
  • 92. Color颜色渐变插值
  • 【JDK、Maven、Git、PostgreSQL】VSCode后端开发环境配置样例
  • 数值优化 | 图解梯度下降法与共轭梯度下降法(附案例分析与Python实现)
  • 北斗导航系统在智能交通领域的应用
  • 利用TDM在vscode中运行c语言
  • PAI 大语言模型评测平台现已支持裁判员模型评测
  • django连接mysql数据库
  • 堆结构和堆排序
  • 【iOS】YYModel