Spring中对Controller进行AOP切面编程无效问题解决

博客围绕SpringMVC中AOP对Controller类进行切面编程无效的问题展开。先是描述问题,接着分析原因,怀疑切点表达式错误但实际没错,后推测是配置问题。最终通过将 <aop:aspectj-autoproxy/> 从 beans.xml 移到 spring-action.xml 中解决问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

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切面编程生效。

4. 参考文献

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值