一次@Controller引發的血案
明眼人是不是一眼就看到問題所在了?
如果沒有發現問題的,請跟著我的思路一起混亂下去
啟動工程
沒報錯,說明其他的結構沒問題
打開瀏覽器,輸入http://localhost:8080/XXXXX/login
誒?沒有正確顯示頁面?
開啟混亂之旅
首先,最先想起的是component-scan的配置問題,因為這種情況居大多數,很可能路徑匹配不一致
但確認了一下,沒問題,又仔細一個一個字母對比了一下,還是沒問題
哎?難道是mappinghandler的使用有問題,沒有使用annotation method的mappinghandler?
仔細一看,沒問題啊,是正確的:org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerMapping
這是怎麽回事呢難道是annotation-config沒有開啟?
mvc配置中找了下,真沒有欸?加上試試,還是不好使,這是為什麽呢
又看了下application.xml,哦其中已經加了annotation-config了,應該不是這個問題
這樣會不會是requestmappinghandler用的有問題呢,換成default的試試?
換了一下,換成mvc:annotation-driven,再嘗試,還hi是不好用
不行了,不應該啊,整個過程就是掃描bean,handleMapping,我的controller已經加了requestMapping了啊,為什麽不好用呢, 是不是工程設置有問題
project -> properties 看了一下Java build path中的設定,誒?還是對啊,沒錯啊
project -> properties 不信邪,又確認了一下project facets,還是對啊,是dynamic web module啊
這時候就有點蒙圈了,想不出來,百度吧,
搜,“RequestMappingHandlerMapping 匹配不到” 沒什麽有意義的結果。。。
等等等,搜了一大堆,搜到了一個在mapping中添加<property name="useSuffixPatternMatch" value="false"/>這個參數的
試了一下,還是不好用
我靠,崩潰了啊,什麽情況,扭曲了我的spring mvc觀念啊
休息一下,去個廁所,冷靜一下
回來後有確認了一邊,還是沒看出問題所在,接著尋求網絡的幫助吧
搜著搜著,突然之間看到一個網頁,上面@controller被特別標註了
臥槽,我是不是沒加controller,確認了一下,果然額,魔障了
一次@Controller引發的血案