本人想用 AspectJ 方式实现拦截,配置都是采用注解的方式,但失败了,拦截不到?!
spring关于注解的配置如下:
AOP的拦截类如下:(刚开始execution写的是本人项目包的controller类,后来百度说什么controller比较特殊,要用下面这样子,结果还是不行。)
@Component
@Aspect
public class Interceptor {
@Around("execution(* org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter.handle(..))")
public Object doBasicProfiling(ProceedingJoinPoint pjp) throws Throwable{
System.out.println("进入环绕通知");
Object object = pjp.proceed();//执行该方法
System.out.println("退出方法");
return object;
}
}
controller部分代码如下:
@Controller
@RequestMapping("/student")
public class UserController {
@RequestMapping("/save.do")
public void save(){
System.out.print("SUCCESS!");
}
}
做试验的时候save()方法会执行,但是没有被 interceptor 拦截到,最后只输出”SUCCESS”
是注解配置错误还是什么……弄了一天都不知所以然,求搭救 。