码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • SpringMVC---统一处理异常


    统一处理异常

    Spring MVC框架在接收到请求后,会自动调用处理请求的方法,如果调用的控制器中方法抛出异常,Spring MVC会捕获到此异常对象,
    并尝试调用统一处理异常的机制,如果没有统一处理异常的机制,则会响应500错误。

    关于统一处理异常,需要自定义类,在类上添加@ControllerAdvice注解,添加此注解的类中的注解方法将可以作用于每一次处理请求的过程。

    然后,在类中添加处理异常的方法,关于此方法:

    • 访问权限:应该使用public
    • 返回值类型:参考控制器中处理请求的方法
      • 假设,需要响应某字符串到客户端,则使用String作为返回值类型,并结合@ResponseBody注解一起使用,或者,使用@RestControllerAdvice替代@ControllerAdvice,则此类中所有方法向客户端响应时,都是响应正文的
    • 方法名称:自定义
    • 参数列表:必须至少包含1个异常类型,此参数就是Spring MVC框架调用控制器的方法后捕获的异常,并且,可以按需添加HttpServletRequest、HttpServletResponse等少量指定类型的参数,不可以添加其它参数
    • 注解:必须添加@ExceptionHandler注解
      在以上统一处理异常的类中,统一处理异常的方法可以有多个(处理的异常必须不同,但允许存在继承关系),通常,
      建议在此类中添加一个能够处理任何异常的方法,避免某些异常未被处理导致响应500错误(用户不明确错误的原因,可能继续尝试错误的操作):
    @ExceptionHandler
    public String handleThrowable(Throwable e) {
        log.error("统一处理未明确处理的异常【{}】,将向客户端响应:{}", e.getClass().getName(), e.getMessage());
        return "服务器忙,请联系管理员!";
    }
    
    • 1
    • 2
    • 3
    • 4
    • 5
  • 相关阅读:
    《DevOps实践指南》- 读书笔记(二)
    Higress 基于自定义插件访问 Redis
    生产者消费者模型+仓储模型及Java自带的线程池
    常见的编码及哈希算法
    第一次使用项目管理软件进行项目资源监控,再也不用进行“抢人大战”了!
    【我的OpenGL学习进阶之旅】OpenGL的坐标系的学习笔记
    Flex & bison 学习好代码
    Nerstudio 相机优化代码理解
    1108 Finding Average (PAT甲级)
    中国1km土壤特征数据集(2010年)
  • 原文地址:https://blog.csdn.net/qq_45520124/article/details/126064859
  • 最新文章
  • 攻防演习之三天拿下官网站群
    数据安全治理学习——前期安全规划和安全管理体系建设
    企业安全 | 企业内一次钓鱼演练准备过程
    内网渗透测试 | Kerberos协议及其部分攻击手法
    0day的产生 | 不懂代码的"代码审计"
    安装scrcpy-client模块av模块异常,环境问题解决方案
    leetcode hot100【LeetCode 279. 完全平方数】java实现
    OpenWrt下安装Mosquitto
    AnatoMask论文汇总
    【AI日记】24.11.01 LangChain、openai api和github copilot
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1
正则表达式工具 cron表达式工具 密码生成工具

京公网安备 11010502049817号