Spring 使用AspectJ实现AOP前置通知

本文介绍了AOP(面向切面编程)的概念,包括切面、连接点、切入点和通知等术语,并详细讲解了如何在Spring中利用AspectJ通过注解实现AOP的前置通知。通过创建切面类,定义通知方法并设置切入点表达式,最后配置Spring容器进行对象管理,从而实现方法执行前的功能增强。
摘要由CSDN通过智能技术生成

什么是AOP?

AOP面向切面编程,是基于动态代理的。AOP就是动态代理的规范化,把动态代理的实习按步骤和方式都定义好了,让开发人员用一种统一的方式使用动态代理。
Aspect Orient Programming:面向切面编程
Aspect:切面。给目标类增加的功能就是切面。添加的日志信息和事务都是切面。
切面的最大特点就是:非业务方法,和我们的业务功能没有关系,可以独立使用的。
 怎么理解面向切面编程:
(1)需要在分析项目时,找出切面。
(2)合理的安排切面的执行时间(是在目标方法前执行,还是在目标方法后执行)。
(3)合理的安排切面执行的位置(在哪个类,哪个方法增加增强功能)。
术语:
(1)Aspect:切面,表示要给业务方法增强的功能,就是一堆代码,这堆代码完成某一个功能。切面是非业务功能(日志,事务,统计信息,参数检查,权限验证)
(2)JoinPoint:连接点,连接业务方法和切面的位置,就是某个类中的业务方法。
(3)PointCut:切入点,指多个连接点方法的结合。是多个方法,这些方法都要加入切面的功能。
(4)目标对象:要给哪个类增加方法
(5)Advice:通知,表示切面功能的执行时间(切面在什么时候执行,是在方法之前还是在方法之后)
一个切面有3个关键的要素
(1)切面的功能代码:切面要干什么
(2)切面的执行位置,使用pointcut表示
(3)切面的执行时间:在目标方法之前还是在目标方法之后,用advice表示
AOP的实现:是一个规范,是对动态代理的一个规范化。
AOP的技术实现框架:
1.Spring:Spring实现了AOP规范,主要在事务处理时使用了AOP。项目开发中很少使用Spring的AOP实现。
2.aspectJ:一个开源的专门做AOP的框架。Spring框架中集成了aspectJ框架,通过Spring就能使用aspectJ框架的功能了。aspectJ框架实现AOP有两种方式:
(1)使用xml配置文件
(2)使用注解(我们在项目中要做AOP功能,一般都使用注解),aspectJ有5个注解。
学习aspectJ框架的使用:
(1)切面的执行时间,也就是advice通知。在aspectJ框架中是使用注解来表示的。
(1.1&#

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值