搭建springmvc項目沒掃描到mapper和service


嚴重: Servlet.service() for servlet [spring] in context with path [/springmvc-demo] threw exception
org.apache.ibatis.binding.BindingException: Invalid bound statement (not found): com.qiuj.listshow.service.UserEasyDataService.getByLoginName

 

 

根據控制台報的錯誤是說沒掃描到我的service,但是我嘗試着 如果調用service的方法放在免登陸的之后就可以掃描到,因此覺得是不是配置文件里的哪個配置順序錯了。

經過各種排列組合的嘗試,找到了。

圖中可見我的文件目錄,我是在security的配置文件里又importspring-*.xml文件的,原以為配置文件的執行順序是看到import應該是先把import走完,再接着走security的文件下面,就像我們常用的debug模式,按照順序執行,但是我原來的掃描注解的配置是在spring的配置里的,那順序應該就是看到import文件,但是不走進去,先標記,走完security文件,再接着走import的文件,導致service文件還沒掃描,就被調用了。

所以要注意配置文件的順序。

還有一種解決辦法是將security、spring、文件完全分離開,再按照順序import。

同時,

<mvc:annotation-driven />
<context:component-scan base-package="xxx"/>

先后順序也要注意。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM