Spring Boot AOP

一、了解什么是AOP

1.AOP可以干嘛?

AOP可以:

  1. 统一完成登录验证
  2. 统一异常处理
  3. 统一返回的数据的格式
  4. 事务的开启和提交
  5. ......

2.为什么要有AOP

举个例子: 我们去乘坐高铁的时候需要过安检(检查乘客是否带有违禁物品),也就是在进入候车厅之前有一次,直到上车都不用再重复检查一次了.

写程序的时候也一样,我们可以把重复的环节统一用一段代码完成就行了.

例如:我们在做博客系统其中的修改个人信息,修改博客等业务之前都需要验证是否为本人操作,为了不重复写这段相同代码,我们就可以使用AOP思想,将代码统一提出来,让Spring在合适的时候自动调用这段代码就行了.

3.AOP的组成

AOP全称Aspect Oriented Programming,意思是面向切面编程.他有几个比较重要的组成:连接点,切点,切面,通知等组成.

切面:大概意思是某个功能的代码的集合

连接点:  连接点是一个比较抽象的概念,意思是在一段业务代码中,可能会插入切面的某个或者某几个地方.

切点:意思是在一段业务代码中明确会插入切面的连接点.

理联系实际解连接点和切点: 连接点就像很多的高速路口,但是你要下高速路的路口只有一个,那么那些高速路口就都可以叫做连接点,那个你要下的路口就叫做切点.

通知: 通知是切面功能的实现,规定切面要做什么,在什么时候执行的统一,通知有以下几个

  1. 前置通知(@Before): 通知在目标方法执行之前执行. 
  2. 后置通知(@After): 通知在目标方法执行完(返回)之后或者在执行目标方法抛出异常之后执行
  3. 抛出异常后的通知(@AfterThrowing): 在目标方法抛出异常之后执行.
  4. 返回后的通知()@AfterReturning): 通知在目标方法执行完(返回)执行.
  5. 环绕通知()()@Around): 通知在目标方法执行之前与执行完之后都会执行.

 二、实现AOP

  1. 添加AOP框架支持
  2. 定义切点和切面
  3. 定义通知
<-- Spring AOP框架支持 -->
<!-- https://mvnrepository.com/artifact/org.springframework.boot/spring-bo
ot-starter-aop -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-aop</artifactId>
</dependency>

 最后只要访问拦截规则下的路由(路径)就能拦截到了

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值