怎么在SpringBoot中使用Spring AOP实现接口鉴权
导读:本文共3819字符,通常情况下阅读需要13分钟。同时您也可以点击右侧朗读,来听本文内容。按键盘←(左) →(右) 方向键可以翻页。
摘要:这篇“怎么在SpringBoot中使用Spring AOP实现接口鉴权”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“怎么在SpringBoot中使用Spring AOP实现接口鉴权”文章吧。面向切面编程面向切面编程,可以将与业务无关但是需要被各个业务模块共同调用的逻辑抽取出来,以切面... ...
目录
(为您整理了一些要点),点击可以直达。面向切面编程,可以将与业务无关但是需要被各个业务模块共同调用的逻辑抽取出来,以切面的方式切入到代码中,从而降低系统中代码的耦合度,减少重复的代码。
Spring AOP是通过预编译方式和运行期间动态代理实现程序面向切面编程
AOP底层使用动态代理完成需求,为需要增加增强功能的类来生成代理类,有两种生成代理类的方式,对于被代理类(即需要增强的类),如果:
实现了接口,使用JDK动态代理,生成的代理类会使用其接口没有实现接口,
使用CGlib动态代理,生成的代理类会集成被代理类
连接点:被代理(被增强)的类中的方法
切入点:实际上需要被增强的方法
通知:要增强的逻辑代码
前置通知:在主体功能执行之前执行
后置通知:在主题功能执行之后执行
环绕通知:在主体功能执行前后执行
异常通知:在主题功能执行出现异常时执行
最终通知:主体功能无论执行是否成功都会执行
切面:切入点和切面的结合,即被增强的方法和增强的功能组成切面
注解:
@Aspect: 声明某个类是切面,编写通知、切入点
@Before: 对应前置通知
@AfterReturning: 对应后置通知
@Around: 对应环绕通知
@AfterThrowing: 对应异常通知
@After: 对应最终通知
@Pointcut: 声明切入点,标注在一个方法上可以让表达式更简洁
使用切入点表达式声明切入点
execution([权限修饰符][返回类型][类完全路径].[方法名称][参数列表类型])
execution(* com.xxx.ABC.add()),对ABC类的方法进行增强
配置接口鉴权账密
首先,编写一个注解来标识不需要鉴权
通过这个接口,我们可以在内存中生成一个token,同时也会返回给前端。之后我们在调其他接口时传入这个token进行鉴权即可。传入的位置是captcha字段
怎么在SpringBoot中使用Spring AOP实现接口鉴权的详细内容,希望对您有所帮助,信息来源于网络。