Spring中对Controller进行AOP切面编程无效问题解决
程序员文章站
2022-07-14 18:37:37
...
1. 问题描述
对 Controller 类进行切面编程,没有warning,没有error,一直无效。。。
2. 问题原因
怀疑切点表达式错误(其实没错),切入点表达式如下所示:
// 定义切点表达式
@Pointcut("execution(* com.wslxxy.controller.*.*(..))")
private void myPointCut() {
}
项目目录如下所示:
各种修改切点表达式,没有结果,而且觉得错。
感觉没有逻辑错误~ 那就可能是配置错误,有我不知道的什么点被忽略了。
对比一下,学习AOP时只对Dao层进行过切面编程,可能对Controller切面编程有我不知道的什么点,然后去看别人是怎么对Controller切面编程,果然有坑。
3. 错误解决
把 <aop:aspectj-autoproxy/> 从 beans.xml 移动到 spring-action.xml 中 。如下图所示:
再次启动项目,AOP对Controller切面编程生效。