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

学习笔记:黑马程序员JavaWeb开发教程(2025.4.9)

12.16 异常处理

定义一个类,加上注解@RestControllerAdvice,即定义了一个全局异常处理器

再方法上加上注解@ExceptionHandler,通过注解当中的value属性来指定捕获那个类型的异常

完成Filter、interceptor、异常处理代码实操

Filter

    Filter里面的放行就是这样写的,没有解释底层

    将Request和Rsponse强转为HTTP协议的请求对象,是为了用其中的方法,像获取url,获取请求头中的令牌可以分别直接使用Request.getRequestURL(),和Request.getHeader(token)方法获取即可

    第二步里面的return要写到if里面,要不然直接后面的语句都没办法执行

    判断令牌是否存在,是判断令牌是否为空,可以使用StringUtils.hasLength()方法

    使用阿里巴巴的fastjson中的.toJSONString()方法需要把fastjson库导入xml文件中

    第四步,转成json时,用的是JSON.toJSONString()

    response.setContentType(MIME)设置发送到客户端的响应的内容类型,在getWrite()之前可以设置,之后不行,response.getWriter()获取输出流,使用writer(json)将字符串响应给浏览器

    解析token就是用的JwtUtils.parseJWT这个方法

开始过滤器没有生效,是因为Spring Boot 应用中@WebFilter默认是不被扫描的,需要在项目启动类上添加 @ServletComponentScan 注解, 表示对 Servlet 组件扫描。

Interceptor

    在令牌不存在,返回错误信息时,转为JSON调用给的是阿里巴巴的toJSONString,后面设置返回类型,返回信息时,都是用的response的方法

异常处理

http://www.xdnf.cn/news/562501.html

相关文章:

  • PT5F2307触摸A/D型8-Bit MCU
  • 微软 Build 2025:开启 AI 智能体时代的产业革命
  • 学习Android(十二)Thread
  • Flannel后端为UDP模式下,分析数据包的发送方式(二)
  • IDEA推送到gitlab,jenkins识别,然后自动发布到需要的主机(流水线)
  • STM32之串口通信蓝牙(BLE)
  • 量子计算与云计算的融合:技术前沿与应用前景
  • 什么是国密、密评、商密
  • Token类型与用途详解:数字身份的安全载体图谱
  • 量子计算模拟:从理论到实践
  • OpenCv高阶(十五)——EigenFace人脸识别
  • 【C语言】复习~数组和指针
  • JS手写代码篇---手写Promise
  • 【软件设计师】知识点简单整理
  • 数学建模,机器决策人建模
  • HTTPS和HTTP区别
  • 693SJBH基于.NET的题库管理系统
  • 用Recommenders,实现个性化推荐
  • 基于OpenCV的物体跟踪:CSRT算法
  • 自托管互联网广播电台Airstation
  • Docker网关冲突导致容器启动网络异常解决方案
  • Linux `cat` 命令深度解析与高阶应用指南
  • C++ - 仿 RabbitMQ 实现消息队列(3)(详解使用muduo库)
  • 物流项目第六期(短信微服务——对接阿里云第三方短信服务JAVA代码实现、策略模式 + 工厂模式的应用)
  • bitbar环境搭建(ruby 2.4 + rails 5.0.2)
  • 【寻找Linux的奥秘】第七章:虚拟地址空间
  • 第16天-使用Python Pillow库常见图像处理场景
  • javaweb-html
  • mapbox进阶,手写放大镜功能
  • C语言之预处理和宏