JSP內置對象

request對象:只要用於接收客戶端通過HTTP協議連接傳輸到服務器端的數據,在客戶端的請求中如果有參數,則該對象就有一個參數列表,它通常是HttpServletRequest的子類,起作用域就是一次request請求。

request對象主要方法:
方法
說明
Object getAttribute(String name)
返回name所指定的屬性值
void setAttribute(String name, Object obj)
設定name所指定的屬性值爲obj
void removeAttribute(String name)
刪除name所指定的屬性
java.util.Enumeration getAttributeNames()
返回request對象所有屬性的名稱集合
String getPerameter(String name)
從客戶端獲取name所指定的參數值
java.util.Enumeration getParameterNames()
從客戶端獲取所有參數名稱
String[] getPerameterValues(String name)
從客戶端獲取name所指定參數的所有值
int getServerPort()
返回服務器接受請求的端口
String getServerName()
返回服務器名稱
String getRemoteAddr()
獲取客戶端的IP地址
int getRemotePort()
獲取服務器請求端口
String getContextPath()
返回環境路徑(Web服務程序根目錄)
String getCharacterEncoding()
返回請求正文中所使用的字符編碼
void setCharacterEncoding(String chean)
設定請求正文中所使用的字符編碼
Cookis[] getCookies()
返回客戶端所有的Cookie對象
Session getSession()
返回請求相關的session對象
String getContentType()
返回請求正文的MIME類型
int getContentLength()
返回請求的Body的長度,單位爲字節

 

response對象:用於將服務器端數據發送到客戶端已響應客戶端的請求。response對象實現HttpServletResponse接口,可對客戶的請求做出動態的響應,向客戶端發送數據,如Cookie、HTTP文件頭信息等,一般是HttpServletResponse類或其子類的對象。

response的主要方法:
方法
說明
void sendRedirect(String redirectURL)
將客戶端重定向到指定的URL
void setContentType(String contentType)
設置響應數據內容的類型
void setContentLength(int contentLength)
設置響應數據內容的長度
void setHeader(String name, String value)
設置HTTP應答報文的首部字段和值及頁面的自動刷新
void setStatus(int n)
設置響應的狀態行
ServletOutputStream getoutputStream()
獲取二進制類型的輸出流對象
PrintWriter getWriter()
獲取字符類型的輸出流對象
String encodeRedirectURL(String url)
編碼指定的URL
String encodeRedirectURL(String url)
編碼指定的URL,以便向sendRedirect發送
int getBufferSize()
獲取緩衝區大小
void setBufferSize(int bufferSize) 設置緩衝區大小
void flushBuffer()
強制發送當前緩衝區的內容到緩衝區
void resetBuffer()
清除響應緩衝區中的內容
void addCookie(Cookie cookie)
向客戶端發送一個Cookie
void addHeader(String name, String value)
添加HTTP文件的頭文件
boolean isCommitted()
判斷服務器是否已將數據輸出客戶端

設置刷新:
reponse.setHeader("Reflush", "5");    // 5秒後自動刷新本頁面
reponse.setHeader("Reflush", "5; URL=http://www.baidu.com");    // 5秒後跳轉到新頁面

session(會話)對象:該對象是類javax.servlet.Httpsession的一個對象。
訪問session中的數據
    在JSP中不需要特別設置程序代碼來建立用戶session,當程序使用了session對象時,便會自動建立session,下面這行語句是在session中新增變量數據的方式:
    session.setAttribute("變量名稱", 變量內容);     // 變量內容可爲字符串或者其他對象類型
    在session中設置變量數據:(當前瀏覽器不同網頁都可用)
    <%
        session.setAttribute("id", "StringValue");    //設置字符串
        session.setAttribute("expire", new Date(86400*10));    //設置日期
        session.setAttribute("level", new Integer(3));    設置整數
    %> 
    
    返回session中的變量:
        session.getAttribute("變量名稱");
    返回session中的所有變量名稱:
        session.getAttritubeNames();
    清除session中的變量:
        session.removeAttribute("變量名稱");
    結束session:
        session.invalidate();
 其他session對象的常用犯法:
方法
說明
getCreationTime()
返回session建立的時間,返回值爲從格林威治時間1970.1.1開始算起到session建立時的毫秒數
getlastAccessedTime()
返回客戶端對服務器端提出請求至處理session中數據最後的時間,若爲新建立的session則返回-1
getMaxInactiveInterval()
返回客戶端未對session提出請求而session開始停滯到自動消失之間所間隔的時間返回值以毫秒爲單位
intNew()
返回布爾值表示是否爲新建的session
SetMaxInactiveInterval(int interval)
設置客戶端未對session提出請求而session開始停滯到自動消失之間所間隔的時間爲interval,以秒爲單位

application對象:對服務器而言,該對象可視爲一個所有聯機用戶共享的數據存取區,application中的變量數據在程序設置其值是被初始化,而當關閉網頁服務器,或者超過預設時間而未有任何用戶聯機時將自動消失。

除了系統預設的application變量外,要在application中建立application中建立變量數據必須使用setAttribute()方法.
    建立application變量的語法如下:
    application.setAttribute("變量名稱", 變量內容);
      <%
        application.setAttribute("id", "IDName");    //設置字符串
        application.setAttribute("expire", new Date(86400*10));    //設置日期

        application.setAttribute("level", new Integer(3));    設置整數
    %> 
    返回application中的變量:
    語法格式如下:
    application.getAttribute("變量名稱");
    如:
    <%
        object objID = application.getAttribute("id");
        out.println(id);
    %>
    刪除application變量:
    語法格式如下:
    application.removeAttribute("變量名稱");
    返回所有application變量:
    返回application中所有變量名稱的幾何對象,其數據類型爲Enumeration,其語法格式如下:
    application.getAttributeNames();
    如:
    <%
        Enumeration all = application.getAttributeNames();
    %>
使用application對象取得信息(服務器或者網頁中的信息):
方法
說明
getMajorVersion()
返回服務器解釋引擎所支持的最新Servlet API版本
getMinorVersion()
返回服務器解釋引擎所支持的最低Servlet API版本
getMinmeType(String file)
返回文件file的文件格式與編碼方式
getRealPath(String path)
返回虛擬路徑path的真是路徑
getServerInfo()
返回服務器解釋引擎的信息

pageContext對象:
    pageContext對象衍生於javax.servlet.jsp.PageContext類 。
    主要方法有:
方法
說明
Object getAttribute(String name)
返回當前頁面內的name變量
void setAttribute(String name, Object obj)
設定當前頁面內name變量爲obj
void removeAttribute(String name)
刪除當前頁面的name變量
HttpSession getSession()
取得頁面的session對象
ServletContext getServletContext()
返回ServletContext對象這個對象對所有的頁面都是共享的
javax.servlet.ServletRequest getRequest()
該方法的返回對象時JSP內置對象request,主要用於獲取客戶端的信息

config對象:
config對象是類javax.servlet.ServletConfig的一個對象,它標識Servlet的配置。Config對象主要用來取得服務器的配置信息,在JSP頁面通過JSP Container進行初始化時被傳遞。使用Config對象,在修改需要在Web服務器中處理的變量時,不需要逐一修改JSP文件,而只需修改響應屬性文件的內容,這樣就打打簡化了網絡維護工作,而且能夠避免由於忘記修改一些文件二造成的錯誤,其主要方法有:
方法
說明
String getInitParameter(String name)
返回所指定的初始參數
java.util.Enumeration getInitParameterNames()
返回所有初始化參數
ServletContext getServletContext()
返回Servlet相關的上下文對象
String getServletName()
返回Servlet名稱

page對象:
page對象代筆了正在運行的由JSP文件產生的類對象(不常用)。page對象指當前JSP程序本身的對象,有點類似類中的this。

exception對象:
exception對象時類java.lang.Throwable的一個對象,是爲JSP提供用於處理程序運行時錯誤的異常對象,可以配合page對象一起使用。
主要方法有:
方法
說明
String getMessage()
返回錯誤信息
String getLocalizedMessage()
取得本地語系的錯誤提示信息
void printStackTrace()
以標準錯誤的形式輸出一個錯誤和錯誤的堆棧
String toString()
該方法以字符串形式返回一個對異常的描述
Throwable fillInStackTrace()
重寫錯誤的堆棧





 
發佈了32 篇原創文章 · 獲贊 8 · 訪問量 4萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章