springBoot统一响应类型3.5.3版本

前言:

通过实践而发现真理,又通过实践而证实真理和发展真理。从感性认识而能动地发展到理性认识,又从理性认识而能动地指导革命实践,改造主观世界和客观世界。实践、认识、再实践、再认识,这种形式,循环往复以至无穷,而实践和认识之每一循环的内容,都比较地进到了高一级的程度。

简单回顾:全阶段

第一阶段:统一响应的简单应用

第二阶段:统一响应的起源

第三阶段:统一响应实体的起源

第四阶段:统一响应实体的面向对象优化

第五阶段:全局异常响应

正片:

第六阶段:全局响应

java 复制代码
@Slf4j
@ControllerAdvice
public class GlobalApiResultHandler implements ResponseBodyAdvice<Object> {

    @Override
    public boolean supports(MethodParameter returnType, Class<? extends HttpMessageConverter<?>> converterType) {
        return true;
    }

    @Override
    public Object beforeBodyWrite(Object body,
                                  MethodParameter returnType,
                                  MediaType selectedContentType,
                                  Class<? extends HttpMessageConverter<?>> selectedConverterType,
                                  ServerHttpRequest request,
                                  ServerHttpResponse response) {
        /**
         * 因为异常响应返回的是一个ApiResult,会导致重复
         * 所以使用一个判断,如果是ApiResult的,强转换,减少重复
         */
        log.warn("操作" + body);
        if (body instanceof ApiResult){
            return (ApiResult) body;
        }

        return ApiResultUnit.success(body);
    }
}

六大阶段

第一阶段:简单运用

第二阶段:起源

第三阶段:基础实体类

第四阶段:实体加工类(工具类)

第五阶段:全局异常响应

第六阶段:全局成功响应

相关推荐
cfm_291410 分钟前
单例模式详解
java
我叫张土豆20 分钟前
本体论、DDD、SDD、TDD:AI 编程时代的四层认知栈
java·人工智能
白远山33 分钟前
家政服务家政社区派单实战:调度系统架构设计与实现指南
java·开发语言·小程序·架构·需求分析
海南java第二人39 分钟前
从诞生到回收:JVM对象生命周期与垃圾回收全链路解析
java
SL_staff1 小时前
JVS-Logic:从页面配置工具到企业级业务逻辑中枢的技术演进
java·算法·全栈
DevRay1 小时前
Java 21虚拟线程深度实战:告别线程池焦虑,百万并发吞吐量直接翻倍(原理+代码+避坑)
java·开发语言
陌シ未央ゞ1 小时前
基于BM25算法和RRF实现的混合索引(java版)
人工智能·spring boot·后端·算法
forestsea1 小时前
从零构建 Java 智能体 RAG 系统:Milvus 向量数据库实战指南
java·数据库·milvus
lifewange1 小时前
VSCode怎么运行java
java·ide·vscode
用户094248568031 小时前
第10章:OpenJDK异常体系、栈轨迹与错误诊断入门
java·jvm