javaee spring aop 切入点表达式

这篇具有很好参考价值的文章主要介绍了javaee spring aop 切入点表达式。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

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

表达式语法:

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

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

2、表达式不同写法

1.匹配指定方法

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

2.默认 public 可以省略

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

3.匹配任何返回值

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

12.多个表达式

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

13.取非值文章来源地址https://www.toymoban.com/news/detail-691527.html

13 <aop:pointcut expression="!execution(* 包名.类名.方法名())" id="pt"/> <aop:pointcut expression=" not execution(* 包名.类名.方法名())" id="pt"/>

到了这里,关于javaee spring aop 切入点表达式的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • ETF场内基金:AI量化投资最佳切入点(数据篇)

    原创文章第77篇,专注“个人成长与财富自由、世界运作的逻辑, AI量化投资”。 关于量化的基础知识,前面说得差不多了。 后面要开始实战。 量化的细分市场很多,如下图所示: 再从风险收益来看,从基金到加密货币,从“保守”到“激进”。 这里指的保守,当然是“主

    2024年01月21日
    浏览(51)
  • spring AOP中pointcut表达式详解

    📢📢📢📣📣📣 哈喽!大家好,我是「奇点」,江湖人称 singularity。刚工作几年,想和大家一同进步🤝🤝 一位上进心十足的【Java ToB端大厂领域博主】!😜😜😜 喜欢java和python,平时比较懒,能用程序解决的坚决不手动解决😜😜😜 ✨ 如果有对【java】感兴趣的【小可

    2024年02月13日
    浏览(40)
  • javaee jstl表达式

    jstl是el表达式的扩展 使用jstl需要添加jar包

    2024年02月16日
    浏览(28)
  • javaee el表达式

    EL一共11个内置对象,无需创建即可以使用。这11个内置对象中有10个是Map类型的,最后一个是pageContext对象。 pageScope requestScope sessionScope applicationScope param; paramValues; header; headerValues; initParam; cookie; pageContext; 域内置对象一共有四个:

    2024年02月16日
    浏览(29)
  • JavaEE,EL表达式与jstl标签库

            主要作用:更方便获取数据;         ${} 合并了 获取加输出         1. 可以获取作用域对象中的数据。         2. 底层使用的是反射,在使用的时候可以通过键名即可获取对应的值。         3. 简化了在jsp页面中使用%%获取域对象数据的方式。  

    2024年02月06日
    浏览(36)
  • 【SpringBoot应用篇】【AOP+注解】SpringBoot+SpEL表达式基于注解实现权限控制

    Spring 表达式语言 SpEL 是一种非常强大的表达式语言,它支持在运行时查询和操作对象图。 它提供了许多高级功能,例如方法调用和基本的字符串模板功能。 表达式语言给静态Java语言增加了动态功能。 Spring 表达式语言最初是为 Spring 社区创建的,它拥有一种受良好支持的表

    2024年02月20日
    浏览(43)
  • JDK1.8新特性(部分)【Lambda表达式、函数式接口】--学习JavaEE的day41

    day41 JDK1.8新特性简介 速度更快 - 优化底层源码,比如HashMap、ConcurrentHashMap 代码更少 - 添加新的语法Lambda表达式 强大的Stream API 便于并行 最大化减少空指针异常 - Optional Lambda表达式 简介 Lambda是一个匿名函数(方法), 允许把函数作为一个方法的参数 。利用Lambda表达式可以写出

    2024年04月25日
    浏览(36)
  • Spring:表达式语言

    Spring 表达式(Spring EL) 是一种功能强大的表达式语言,以 #{ 表达式 } 作为定界符,用于在运行时对对象进行访问和操作。通过使用 Spring 表达式达到简化开发、减少逻辑或配置的编写的目的。 Spring EL 主要可以引用 bean ,调用其属性和方法,也可以在 bean 标签中使用 value 属

    2024年02月16日
    浏览(52)
  • Spring中的SpEL表达式

    SpEL (Spring Expression Language) 是 Spring 框架中用于在运行时对对象图进行查询和操作的表达式语言。它可以在不引入 Java 代码的情况下,轻松地对对象进行值的计算、属性的读取、调用方法、访问数组和集合等。SpEL广泛应用于Spring框架的许多模块中,比如Spring MVC、Spring Data、Sp

    2024年02月15日
    浏览(47)
  • Spring表达式语言(SPEL)学习(03)

    在表达式中直接写name和getName(),这时候Expression是无法解析的,因为其不知道name和getName()对应什么意思 当表达式是基于某一个对象时,我们可以把对应的对象作为一个rootObject传递给对应的Experssion进行取值 通过指定EvaluationContext我们可以让name和getName()变得有意义,指定了Ev

    2024年02月02日
    浏览(46)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包