1.SpringAOP有两种实现方式,分别就是AspectJ与Schema
2.Schema风格
Spring默认支持的AOP方式,
基于XML的方式配置
它仅支持在运行期基于动态代理的方式将aspect织入目标代码中来实现aop,
因为运行时织入,所以对static,final修饰的方法无法动态代理,
切入点表达式默认支持AspectJ语法,同时支持SpEl语法(不知道需不需要配置)
3.AspectJ风格
需要在XML中添加<aop:aspectj-autoproxy/>来支持
基于注解的方式配置
支运行期动态代理方式织入,(默认选项)
支持编译期织入(可以对static/final修饰的方法支持)
小结:
Spring本身对AOP就已经支持了(Schema风格),同时通过对AspectJ的兼容,使SpringAOP更加强大,尤其是使用AspectJ语法进行定义切入点的方式更加简洁和强大.
参考:http://blog.csdn.net/pingnanlee/article/details/38845955
本文:https://my.oschina.net/longfong/blog/805577