SpringMVC自定义返回状态码
发表于|更新于|后端
|浏览量:
使用 ResponseEntity 类
标识整个 HTTP 响应(状态码、头部信息、响应体)


异常类或 Controller 方法上标识 @ResponseStatus 注解


或者

使用 @ControllerAdvice ( @RestControllerAdvice)和 @ ExceptionHandler 注解


文章作者: 褚成志
版权声明: 本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来源 褚成志的分享站!
相关推荐
2026-04-09
SpringMVC
第四章、SpringMVC控制器开发详解 二4.1 核心要点 接受客户端(client)请求参数 [讲解完毕] 调用业务对象[讲解] 页面跳转 4.2 SpringMVC控制器调用业务对象【SSM整合】4.2.1 核心思路分析 4.2.2 编码 dispatcher.xml 1234567891011121314151617181920212223242526272829303132333435363738<context:component-scan base-package="com.baizhiedu"/><mvc:annotation-driven/><bean id="resolver" class="org.springframework.web.servlet.view.InternalResourceViewResolver"> <!--路径--> <property name="prefix" value="...
2026-04-09
依赖冲突的发现和解决
依赖冲突的发现 现象一:一个类的行为不按照预期,本来这个类应该是有这个方法的,但是引入一个新的依赖之后就开始报错找不到方法了,一般就是依赖冲突的时候 Maven 自己选择了一个不符合自己预期的依赖导致报错。 依赖冲突的解决使用 Maven helper 找到对应类所在 jar 的依赖都由谁导入,之后排除掉不符合自己预期的依赖即可。 一般直接在插件右键就可以 exclude
2026-04-09
时间格式不能正常转换?
@DateTimeFormat 注解前台到后台的时间格式转换,对于GET 请求参数可以正常工作。对于 POST 请求会报反序列化错误 POST 请求会使用 JSON 反序列化,不会使用 @DateTimeFormat 注解。 POST 表单(body)实现时间格式转换的方法使用 @JsonFormat 注解但是这种代码侵入性强,可维护性差 实现自定义格式转换器 @JsonDeserialize可以支持多种时间格式的转换: 指定反序列化器 定义全局配置类避免冗余代码 指定转换器做Date类型的反序列化: 在对象中就不需要指定对应的注解了。
2026-04-09
自定义通用异常处理
生产级别的通用异常处理所有的异常都抛出,统一在表现层处理,其余直接抛出就好。 spring定义的错误响应方式如图所示。 使用Java提供的异常类抛出的时候只可以传递string,所以需要自定义一个异常类,继承RuntimeException,抛出的时候同时包含信息和状态码 新建通用异常处理类相当于aop里面的通知,起到拦截的作用,要做到通用,状态码不可以写死,这里的设计不对,后面会改进 src/main/java/com/deltaqin/common/advice/CommonExceptionHandler.java 12345678910111213141516171819package com.deltaqin.common.advice;import org.springframework.http.HttpStatus;import org.springframework.http.ResponseEntity;import org.springframework.web.bind.annot...
2026-04-09
netty思维导图总结
https://www.processon.com/view/link/610420f01e0853746618739d
2026-04-09
消灭重复代码的最佳实践
代码重复本身不可怕,可怕的是漏改或改错。消灭重复代码,降低改动可能引入的风险。 学习笔记:https://time.geekbang.org/column/article/228964 工厂模式 + 模板方法 消除 if else 和重复代码假设要开发一个购物车下单的功能,针对不同用户进行不同处理: 普通用户需要收取运费,运费是商品价格的 10%,无商品折扣; VIP 用户同样需要收取商品价格 10% 的快递费,但购买两件以上相同商品时,第三件开始享受一定折扣; 内部用户可以免运费,无商品折扣。 我们的目标是实现三种类型的购物车业务逻辑,把入参 Map 对象(Key 是商品 ID,Value 是商品数量),转换为出参购物车类型 Cart。 原始代码12345678910111213141516171819202122232425262728//购物车@Datapublic class Cart { //商品清单 private List<Item> items = new ArrayList<>(); //总优惠 ...
公告
👋 你好,我是褚成志,一名专注于云原生与后端架构的工程师。
热爱 Java、Kubernetes、Linux、Redis、Spring 等技术领域,持续探索 AGI 与智能化运维的边界。
这里记录我的技术思考与实践总结,欢迎交流!
热爱 Java、Kubernetes、Linux、Redis、Spring 等技术领域,持续探索 AGI 与智能化运维的边界。
这里记录我的技术思考与实践总结,欢迎交流!