切入点表达式

按类匹配和按方法匹配详解

1.按类匹配:匹配到的Java类中全部方法作为目标连接点,使用within关键字。

  • 匹配到某个类
    <aop:pointcut expression="within(com.jnvc.ssm.aop.Singer)" id="singerPnt"></aop:pointcut>
  • 匹配到当前包下的所有类
    <aop:pointcut expression="within(com.jnvc.ssm.aop.*)" id="singerPnt"></aop:pointcut>
  • 匹配到包下及子包下的类
    <aop:pointcut expression="within(com.jnvc.ssm..*)" id="singerPnt"></aop:pointcut>

2.按方法匹配:匹配到的方法作为目标连接点,使用execution关键字。

语法格式如下:
execution([权限修饰符] 返回值类型 [类名] 方法名([参数类型列表]))
说明:[]括起来表示可以省略的部分,各部分都支持使用通配符 “*” 来匹配全部
参数类型列表支持以下两种通配符:

  • “*” :代表一个任意类型的参数;
  • “..”:代表零个或多个任意类型的参数。

点击查看代码

<aop:pointcut expression="execution(String com.jnvc.ssm.aop.Singer.song(String,String))" id="singerPnt">
</aop:pointcut>
  • 任意返回类型
    execution(* com.jnvc.ssm.aop.Singer.song(String))
  • 任意返回类型下指定包下任意类
    execution(* com.jnvc.ssm.aop.*.song(String))
  • 任意返回类型下指定包下任意类任意方法
    execution(* com.jnvc.ssm.aop.*.*(String))
  • 任意返回类型下指定包或子包下任意类任意方法任意参数
    execution(* test..*.*(..))

Original: https://www.cnblogs.com/cbqg/p/v.html
Author: 茶饼七怪
Title: 切入点表达式

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/593239/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

  • Win10命令行快速安装JDK环境

    主要内容 用scoop包管理自动下载安装jdk,自动配置环境,一键安装(把里面命令跑一遍就行了) 需要工具 Powershell(自带可) https://docs.microso…

    Java 2023年5月30日
    065
  • nginx rewrite基本用法

    rewrite支持使用 if,set,正则,文件和目录判断 正则表达式匹配: 符号 说明 = 等值的比较 ~ 与指定正则表达式模式匹配,区分字符大小写 ~* 与指定正则表达式模式匹…

    Java 2023年5月30日
    074
  • 《软技能-代码之外的生存指南》读书笔记

    《软技能-代码之外的生存指南》读书笔记 写在前面 最近项目相对松了一些,想静下心来看一些书,买了些DDD的书,记得这本书也是程序员必读的书之一,就凑单也买了纸质的来看看~ 抄录一些…

    Java 2023年6月6日
    080
  • EasyExcel的基本使用

    官方网址:https://www.yuque.com/easyexcel/doc/easyexcel 应用场景 数据导入:减少录入工作量 数据导出:统计信息归档 数据传输:异构系统…

    Java 2023年6月13日
    079
  • Duplicate entry ** for key **

    Cause: com.mysql.jdbc.exceptions.jdbc4.MySQLIntegrityConstraintViolationException: Duplica…

    Java 2023年6月5日
    065
  • 对数器

    概述 对数器是通过用大量测试数据来验证算法是否正确的一种方式。在算法笔试的时候,我们经常只能确定我们写出的算法在逻辑上是大致正确的,但是谁也不能一次性保证绝对的正确。特别是对于一些…

    Java 2023年6月7日
    0121
  • 获取字符串中倒数第二个特定字符的位置

    开发场景中,有时候会遇到取文件路径中的 文件夹名称,这些文件路径往往是 http 格式的,比如下面这样: https://img2020.cnblogs.com/blog/2413…

    Java 2023年6月6日
    0104
  • WWDC2016-session401-CodeSign大改版

    自动签名机制和手动签名都明显看起来很好用。 自动签名有log 手动签名有具体的错误提示信息。 session401 Xcode Signing. 亲,你的眼睛好大 相声演员吗? Y…

    Java 2023年5月30日
    076
  • 从-99打造Sentinel高可用集群限流中间件

    接上篇Sentinel集群限流探索,上次简单提到了集群限流的原理,然后用官方给的 demo 简单修改了一下,可以正常运行生效。 这一次需要更进一步,基于 Sentinel 实现内嵌…

    Java 2023年6月13日
    056
  • SpringBoot进阶教程(六十七)RateLimiter限流

    在上一篇文章nginx限流配置中,我们介绍了如何使用nginx限流,这篇文章介绍另外一种限流方式—RateLimiter。 在早期的计算机领域,限流技术(time li…

    Java 2023年6月8日
    079
  • SpringBoot + Spring Cloud Eureka 服务注册与发现

    什么是Spring Cloud Eureka Eureka是Netflix公司开发的开源服务注册发现组件,服务发现可以说是微服务开发的核心功能了,微服务部署后一定要有服务注册和发现…

    Java 2023年5月30日
    094
  • Spring AOP 报错

    org.springframework.test.context.support.AbstractTestContextBootstrapper getDefaultTestExe…

    Java 2023年6月7日
    071
  • electron 应用开发优秀实践

    vivo 互联网前端团队-Yang Kun 一、背景 在团队中,我们因业务发展,需要用到桌面端技术,如离线可用、调用桌面系统能力。什么是桌面端开发?一句话概括就是: 以 Windo…

    Java 2023年6月15日
    067
  • 接了个变态需求:给定一个接口,要用户自定义动态实现并上传热部署,怎么搞?

    近期开发系统过程中遇到的一个需求,系统给定一个接口,用户可以自定义开发该接口的实现,并将实现打成jar包,上传到系统中。系统完成热部署,并切换该接口的实现。 这里以一个简单的计算器…

    Java 2023年6月15日
    059
  • Java实现两种队列(数组和链表)

    @date 2022-09-13 17:50*/public class QueueLinked{ private static class Node{E item;Node ne…

    Java 2023年6月15日
    072
  • spring IOC的理解,原理与底层实现?

    从总体到局部 控制反转:理论思想,原来的对象是由使用者来进行控制,有了spring之后,可以把整个对象交给spring来帮我们进行管理DI(依赖注入):把对应的属性的值注入到具体的…

    Java 2023年6月8日
    070
亲爱的 Coder【最近整理,可免费获取】👉 最新必读书单  | 👏 面试题下载  | 🌎 免费的AI知识星球