spring boot切面execution表达式添加多个包路径

问题描述

在Spring Boot中,如果你想为多个包中的方法创建一个切面,你可以在@Pointcut注解中使用||操作符来指定多个包。


解决方案:

java 复制代码
// 定义切入点为两个包中的任意方法
@Pointcut("execution(* com.example.package1..*.*(..)) || execution(* com.example.package2..*.*(..))")
public void myPointcut() {
}

整个表达式可以分为五个部分:

  1. execution(): 表达式主体,可以扫描控制层的接口、某个注解、或者其他需要扫描的类。
  2. 第一个*号:表示返回类型,*号表示所有的类型,比如public,protect,private等。
  3. 包名:表示需要拦截的包名,后面的两个句点表示当前包和当前包的所有子包,com.demo.service.impl包、子孙包下所有类的方法。
  4. 第二个*号:表示子包名,*号表示所有子包。
  5. 第三个*号:表示类名,*号表示所有子包下的类。
  6. *(..):最后这个星号表示方法名,*号表示所有的方法,后面括弧里面表示方法的参数,两个句点表示任何参数。
相关推荐
java1234_小锋9 小时前
SpringBoot为什么要禁止循环依赖?
java·数据库·spring boot
ShiJiuD66688899913 小时前
springboot基础篇
java·spring boot·spring
白宇横流学长16 小时前
基于Spring Boot的校园考勤管理系统的设计与实现
java·spring boot·后端
_waylau17 小时前
“Java+AI全栈工程师”问答02:Spring Boot 自动配置原理
java·开发语言·spring boot·后端·spring
i220818 Faiz Ul17 小时前
高校教务|教务管理|基于springboot+vue的高校教务管理系统(源码+数据库+文档)
java·数据库·vue.js·spring boot·论文·毕设·高校教务系统
贫民窟的勇敢爷们17 小时前
SpringBoot多环境配置全解+配置优先级管控
java·spring boot·后端
霸道流氓气质18 小时前
Spring @Scheduled 单线程陷阱:当设备重连阻塞了整个定时任务体系
java·spring boot·spring
欢璃19 小时前
表白墙案例
java·开发语言·jvm·spring boot·spring·maven·mybatis
代码漫谈19 小时前
Jetty vs Tomcat:Spring Boot应用场景最佳选择
spring boot·tomcat·jetty
贫民窟的勇敢爷们19 小时前
SpringBoot整合MyBatis-Plus极致实战,高效实现数据库CRUD与分页条件查询
数据库·spring boot·mybatis