SpringBoot统一功能处理,拦截器,统一数据格式,捕捉异常

 

目录

拦截器:是Spring框架提供的核心功能之一,主要用来拦截用户的请求,在指定方法前后,根据业务需要执行预先设定的代码:

自定义拦截器

统一数据格式,要包含状态码,错误信息​编辑

出现针对String类型的错误​​​​​​​

为什么要统一

统一功能来实现捕捉到异常。​编辑

@ControllerAdvice源码分析


数据结构面试:HashMap,ConcurrentHashMap,ThreadLocal要看(建议看源码)

网络:TCP,UDP,HTTP

并发编程:线程创建方式,线程的状态,锁,synchronized,volatile

数据库 基本操作,关键字,

JVM-内存结构,GC

Linux

引入拦截器的原因。

拦截器:是Spring框架提供的核心功能之一,主要用来拦截用户的请求,在指定方法前后,根据业务需要执行预先设定的代码:

(指定在哪些方法前后执行)

JDK17把之前Java的包都换为Jakarta。

指定方法:——指我们登录验证的某些方法(比如图书的增删改查),怎样可以不用动太多代码,实现这个功能

预先设定的代码:对用户是否登录进行验证

拦截器的实现分为两步:(作用维度以url为维度)

1.定义一个拦截器

2.把拦截器注册到项目中

自定义拦截器:实现HandlerInterceptor接口,并重写所有方法

拦截器的定义

自定义拦截器

/* 一级路径    能匹配/user,/book,/login,不能匹配/user/login

/** 任意级路径 能匹配 /user,/user/login,/book

/book/*      /book下的一级路径 能匹配/book/addBook,不能匹配/book/addBook

/book/**    /book下的任意级路径     能匹配/book,/book/addBook,/book/addBook/2...。

正常工作方式

用户调用->(拦截器)->控制器层(Controller)->调用服务层(Service)->数据持久层(Mapper)->数据库

1.添加拦截器后, 执⾏Controller的⽅法之前, 请求会先被拦截器拦截住. 执⾏ preHandle() ⽅法, 

这个⽅法需要返回⼀个布尔类型的值. 如果返回true, 就表⽰放⾏本次操作, 继续访问controller中的 

⽅法. 如果返回false,则不会放⾏(controller中的⽅法也不会

评论 8
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

狗哥不是甜妹

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值