使用spring aop遇到的坑

1.aop 切点配置无误但只对控制器无效。

检测你的aop开启配置是否放在了spring配置文件中,如果是请把它移到mvc配置文件中。

我们知道当spring项目使用了spring mvc时,项目是存在两个应用上下文的,或者说是容器,一个是spring上下文,一个是spring mvc上下文。

spring 上下文中管理的是spring配置文件中自动扫描的或者声明的那些bean。

spring mvc 上下文中管理的是spring mvc配置文件中自动扫描的或者声明的那些bean。

另外最重要的是spring mvc项目启动时mvc配置先与spring配置被加载。所以当spring配置检测到aop开启时,只能去动态代理那些即将被spring容器管理的bean,而那些springmvc容器内的控制器已经被装载到容器中了,再去动态代理就不合适了,可能会造成容器中的bean重复。

以上纯属个人理解,如果理解有误请告诉我。

猜你喜欢

转载自www.cnblogs.com/hihtml5/p/8927017.html