servlet處理http響應

2021-07-25 14:02:52 字數 1552 閱讀 9101

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...