切入点表达式

1
2
3
4
5
6
7
8
9
10
11
12
/*
*作者:呆萌老师
*☑csdn认证讲师
*☑51cto高级讲师
*☑腾讯课堂认证讲师
*☑网易云课堂认证讲师
*☑华为开发者学堂认证讲师
*☑爱奇艺千人名师计划成员
*在这里给大家分享技术、知识和生活
*各种干货,记得关注哦!
*vx:it_daimeng
*/

  

切入点表达式:

1、切入点表达式:对指定的方法进行拦截,并且生成代理表达式。
表达式语法:

execution([修饰符] 返回值类型 包名.类名.方法名(参数))

execution( public void com.test.service.impl.UsersService.add() )

2、表达式不同写法
1.匹配指定方法

<aop:pointcut expression="execution( public void com.test.service.impl.UsersService.add())" id="pt"/>`

2.默认 public 可以省略

<aop:pointcut expression="execution( void com.test.service.impl.UsersService.add())" id="pt"/>

3.匹配任何返回值

<aop:pointcut expression="execution( * com.test.service.impl.UsersService.add())" id="pt"/>`

4.参数列表可以使用 * , 表示可以是任何的数据类型,但必须有参数

<aop:pointcut expression="execution( * com.test.service.impl.UsersService.add(*))" id="pt"/>`

5.参数列表可以使用 … 表示有无参数均可,有参数可以是任意类型

<aop:pointcut expression="execution( *com.test.service.impl.UsersService.add(..))" id="pt"/>`

6.使用…来表示当前包,及其子包

<aop:pointcut expression="execution( * com..UsersService.add(..))" id="pt"/>`

7.类名可以使用*号,表示任意类

<aop:pointcut expression="execution( * com..*.add(..))" id="pt"/>`

8.类名也可以使用 * 加后缀,表示这个后缀的所有类

<aop:pointcut expression="execution( * com..*Service.add(..))" id="pt"/>

9.方法名可以使用*号,表示任意方法

<aop:pointcut expression="execution( * com..*.*(..))" id="pt"/>`

10.全通配方式execution( * …* ( … ) )

<aop:pointcut expression="execution(public * *(..))" id="pt"/>

11.拦截所有save开头的方法

<aop:pointcut expression="execution(* save*(..))" id="pt"/>

12.多个表达式

| <aop:pointcut expression="execution(* 包名.类名.方法名()) || execution(* 包名.类名(不同的类).方法名())" id="pt"/> <aop:pointcut expression="execution(* 包名.类名.方法名()) or execution(* 包名.类名(不同的类).方法名())" id="pt"/> 

13.取非值

<aop:pointcut expression="!execution(* 包名.类名.方法名())" id="pt"/> 
<aop:pointcut expression=" not execution(* 包名.类名.方法名())" id="pt"/>
posted @   呆萌老师  阅读(16)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· winform 绘制太阳,地球,月球 运作规律
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· 上周热点回顾(3.3-3.9)
点击右上角即可分享
微信分享提示