Spring Mvc表單上傳404錯誤
阿新 • • 發佈:2018-12-11
404錯誤是找不到檔案
500是邏輯錯誤
以下是我的表單提交
<form action="${pageContext.request.contextPath }/FirstController.6b" method="post"
enctype="multipart/form-data">
上傳人<input id="name" type="text" name="name">
<input
type="submit" value="確定" />
</form>
${}EL表示式的作用是找到當前專案的路徑名
${pageContext.request.contextPath }/FirstController.6b
這句一定不能寫錯,這句代表的是指向 本專案中當前目錄下的這個玩意。
如果 只 寫成/FirstController.6b那麼他就會報錯,為什麼呢?加了/後eclipse就會在Tomcat伺服器的根目錄中查詢
結果當然就是查不著。然後程式執行到這句的時候就會去那裡找,沒有的話,就會報404找不著的錯誤。
我遇到的第二種bug
在我的web.xml也就是配置的前端控制器裡
其中<servlet> <servlet-name>springmvc</servlet-name> <servlet-class> org.springframework.web.servlet.DispatcherServlet </servlet-class> <init-param> <param-name>contextConfigLocation</param-name> <param-value>classpath:mvcConfig.xml</param-value> </init-param> </servlet> <servlet-mapping> <servlet-name>springmvc</servlet-name> <url-pattern>*.6b</url-pattern> </servlet-mapping>
<param-value>classpath:mvcConfig.xml</param-value>
classpath:表示的是類路徑,既然是在類路徑裡面 查詢,那麼一定要放在類路徑裡。
但是它的類路徑在哪裡呢?放在src下即可
否則也會出現500錯誤,為啥是500不是404,不是找不著麼?
我剛在jsp中將請求地址故意 改成錯誤的,結果發現,伺服器執行 不報錯,而頁面報錯404。
之後我又將xml,和java檔案改成 錯的,伺服器 報錯了,而頁面 報錯500。
所以我推測,在jsp/html等中找不到 檔案 是404錯誤,而在後端邏輯控制中,找不到 或 發生錯誤時,就會直接導致
控制檯 中斷 程式的邏輯執行。
而邏輯錯誤是500,所以頁面會報500的錯誤。