8.Spring AOP相关术语的回顾

AOP 本质:在不改变原有业务逻辑的情况下增强横切逻辑,横切逻辑代码往往是权限校验代码、⽇志代
码、事务控制代码、性能监控代码。
 

1 AOP 相关术语

1.1 业务主线
在讲解 AOP 术语之前,我们先来看⼀下下⾯这两张图,它们就是第三部分案例需求的扩展(针对这些扩
展的需求,我们只进⾏分析,在此基础上去进⼀步回顾 AOP ,不进⾏实现)
 

 

 上图描述的就是未采⽤AOP思想设计的程序,当我们红⾊框中圈定的⽅法时,会带来⼤量的重复劳动。

程序中充斥着⼤量的重复代码,使我们程序的独⽴性很差。⽽下图中是采⽤了 AOP 思想设计的程序,它
 
把红框部分的代码抽取出来的同时,运⽤动态代理技术,在运⾏期对需要使⽤的业务逻辑⽅法进⾏增
 
 

1.2 AOP 术语

   连接点:⽅法开始时、结束时、正常运⾏完毕时、⽅法异常时等这些特殊的时机点,我们称之为连接 点,

项⽬中每个⽅法都有连接点,连接点是⼀种候选点 切⼊点:指定 AOP 思想想要影响的具体⽅法是哪些,描述感兴趣的⽅法
Advice 增强:
第⼀个层次:指的是横切逻辑
第⼆个层次:⽅位点(在某⼀些连接点上加⼊横切逻辑,那么这些连接点就叫做⽅位点,描述的是具体
的特殊时机)
Aspect 切⾯:切⾯概念是对上述概念的⼀个综合
Aspect 切⾯ = 切⼊点 + 增强
= 切⼊点(锁定⽅法) + ⽅位点(锁定⽅法中的特殊时机) + 横切逻辑
众多的概念,⽬的就是为了锁定要在哪个地⽅插⼊什么横切逻辑代

2 SpringAOP的代理选择

Spring 实现 AOP 思想使⽤的是动态代理技术
默认情况下, Spring 会根据被代理对象是否实现接⼝来选择使⽤ JDK 还是 CGLIB 。当被代理对象没有实现
任何接⼝时, Spring 会选择 CGLIB 。当被代理对象实现了接⼝, Spring 会选择 JDK 官⽅的代理技术,不过
我们可以通过配置的⽅式,让 Spring 强制使⽤ CGLIB

3 SpringAOP的配置⽅式

Spring AOP 配置中,也和 IoC 配置⼀样,⽀持 3 类配置⽅式。
第⼀类:使⽤ XML 配置
第⼆类:使⽤ XML+ 注解组合配置
第三类:使⽤纯注解配置
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值