AOP编程,即面向切面编程,AOP允许你运行时期在想要的地方插入逻辑。
AOP的基本概念
切面(Aspect):类似于OOP中的Class,一个Aspect存放一个系统功能的所有逻辑;在ApplicationContext中aop:aspect来配置;
连接点(Joinpoint):程序执行过程中的某一事件,如方法被调用时、抛出异常时;
切入点(Pointcut):它是一个表达式,用于确定哪些类的哪些函数需要插入横切逻辑;它只精确到函数,究竟要在函数执行的哪个阶段插入横切逻辑,这就由通知的类型决定;
通知(Advice):具体的横切逻辑;一般有四种Advice:
前置通知(Before Advice)
后置通知(After Advice)
返回通知(After Return Advice)
环绕通知(Around Advice)
抛出异常后通知(After Throwing Advice)
下面我已我在项目中的一个小例子来展示AOP编程的便捷与高效
在项目中,经常会遇到判断是否登录的操作,比如支付,订阅某个课程,或看自己的历史记录,先登录进去才能看到这些信息。
而情形又有以下不同(以订阅某个课程为例):
1,点击订阅,弹出登录对话框,登录完成,登录对话框关闭,页面留到点击订阅页面,继续订阅或其他操作
2,点击订阅,弹出登录对话框,登录完成,订阅成功
3,点击订阅,弹出登录对话框,登录取消
一般的思路是...
有点忙,未完待续
回归主题,显上代码
还需要建立
使用方法展示: