学习swoft的第三天_AOP切面

AOP切面

文档中是这么说的

 

 好像除了说AOP是一种面向切面编程以外 也没有说什么

不过在AOP实现中 又说道aop的主要作用是在不侵入原有代码的情况下添加新的功能

 

 

 

 其实如果你了解Java的话就会知道,切面的概念在Java中是很常用的,这里的切面跟Java中的应该差不多

还有就是aop跟中间件有点像

如果你用过tp 或者laravel 框架 里面有中间件的概念,中间间最多的用处是用来做权限检查等操作,中间件可以在路由中使用可以在控制器中使用,如果路由或控制器中添加有中间件  则在执行控制器方法之前 要先执行此控制器,这是前置中间件

然后回到切面

切面有几个概念

advice 通知 就是你要在切面执行的代码块

Pointcut切点 就是引入代码块的位置

aspect 切面 由切点和通知组成

 

 

 

 

 

 

切面类的声明

在切面的声明中 有三种定义切点的方法

PointBean 定义目标类切点,被指定的类的所有方法都要执行切面 -- 相当于中间件指定控制器  控制器中所有方法都会执行此切面 

PointAnnotation  定义 注解类 切点,所有使用对应注解的方法均会通过该切面类代理

PointExecution 定义目标类方法 也就是 运行到指定方法时 会执行切面通知 -- 相当于中间件指定方法 只有指定方法会执行此切面

 

 

 

通知类型 就是在什么时间执行此切面 

 

 

 

 

 

 

 

posted @   包子心的土豆  阅读(250)  评论(0编辑  收藏  举报
编辑推荐:
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
阅读排行:
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 25岁的心里话
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
点击右上角即可分享
微信分享提示