servlet處理http響應
設定相應內容的型別,mime型別
什麼是mime型別:
告訴瀏覽器,伺服器傳送回去的資料型別是什麼,客戶端啟動相應的應用程式處理相應內容
response.setcontenttype("text/html")
通過相應頭設定mime型別
response.setheader("content-type","text/html;charset=utf-8")
charset=utf-8表示瀏覽器在解析內容,採用utf-8,類似於
自動重新整理功能
response.setheader("refresh","2;index.jsp"); 兩秒以後跳轉到index
控制資料無法快取
response.setheader("pragma","no-cache");
response.setheader("cache-control","no-cache")
設定過期時間
response.setheader("expires",system.currenttimemillis()*24*3600*1000)
設定訊息體
tomcat預設響應客戶端解析的時候編碼集是iso8859-1
printwriter out = response.getwriter( );
1、out.print()
2、out.write()
print和write的區別
共同點:兩者都不會重新整理頁面,只在原來的頁面上寫資料。兩個方法都是重寫了writer類的write方法。
不同點:print可以將各種不同的資料轉換為字串輸出。write只能操作字元,字元陣列,字串。
輸出中文到瀏覽器
設定內容在傳輸的過程中編碼格式為utf-8
設定相應編碼集
response.setcontenttype("text/html;charset=utf-8")
"content-type","text/html;charset=utf-8")
response.setcharacterencoding("utf-8");
outputstream out = response.getoutputstream(); //獲取輸出流物件
將字串轉換為位元組陣列,再傳輸(以二進位制的方式傳輸)
通過字元流操作二進位制的檔案,有可能出現內容的丟失。
請求重定向
1、response.sendredirect("index.jsp");
2、 response.setstatus(302);
response.setheader("location","index.jsp");
總結1、重定向的狀態碼是302,表示資源被移走,重新請求新的資源
2、重定向是客戶端發起的兩次請求
3、呼叫sendredirect方法,可以不用設定狀態碼
注意:請求如果是從頁面傳送過來,就必須新增工程名
不管是js提交,還是超連結,重定向,都要加上專案名
在請求派發裡邊,斜槓就表示當前工程,請求派發預設呼叫dopost方法
使用Servlet處理HTTP響應
傳送http響應資訊 設定響應狀態行 狀態行分為http協議 狀態碼和狀態描述三個部分 狀態描述與狀態碼直接相關 http協議由伺服器確定 關鍵是設定狀態碼 http狀態碼 100 199 表示資訊性 標示客戶端應該採取的其他動作,請求正在進行。200 299 表示客戶請求成功。300 399 表示...
使用servlet處理http請求
1 http請求包括請求行,請求頭,空行,和訊息體。2 get post提交方式區別 特徵get方法 post方法 提交資料型別 文字文字 二進位制文字 提交資料長度 不超過255個字元 沒有限制 提交資料可見性 作為url位址的一部分顯示在遊覽器位址列 作為請求的訊息體,不可見 提交資料快取 快取...
Servlet處理HTTP請求(3)
請求派發的實現 呼叫servletrequest物件的方法 getrequestdispatcher path 方法返回給定路徑的requestdispatcher物件 getnameddispatcher name 返回某個名稱的servlet的requestdispatcher物件 reques...