Table of Contents
1. AOP介绍
AOP称为面向切面编程,它是一种编程思想,是对OOP的补充,可以进一步提高编程效率,在程序开发中主要用来解决一些系统层面上的问题,比如日志,事务,权限等待,Struts2的拦截器设计就是基于AOP的思想,是个比较经典的例子。
AOP的基本概念:
(1)Aspect(切面):通常是一个类,里面可以定义切入点和通知
(2)JointPoint(连接点):程序执行过程中明确的点,一般是方法的调用
(3)Advice(通知):AOP在特定的切入点上执行的增强处理,有before,after,afterReturning,afterThrowing,around
(4)Pointcut(切入点):就是带有通知的连接点,在程序中主要体现为书写切入点表达式
(5)Target(目标对象):就是被增强的目标类,也称之为委托类。
(6)AOP代理:AOP框架创建的对象,代理就是目标对象的加强。Spring AOP代理可以使JDK动态代理,也可以是CGLIB代理,前者基于接口,后者基于子类。
2.AOP的实现
AOP前面说过