分享人:曲艳行
1.背景介绍
2.知识剖析
3.常见问题
4.解决方案
5.编码实战
6.扩展思考
7.参考文献
8.更多讨论
AOP是什么
AOP(Aspect Orient Programming),面向切面编程,面向对象编程OOP的一种补充,底层采用动态代理方式实现
面向切面编程,就是将交叉业务逻辑封装成切面,利用AOP容器的功能织入到主业务逻辑中。
交叉业务逻辑:指通用的、与主业务逻辑无关的代码,例如安全检查、事务、日志等
对于AOP这种思想,很多框架都进行了实现,spring是其中之一,Aspectj也实现了AOP,且方式更简洁方便,支持注解式开发,所以spring又将Aspectj对于AOP的实现引入到自己的框架中
在spring中使用AOP开发时,一般使用Aspectj的实现方式
切面Aspect
织入Weaving
连接点JointPoint
切入点PointCut
目标对象Target
通知Advice
顾问Advisor
前置通知
后置通知
环绕通知
异常通知
最终通知
execution(* * ..UserController.*(..))
返回值类型
方法名(参数名)
* 0至多个字符
.. 方法参数中表示任意参数,包名后表示当前包及其子包
环绕通知无效
有参数的方法无法织入通知
https://baike.baidu.com/item/Aspectj/4830848?fr=aladdin
http://blog.csdn.net/zl3450341/article/details/7673938
感谢观看,如有出错,恳请指正
BY : sweetalin