一、HTTP協定
1. 請求消息:用戶端發送給伺服器端的資料,資料格式:
1. 請求行 2. 請求頭 3. 請求空行 4. 請求體
2. 響應消息:伺服器端發送給用戶端的資料,資料格式:
響應行
|-. 組成:協定/版本 響應狀态碼 狀态碼描述
|- 響應狀态碼:伺服器告訴用戶端浏覽器本次請求和響應的一個狀态。
響應頭:
|- 格式:頭名稱: 值
Content-Type:伺服器告訴用戶端本次響應體資料格式以及編碼格式
Content-disposition:伺服器告訴用戶端以什麼格式打開響應體資料
- 響應空行
- 響應體:傳輸的資料
二、Response
1. 重定向方式一:
response.setStatus(302);
// 擷取路徑
String path = request.getContextPath();
response.setHeader("location",path+ "/ServletB");
2. 重定向方式二:
String path = request.getContextPath();
response.sendRedirect(path +"/ServletB");
三、ServletContext
1. ServletContext:代表整個web應用,可以和程式的容器(伺服器)來通信
request.getServletContext().setAttribute("username","Lili");
.
2. 從另一個servlet擷取
四、檔案下載下傳案例
1. 建立一個檔案c.txt,放到web同目錄下,也可以放在自定義的resources資源下
2. 編寫servlet
3. 測試
補充:
狀态碼:
- 1xx:伺服器就收用戶端消息,但沒有接受完成,等待一段時間後,發送1xx多狀态碼
- 2xx:成功。代表:200
- 3xx:重定向。代表:302(重定向),304(通路緩存)
-
4xx:用戶端錯誤。
代表:
* 404(請求路徑沒有對應的資源)
* 405:請求方式沒有對應的doXxx方法
- 5xx:伺服器端錯誤。代表:500(伺服器内部出現異常)
Learn to live:
要讓别人喜歡你,你就得先喜歡别人,對他人感興趣的事情感興趣,才能使他人對自己感興趣,這就是人與人的交往(卡耐基《人性的弱點》)