- 相關(guān)推薦
JSP內置response對象的實(shí)習方法
response對象的作用是處理HTTP連接信息,如cookie、HTTP文件頭信息等,它有很多功能是和request對象相匹配的。它的重要性相對不如request對象、application對象、session對象,該對象所實(shí)現的方法如下:
1. void addCookie( Cookie cookie ) ;
添加一個(gè)Cookie對象,保存客戶(hù)端信息。當用戶(hù)訪(fǎng)問(wèn)某個(gè)站點(diǎn)時(shí),可以使用addCookie()方法添加一個(gè)Cookie對象,并將它發(fā)送到客戶(hù)端,保存到客戶(hù)端操作系統的某個(gè)特定目錄下面,用來(lái)保存客戶(hù)端的特定信息。當該用戶(hù)再次訪(fǎng)問(wèn)同一個(gè)站點(diǎn)時(shí),瀏覽器會(huì )自動(dòng)將這個(gè)Cookie對象發(fā)送回服務(wù)端,調用request對象的getCookies()方法可以獲得所有存在的Cookie對象,getCookies()方法的返回值是一個(gè)數組。Cookie對象對于不同的用戶(hù)來(lái)說(shuō)都是專(zhuān)有的。它的使用方法如下:
或:
2. void addDateHeader( String name, long value ) ;
添加一個(gè)日期類(lèi)型的HTTP頭信息,覆蓋同名的HTTP頭信息。
3. void addHeader( String name, String value ) ;
添加一個(gè)HTTP頭,覆蓋同名的舊HTTP頭。addHeader()方法的作用是添加HTTP文件頭信息,這些信息將會(huì )傳到客戶(hù)端,發(fā)送特定的HTTP文件頭信息,可以控制客戶(hù)端和服務(wù)器端的連接,例如,可以讓客戶(hù)端的瀏覽器每隔一分鐘就刷新當前頁(yè)面。如果同名的HTTP頭文件已經(jīng)存在,那么原來(lái)的HTTP文件頭的值會(huì )被覆蓋。
它的使用方法如下:
1、利用response對象禁止使用代理服務(wù)器緩存
2、利用response對象設定應答的MIME類(lèi)型及附件
4. void addIntHeader( String name, int value ) ;添加一個(gè)整型的HTTP頭,覆蓋同名的舊HTTP頭。
5. boolean containsHeader( String name ) ;判斷指定的HTTP頭是否存在。
6. String encodeRedirectURL( String url ) ;對sendRedirect()方法使用的URL進(jìn)行編碼。
7. String encodeURL( String url ) ;將URL予以編碼,回傳包含session ID的URL。
8. void flushBuffer() ;強制把當前緩沖區的內容發(fā)送到客戶(hù)端。
9. int getBufferSize() ;取得以kb為單位的緩沖區大小。
10. String getCharacterEncoding() ;獲取響應的字符編碼格式。
11. String getContentType() ;獲取響應的類(lèi)型。
12. Locale getLocale() ;獲取響應的Locale對象。
13. ServletOutputStream getOutputStream() ;返回客戶(hù)端的輸出流對象。
14. PrintWriter getWriter() ;獲取輸出流對應的writer對象。
15. boolean isCommitted() ;判斷服務(wù)器端是否已經(jīng)將數據輸出到客戶(hù)端。
16. void reset() ;清空buffer中的所有內容。
17. void resetBuffer() ;情況buffer中所有的內容,但是保留HTTP頭和狀態(tài)信息。
18. void sendError( int xc, String msg ) ; void sendError( int xc ) ;
發(fā)送錯誤,包括狀態(tài)碼和錯誤信息,例如505:服務(wù)器內部錯誤,404:網(wǎng)頁(yè)找不到的錯誤等。它的使用方法如下:
19. void sendRedirect( String locationg ) ;把響應發(fā)送到另外一個(gè)位置進(jìn)行處理。它的功能和動(dòng)作指令的功能一模一樣,就是向目標程序傳遞HTTP參數不是很方便。在使用sendRedirect()方法前,必須要確保JSP程序沒(méi)有任何可見(jiàn)的輸出被送往客戶(hù)端。這和動(dòng)作指令的使用條件是一樣的。它的使用方法如下:
上面的JSP代碼段使當前頁(yè)面重定向到網(wǎng)址:http://127.0.0.1:8080/test/error.html。
還可以使用response對象重定向方法傳送程序文件:
上面的JSP代碼段使得當前頁(yè)面定向到地址:http://127.0.0.1:8080/test/ virus.exe。這時(shí)候,客戶(hù)端會(huì )彈出一個(gè)對話(huà)框,提示用戶(hù)是否需要下載virus.exe程序,如果用戶(hù)確認,那么瀏覽器會(huì )將virus.exe程序下載,并保存在用戶(hù)指定的目錄下面。
上面的JSP代碼段同樣實(shí)現了重定向的功能,不過(guò)沒(méi)有使用sendRedirect()方法,而是使用setHeader()方法,向客戶(hù)端的瀏覽器發(fā)送HTTP文件頭——Location,瀏覽器接到這個(gè)HTTP文件頭以后,就會(huì )自動(dòng)打開(kāi)Location所指定的新的URL地址。這也就是重定向了當前網(wǎng)頁(yè)了。
20. void setBufferSize( int size ) ;設置以kb為單位的緩沖區大小。
21. void setCharacterEncoding( String charset ) ;設置響應使用的字符編碼格式。
22. void setContentLength( int length ) ;設置響應的BODY長(cháng)度。
23. void setContentType( String type ) ;設置響應的類(lèi)型。
24. void setDateHeader( String name, long value ) ;設置指定名稱(chēng)的Data類(lèi)型的HTTP頭的值。
25. void setHeader( String name, String value ) ;設置指定名稱(chēng)的HTTP頭的值。
26. void setIntHeader( String name, int value ) ;設置指定名稱(chēng)的int類(lèi)型的HTTP頭的值。
27. void setStatus( int xc ) ;設置響應狀態(tài)碼,新值會(huì )覆蓋當前值。
【JSP內置response對象的實(shí)習方法】相關(guān)文章:
關(guān)于javascript對象之內置和對象Math的使用方法10-08
Javascript內置核心對象教程09-04
關(guān)于 response方法的javascript asp教程第六課09-01
播音主持對象感的練習方法05-05
關(guān)于Javascript對象屬性方法匯總08-24
javascript中String對象的slice()方法09-27
php內置變量的操作教程09-07