AOP的主要概念和切点限制
切点:真正被增强的代码
连接点:可以被增强的代码
通知:实现增强功能的代码,包括前置,后置,异常,环绕,返回五种通知
切面:通知+切点
织入:将切面的通知应用到目标对象的过程
切点是连接点的子集
class Person{
void getA(){}
void getB(){}
void log(){}
}
Person类这些方法都可以称为连接点,不只是方法,抛出的异常也是连接点。在Spring中没有连接点的定义。
但是如果定义了一个切点@pointCut("get*")
,那么只有getA和getB方法才是切点,log不是切点。
切点通常使用表达式或者正则表示切点的集合
切点的限制(方法)
- 非private
- 非static
- 非final
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· 【自荐】一款简洁、开源的在线白板工具 Drawnix