怎么解决Spring Boot 的Aspect不起作用?

切面那个类的代码是这样的

@Aspect
@Component
public class FormAspect {

    @Pointcut("execution(public * com.repair.controller.app.FormController.saveOrUpdate())")
    public void pointcut() {
    }

    @After("pointcut()")
    public void after(){
        System.out.println("after");
    }

    @Before("pointcut()")
    public void before(){
        System.out.println("before");
    }

    @AfterReturning(value = "pointcut()",returning = "result")
    public void afterReturning(Object result){
        System.out.println("afterReturning" + result);
    }
}

依赖我也添加了

<dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-aop</artifactId>
        </dependency>

定义切点的那个方法 saveOrUpdate(),我也有注明是public的

@RequestMapping(value = "/saveOrUpdate")
    @ResponseBody
    public ServerResponse saveOrUpdate(Form form){
        // mycode
        return serverResponse;
    }

但是就没有进入我定义的切点,没起作用。各位大神这是怎么回事?

阅读 194
评论 3月23日提问
    1 个回答
    @EnableAspectJAutoProxy
    

    这个aop配置开启了么 ?


    改成这样试试呢 ?

    @Pointcut("execution(* com.repair.controller.app.FormController.saveOrUpdate(..))")
    
    评论 赞赏 3月23日
      撰写回答

      登录后参与交流、获取后续更新提醒