学习swoft的第三天_AOP切面
Posted baozi-tudou
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了学习swoft的第三天_AOP切面相关的知识,希望对你有一定的参考价值。
AOP切面
文档中是这么说的
好像除了说AOP是一种面向切面编程以外 也没有说什么
不过在AOP实现中 又说道aop的主要作用是在不侵入原有代码的情况下添加新的功能
其实如果你了解Java的话就会知道,切面的概念在Java中是很常用的,这里的切面跟Java中的应该差不多
还有就是aop跟中间件有点像
如果你用过tp 或者laravel 框架 里面有中间件的概念,中间间最多的用处是用来做权限检查等操作,中间件可以在路由中使用可以在控制器中使用,如果路由或控制器中添加有中间件 则在执行控制器方法之前 要先执行此控制器,这是前置中间件
然后回到切面
切面有几个概念
advice 通知 就是你要在切面执行的代码块
Pointcut切点 就是引入代码块的位置
aspect 切面 由切点和通知组成
切面类的声明
在切面的声明中 有三种定义切点的方法
PointBean 定义目标类切点,被指定的类的所有方法都要执行切面 -- 相当于中间件指定控制器 控制器中所有方法都会执行此切面
PointAnnotation 定义 注解类 切点,所有使用对应注解的方法均会通过该切面类代理
PointExecution 定义目标类方法 也就是 运行到指定方法时 会执行切面通知 -- 相当于中间件指定方法 只有指定方法会执行此切面
通知类型 就是在什么时间执行此切面
以上是关于学习swoft的第三天_AOP切面的主要内容,如果未能解决你的问题,请参考以下文章