当前位置: 首页 > news >正文

AspectJ中的几种常用pointcut表达式

使用介绍

  • execution(public * com.imooc..web...*(..)) 匹配哪些包下的哪些类的哪些方法
  • @annotation(com.imooc.product.aspectj.TimeCost) 匹配方法上的注解
  • @within(com.imooc.product.aspectj.TimeCost) 匹配调用方法所在的类上面的注解,就是这个方法是在哪个类上定义的
  • @target(com.imooc.product.aspectj.TimeCost) 匹配调用方法运行时所属于的类上面的注解

如果父类和子类上都标有注解,@within和@target的所得到实际注解的区别

@within @target
父类方法 父类注解 父类注解
子类不重写方法 父类注解 子类注解
子类重写方法 子类注解 子类注解

@target 会导致所有bean都生成代理类,但是有些Bean类是final的不能代理,所以会导致项目启动报错。

@Around("requestServer()")
public Object doAround(ProceedingJoinPoint proceedingJoinPoint) throws Throwable {Class<?> declaringClass = ((MethodSignature) proceedingJoinPoint.getSignature()).getMethod().getDeclaringClass();System.out.println("declaringClass: " + declaringClass);Class<?> targetClass = proceedingJoinPoint.getTarget().getClass();System.out.println("targetClass: " + targetClass);return proceedingJoinPoint.proceed();
}

此时declaringClass为父类, targetClass为子类(子类不重写方法的情况下)。

注意:proceedingJoinPoint.getThis 和 declaringClass 的区别。

参考

Spring中@within与@target的一些区别

http://www.jsqmd.com/news/572930/

相关文章:

  • `#pragma pack(1)的使用
  • Qwen3-14B效果展示:将技术需求文档自动转换为可执行测试用例
  • 万象视界灵坛实操手册:CLIP-ViT-L/14在专利附图技术特征提取中的探索
  • Windows系统入侵排查
  • 别再乱用GET传密码了!用FastAPI手把手教你构建安全的用户注册登录接口(附完整代码)
  • 很多PCIe问题查不出来,其实一开始方向就错了
  • CryptoJS不同加密模式对比:AES-CBC vs GCM在前端安全中的选择指南
  • 【无人机控制】非线性四旋翼无人机控制器实现附matlab代码
  • S2-Pro大模型Java后端集成指南:SpringBoot微服务实战
  • PyTorch 2.8镜像实战落地:教育机构AI教学平台(图文+视频+LLM)集成方案
  • 告别教材下载烦恼:国家中小学智慧教育平台电子课本解析工具如何实现3分钟高效获取
  • 3步搭建高效NTQQ机器人:LuckyLilliaBot全功能配置指南
  • 量子密钥分发B92协议:从理论到实践的简明指南
  • 小白入门”入侵检测”
  • 微信QQ防撤回神器:RevokeMsgPatcher 2.1 终极使用教程
  • 保姆级教程:在Gazebo里用UR5+RealSense D435i搞定手眼标定(附避坑代码)
  • Pspice仿真新手避坑大全:为什么你的TL431仿真总报错?可能是模型库没加对
  • 如何用大麦自动抢票工具提升抢票成功率?技术原理与实战指南
  • AI Token Platform - AI Token 中转计费平台
  • CherryStudio实战:如何用MCP协议给AI助手装上B站搜索插件?
  • 揭秘JVM创世过程之Call Stub进入Java世界的门票
  • 实测Qwen3.5推理模型:用它写代码、解逻辑题,效果到底有多强?
  • ubuntu秘钥生成PKCS1 格式秘钥
  • Gemma-3-270m多场景应用:律师合同风险点识别、条款合规性初筛案例
  • PyTorch 2.8镜像实操手册:/data盘挂载后权限配置与数据安全策略
  • 钢链数智,赋能实业——千匠网络钢铁产业电商系统,破解行业困局,激活钢铁增长新动能
  • Odoo 19成本核算避坑指南:标准成本法下差异分析、委外加工汇率风险与WIP分录丢失问题
  • 3步掌握百度网盘效率工具:全平台秒传链接解决方案
  • 如何用1000美元打造工业级六轴机械臂:Faze4开源项目的完整实践指南
  • 解锁3大智能功能:League-Toolkit让普通玩家也能玩转专业级游戏分析