spring MVC中controller失效

很久沒有編程了,最近配置了一個springMVC的項目,結果controller失效了,任何路徑都不攔截,嘔死我了。。。web

 

結果發現是springMVC配置處出了問題,springMVC的配置有兩種:spring

 

一種是:編程

 1 <bean
 2         class="org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter">
 3         <property name="messageConverters">
 4             <list>
 5                 <bean
 6                     class="org.springframework.http.converter.StringHttpMessageConverter">
 7                     <property name="supportedMediaTypes">
 8                         <list>
 9                             <value>text/plain;charset=UTF-8</value>
10                         </list>
11                     </property>
12                 </bean>
13             </list>
14         </property>
15     </bean> 

這種配置方法能夠 防止@responseBody返回視圖出現亂碼,因此手動配置Bean,它不能和 <mvc:annotation-driven />一塊兒使用 mvc

 

另外一種:app

 1 <mvc:annotation-driven /> post

 

以前的項目中我用第一種方法配置,項目能夠正常運行,不會報錯,可是換了一臺電腦後,就會出現本文開始提到的問題。spa

解決方法就是,用第二種方法配置便可。code

爲何會這樣,我也不知道。orm

 

還有一種狀況就是攔截路徑問題:blog

1 <form action="/login" method="post">
2 <div>
3 登陸名:<input type="text" name="Uname" />
4 密碼:<input type="text" name="Upassword" />
5 <input type="submit" value="登陸" />
6 </div>
7 </form>

這樣默認的攔截路徑就是:/login

1  <form action="./login" method="post">
2  <div>
3  登陸名:<input type="text" name="Uname" />
4  密碼:<input type="text" name="Upassword" />
5  <input type="submit" value="登陸" />
6 </div>
7  </form>

這樣默認的攔截路徑就是:工程名/發出請求頁面所在路徑/login

若是控制器裏面攔截路徑這麼寫:

@RequestMapping("/login")
    public String checkLogin(){
}

controller的攔截路徑爲:工程名/login

@RequestMapping("**/login")
    public String checkLogin(){
}

controller的攔截路徑爲:工程名/發出請求頁面所在路徑/login

 

若是頁面請求路徑和攔截路徑不同就會報,404錯誤,找不到。。。

 

初學者的煩惱呀。。。

相關文章
相關標籤/搜索