【Spring】—— AOP切入点表达式(*和..使用)

发布时间:2024年01月15日


切入点表达式是对要进行增强的方法的描述方式。

标准格式:
动作关键字(访问修饰符  返回值  包名.类/接口名.方法名(参数))
execution(void com.spring.dao.BookDao.update())

*和..的使用

可以使用通配符描述切入点,快速描述:

*? :单个独立的任意符号,可独立出现,也可作为前缀或后缀匹配符出现

execution(public? *? com.spring.*.UserService.find*(*))

以上可以匹配com.spring包下的任意包中的UserService类或接口所有以find开头的带有一个参数的方法,注意方法必须带参数。

..? :多个连续的任意符号,可独立出现,常用于简化包名和参数的书写

execution(public? User? com..UserService.findById(..))

以上可以匹配com包下的任意包中的UserService类或接口中所有名称为findById的方法,注意对参数无要求,可有可无。

书写规范

  • 描述切入点通常描述接口,而不是实现类
  • 访问控制修饰符采用public描述(可省略)
  • 包名书写尽量不使用..匹配,效率低,常用*做单个包描述匹配或精准匹配
  • 接口或类名采用*匹配,不对名称做具体描述,如:UserService写成*Service
  • 方法名中的名词采用*匹配,如getById写成getBy*,此处的Id可能为name、age等等。

?

文章来源:https://blog.csdn.net/Tir_zhang/article/details/135598893
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。