為了便於Web開發,在JSP內部設定了一些預設的物件,這些物件不需要預先宣告就可以在指令碼和表示式中使用。內建物件也稱隱含物件。常用的內建物件有:request,response,out,session,application,pageContext,config,page和exception.這裡,我們介紹response物件。
工具/原料
Eclipse
Tomcat
一、基礎知識
response物件是將伺服器端的資料傳送到客戶端以響應客戶端的請求。
response物件實現HttpServletResponse介面,可以客戶的請求做出動態式迴應,向客戶端傳送資料,如Cookie,Http檔案頭資訊,一般是HttpServlet.Response類其子類的一個物件。
response物件常用的方法有以下幾種:
void sendRedirect(String redricetURL)
功能:將客戶端重定向到指定的URL;
void setContentType(String contentType)
功能:設定響應資料內容的格式型別;
void setContentLength(int contentLength)
功能:設定響應資料內容的長度;
void setHeader(String name,String value)
功能:設定HTTP應答報文的首部欄位和值以及頁面的自動重新整理;
void setStatus(int n)
功能:設定響應的狀態行;
ServletOutputStream getOutputStream()
功能:獲取二進位制型別的輸出流物件;
PrintWriter getWriter();
功能:獲取字元型別的輸出流物件;
void addCookie(Cookie cookie)
功能:向客戶端傳送一個Cookie
boolean isCommitted()
功能:判斷伺服器端是否已將資料輸出客戶端。
二、response物件例項
例項1:void setContentType(String type)動態響應contentType屬性;
介紹:當用戶訪問JSP頁面時,可以使用此操作動態改變contentType的屬性值;
設定響應資料型別有以下幾種:
text/html:網頁;
text/plain:純文字;
application/x-msexcel:Excel檔案;
application/msword:World檔案;
例項:建立一個setContentType.jsp頁面,改變資料型別。程式碼如下:
點選按鈕,出現如下結果:
例項2 :設定重新整理public void setHeader(String name,String value);
語法格式:
response.setHeader("Refresh","5")
功能:5秒鐘後自動重新整理本頁;
response.setHeader("Refresh","5:URL=;);
功能:5秒鐘重新整理自動跳轉到新頁面。
設定網頁上時間的顯示,程式碼如下:
注意事項
例項1中不要忘了使用request.setCharacterEncoding();設定請求的編碼方式,防止亂碼
例項2中不要忘了import java.util.*類