跳到主要内容
极客日志极客日志面向AI+效率的开发者社区
首页博客GitHub 精选镜像工具UI配色美学隐私政策关于联系
搜索内容 / 工具 / 仓库 / 镜像...⌘K搜索
注册
博客列表
Javajava

Spring MVC 快速入门:响应处理与状态码设置

Spring MVC 响应处理实战,涵盖状态码设置与报文格式配置。通过 HttpServletResponse 对象调整 HTTP 响应细节,结合注解规范控制层行为,确保前后端数据交互符合预期标准。

竹影清风发布于 2026/4/9更新于 2026/5/2317 浏览
Spring MVC 快速入门:响应处理与状态码设置

引言

Spring MVC 连接前端与后端,帮助开发者驾驭复杂业务逻辑。本篇聚焦于控制层如何返回响应内容。

一、返回响应内容

1. 设置状态码

在控制层中,我们可以利用 HttpServletResponse 对象来设置 HTTP 响应状态码。

import jakarta.servlet.http.HttpServletResponse;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;

@RequestMapping("/response")
@Controller
public class ResponseController {
    // 设置状态码,利用响应 HttpServletResponse 来设置
    @RequestMapping("/setStatus")
    @ResponseBody
    public Student setStatus(HttpServletResponse response) {
        Student student = new Student();
        student.setName("dalao");
        student.setAge(18);
        student.setGender("nv");
        response.setStatus(HttpServletResponse.SC_BAD_REQUEST);
        return student;
    }
}

类定义前加入 @RequestMapping("/response") 和 @Controller,方法定义前加入 @RequestMapping("/setStatus") 和 @ResponseBody。使用 HttpServletResponse 类型接收响应方式,通过 response.setStatus() 设置状态码。例如 HttpServletResponse.SC_BAD_REQUEST 对应 400 错误。

关于这些状态码常量,可以参考源码中的枚举定义,根据具体需求进行设置。

在这里插入图片描述

2. 设置报文格式

可以通过 produces 属性指定响应内容的媒体类型。

import jakarta.servlet.http.HttpServletResponse;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;

@RequestMapping("/response")
@Controller
public class ResponseController {
    /**
     * 设置报文格式
     */
    @RequestMapping(value = "/setContentType", produces = "application/json")
    @ResponseBody
    public String setContentType() {
        // 此处省略具体实现
        return "";
    }
}

目录

  1. 引言
  2. 一、返回响应内容
  3. 1. 设置状态码
  4. 2. 设置报文格式
  • 💰 8折买阿里云服务器限时8折了解详情
  • Magick API 一键接入全球大模型注册送1000万token查看
  • 🤖 一键搭建Deepseek满血版了解详情
  • 一键打造专属AI 智能体了解详情
极客日志微信公众号二维码

微信扫一扫,关注极客日志

微信公众号「极客日志V2」,在微信中扫描左侧二维码关注。展示文案:极客日志V2 zeeklog

更多推荐文章

查看全部
  • Stable Diffusion XL 1.0 实战:Streamlit 低显存部署指南
  • 夸克网盘精选资源合集:书籍、软件、教程及 AI 资料
  • 基于 Spring Boot 的 Java 电子商务网站设计与实现
  • 前缀和算法实战:和为 K 的子数组与和可被 K 整除的子数组
  • Python 字典核心用法:11 个方法详解
  • Bing Webmaster 工具添加及验证步骤指南
  • UnityMCP+Claude+VSCode 构建 AI 游戏开发环境
  • CentOS 系统安装 libwebkit2gtk-4.1-0 依赖库指南
  • OpenClaw 六大开源替代方案深度对比
  • 数据结构:双向链表实现与算法分析
  • Visual Studio 中 GitHub Copilot Agent 模式深度解析
  • MC.JS WEBMC1.8 快速创建方块世界入门教程
  • Python 中如何打开和查看 .npz 文件
  • 火山引擎发布两款视频大模型及多项 AI 升级
  • KoboldAI 本地部署与配置实战指南
  • Qt WebChannel 多方法调用导致 execCallbacks 错误的解决方案
  • Claude-Code 2.1.88 源码结构解析:基于 Source Map 还原的内部实现
  • WorkBuddy:腾讯 AI 办公助手,重新定义智能工作流
  • 现代 C++ 新特性 constexpr 详解:从 C++11 到 C++20 的演进
  • Axure 实现 AI 自动对话机器人原型教程

相关免费在线工具

  • Keycode 信息

    查找任何按下的键的javascript键代码、代码、位置和修饰符。 在线工具,Keycode 信息在线工具,online

  • Escape 与 Native 编解码

    JavaScript 字符串转义/反转义;Java 风格 \uXXXX(Native2Ascii)编码与解码。 在线工具,Escape 与 Native 编解码在线工具,online

  • JavaScript / HTML 格式化

    使用 Prettier 在浏览器内格式化 JavaScript 或 HTML 片段。 在线工具,JavaScript / HTML 格式化在线工具,online

  • JavaScript 压缩与混淆

    Terser 压缩、变量名混淆,或 javascript-obfuscator 高强度混淆(体积会增大)。 在线工具,JavaScript 压缩与混淆在线工具,online

  • Base64 字符串编码/解码

    将字符串编码和解码为其 Base64 格式表示形式即可。 在线工具,Base64 字符串编码/解码在线工具,online

  • Base64 文件转换器

    将字符串、文件或图像转换为其 Base64 表示形式。 在线工具,Base64 文件转换器在线工具,online