Spring的AOP
AOP的基本概念
关于面向切面编程的一些术语:
切面(Aspect): 切面用于组织多个Advice,Advice放在切面中定义。
连接点(Joinpoint): 程序执行过程中明确的点,如方法的调用,或者异常的抛出。在Spring AOP中,连接点总是方法的调用。
增强处理(Advice): AOP框架在特定的切入点执行的增强处理。处理有"around"、"before"和"after"等类型
切入点(Pointcut): 可以插入增强处理的连接点。简而言之,当某个连接点满足指定要求时,该连接点将被添加增强处理,该连接点也就变成了切入点。
配置流程
- 加入jar包
- 在配置文件中加入aop的命名空间
xmlns:aop="http........"
- 配置文件中加入配置
<aop:aspectj-autoproxy></aop:aspectj-autoproxy>
- 使用
@Component
和@Aspect
注解
- 5种通知
- @before
- @after(方法发生异常也执行)
- @AfterReturning(返回通知, 在方法返回结果之后执行)
- @AfterThrowing(异常通知, 在方法抛出异常之后)
- @Around(环绕通知, 围绕着方法执行)
@before(“execu(private int 包路径.方法名(参数类型))”)
@Pointcut("")