JSP的內置對象及方法


JSP一共有9個內置對象:request、response、session、application、out、pagecontext、config、page、exception。

  1. request對象。

    resquest對象是javax.servlet.http.HttpServletRequest類的一個實例。客戶端的請求信息封裝在resquest中發送給服務器端。request的作用域是一次請求。

    請求方式:request.getMethod()

    請求的資源:request.getRequestURI()

    請求用的協議:request.getProtocol()

    請求的文件名:request.getServletPath()

    請求的服務器的IP:request.getServerName()

    請求服務器的端口:request.getServerPort()

    客戶端IP地址:request.getRemoteAddr()

    客戶端主機名:request.getRemoteHost()

  2.  

    response對象。

    response對象是javax.servlet.http.HttpServletResponse的一個實例。服務端 的相應信息封裝在response中返回。

    重定向客戶端請求 response.sendRedirect(index.jsp)

  3.  

    session對象。

    session對象是javax.servlet.http.HttpSession的一個實例。在第一個JSP頁面被裝載時自動創建,完成會話期管理。

    session對象內部使用Map類來保存數據,因此保存數據的格式為 “Key/value”。

    獲取Session對象編號 session.getId()

    添加obj到Session對象 session.setAttribute(String key,Object obj)

    獲取Session值 session.getAttribute(String key)

  4.  

    application對象。

    application對象是javax.servlet.ServletContext的一個實例。

    實現了用戶間數據的共享,可存放全局變量。它開始於服務器的啟動,直到服務器的關閉,在此期間,此對象將一直存在。

    添加obj到Application對象 application.setAttribute(String key,Object obj)

    獲取Application對象中的值 application.getAttribute(String key)

  5.  

    out 對象。

    out對象是javax.servlet.jsp.jspWriter的一個實例。用於瀏覽器輸出數據。

    輸出各種類型數據 out.print()

    輸出一個換行符 out.newLine()

    關閉流 out.close()

  6.  

    pageContext 對象。

    pageContext 對象是javax.servlet.jsp.PageContext的一個對象。作用是取得任何范圍的參數,通過它可以獲取 JSP頁面的out、request、reponse、session、application 等對象。

  7.  

    config 對象。

    config 對象是javax.servlet.ServletConfig的一個對象。主要作用是取得服務器的配置信息。通過 pageConext對象的 getServletConfig() 方法可以獲取一個config對象。

  8.  

    cookie 對象。

    cookie 對象是Web服務器保存在用戶硬盤上的一段文本。唯一的記錄了用戶的訪問信息。

    將Cookie對象傳送到客戶端 Cookie c = new Cookie(username",john"); 

    讀取保存到客戶端的Cookie response.addCookie(c)

  9.  

    exception 對象。

    exception 對象的作用是顯示異常信息,只有在包含 isErrorPage="true" 的頁面中才可以被使用。

     

    頁面一(page1.jsp)主要代碼:

     

    <%@ page errorPage="/page2.jsp" %> <% int a = 10; int b = 0; int c = a / b; // 拋出異常 %>

     

    頁面二(page2.jsp)主要代碼:

    <%@ page isErrorPage="true" %>

     

    <!-- 輸出異常信息 --> <%=exception.toString() %>

     

    在頁面一中,指定page編譯指令erroePage屬性值為page2.jsp,當除以0時,會拋出異常,頁面繼而forward到頁面二進行異常處理。

     


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM