@Aspects(AOP)对spring MVC中controller不起作用的原因及解决方案


原因

Spring MVC加载的是WebApplicationContext而不是ApplicationContext,也就是说spring和springMvc使用的是不同的容器,如果只在spring的配置文件中配置了<aop:aspectj-autoproxy/>,那么AOP是不能正常在controller中起到作用的,因此需要把该配置同样配置到springMvc的配置文件中。

解决方案

1.在web.xml中找到当前使用的spring MVC的配置文件位置
mark

2.找到springMvc的配置文件,添加配置Aspectj的自动代理(许多造成该错误的原因都是因为只在spring的配置文件中配置了aspectj的支持)
mark

转载于:https://my.oschina.net/u/2860834/blog/822634

Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐