Idea Tomcat Servlet路徑配置問題


虛擬路徑問題沒有搞清楚,折騰了好久.

總的來說:login.html(action)和loginServlet(@webServlet)的虛擬路徑相差一個/day14。同時二者在瀏覽器的訪問時,都必須加上虛擬路徑(/day14)

 

* 路徑寫法:
            1. 路徑分類
                1. 相對路徑:通過相對路徑不可以確定唯一資源
                    * 如:./index.html
                    * 不以/開頭,以.開頭路徑

                    * 規則:找到當前資源和目標資源之間的相對位置關系
                        * ./:當前目錄
                        * ../:后退一級目錄
                2. 絕對路徑:通過絕對路徑可以確定唯一資源
                    * 如:http://localhost/day15/responseDemo2        /day15/responseDemo2
                    * 以/開頭的路徑

                    * 規則:判斷定義的路徑是給誰用的?判斷請求將來從哪兒發出
                        *客戶端瀏覽器使用:需要加虛擬目錄(項目的訪問路徑) * 建議虛擬目錄動態獲取:request.getContextPath()
                            * <a> , <form> 重定向...
                        * 給服務器使用:不需要加虛擬目錄
                            * 轉發路徑

 

有兩種配置方法、

 第一種:

 

在上圖不配置項目名,只加斜杠(經過測試不加/也可以)。

 

 

注意這里login.html要跳轉到/loginServlet,

 

 

 

 

 第二種:

這里隨便起了一個/day14的虛擬路徑。

那么在login.html中訪問路徑就應該加上/day14(否則訪問會報404)

 

但是loginServlet卻不用加day14,

 

 

 login.html提交后會自動跳轉到/day14/loginServlet

 

 

常見錯誤分類:
1. 1xx:服務器就收客戶端消息,但沒有接受完成,等待一段時間后,發送1xx多狀態碼
2. 2xx:成功。代表:200
3. 3xx:重定向。代表:302(重定向),304(訪問緩存)
4. 4xx:客戶端錯誤。
* 代表:
* 404(請求路徑沒有對應的資源) (一定要去檢查瀏覽器輸入的路徑是不是與Tomcat中部署的路徑一致!!!!)
* 405:請求方式沒有對應的doXxx方法
5. 5xx:服務器端錯誤。代表:500(服務器內部出現異常)(代碼寫的有問題)


免責聲明!

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



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