@Aspects(AOP)对spring MVC中controller不起作用的原因及解决方案
原因
Spring MVC加载的是WebApplicationContext而不是ApplicationContext,也就是说spring和springMvc使用的是不同的容器,如果只在spring的配置文件中配置了<aop:aspectj-autoproxy/>,那么AOP是不能正常在controller中起到作用的,因此需要把该配置同样配置到springMvc的配置文件中。
解决方案
1.在web.xml中找到当前使用的spring MVC的配置文件位置 
2.找到springMvc的配置文件,添加配置Aspectj的自动代理(许多造成该错误的原因都是因为只在spring的配置文件中配置了aspectj的支持) 
本文探讨了@Aspects(AOP)在SpringMVC中对Controller不起作用的问题,指出原因是SpringMVC使用WebApplicationContext而非ApplicationContext,导致AOP配置无效。文章提供了详细解决方案,包括在springMvc配置文件中添加Aspectj自动代理配置。
2825

被折叠的 条评论
为什么被折叠?



