溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Java中JSP的pageContext對象和page對象怎么使用

發(fā)布時間:2023-01-13 10:08:27 來源:億速云 閱讀:148 作者:iii 欄目:開發(fā)技術

這篇文章主要講解了“Java中JSP的pageContext對象和page對象怎么使用”,文中的講解內容簡單清晰,易于學習與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學習“Java中JSP的pageContext對象和page對象怎么使用”吧!

    JSP pageContext對象

    pageContext 是 javax.servlet.jsp.PageContext 的實例對象。

    pageContext 對象表示整個 JSP 頁面,可以獲取或刪除以下對象的任意屬性:

    • page

    • request

    • session

    • application

    pageContext 常用的方法如下:

    • Object findAttribute (String AttributeName):按 page、request、session、application 的順序查找指定的屬性,并返回對應的屬性值。如果沒有相應的屬性,則返回 NULL

    • Object getAttribute (String AttributeName, int Scope):在指定范圍內獲取屬性值。與 findAttribute 不同的是,getAttribute 需要指定查找范圍

    • void removeAttribute(String AttributeName, int Scope):在指定范圍內刪除某屬性

    • void setAttribute(String AttributeName, Object AttributeValue, int Scope):在指定范圍內設置屬性和屬性值

    • Exception getException():返回當前頁的 Exception 對象

    • ServletRequest getRequest():返回當前頁的 request 對象

    • ServletResponse getResponse():返回當前頁的 response 對象

    • ServletConfig getServletConfig():返回當前頁的 ServletConfig 對象

    • HttpSession getSession():返回當前頁的 session 對象

    • Object getPage():返回當前頁的 page 對象

    • ServletContext getServletContext():返回當前頁的 application 對象

    示例

    使用 PageContext 對象取得不同范圍的屬性值。index.jsp 代碼如下:

    <%@ page language="java" contentType="text/html; charset=UTF-8"
        pageEncoding="UTF-8"%>
    <!DOCTYPE html>
    <html>
    <head>
    </head>
    <body>
        <%
            request.setAttribute("info", "request范圍的值");
            session.setAttribute("info", "session范圍的值");
            application.setAttribute("info", "application范圍的值");
        %>
        利用 pageContext 取出以下范圍內各值(方法一):
        <br> request 設定的值:<%=pageContext.getRequest().getAttribute("info")%>
        <br> session 設定的值:<%=pageContext.getSession().getAttribute("info")%>
        <br> application 設的值:<%=pageContext.getServletContext().getAttribute("info")%>
        <hr>
        利用pageContext取出以下范圍內各值(方法二):
        <br> 范圍1(page)內的值:<%=pageContext.getAttribute("info", 1)%>
        <br> 范圍2(request)內的值:<%=pageContext.getAttribute("info", 2)%>
        <br> 范圍3(session)內的值:<%=pageContext.getAttribute("info", 3)%>
        <br> 范圍4(application)內的值:<%=pageContext.getAttribute("info", 4)%>
        <hr>
        利用 pageContext 修改或刪除某個范圍內的值:
        <%
            pageContext.setAttribute("info", "修改request范圍的值", 2);
        %>
        <br> 修改 request 設定的值:
        <br>
        <%=pageContext.getRequest().getAttribute("info")%>
        <br>
        <%
            pageContext.removeAttribute("info");
        %>
        刪除 session 設定的值:<%=session.getAttribute("info")%>
    </body>
    </html>

    運行結果如下:

    Java中JSP的pageContext對象和page對象怎么使用

    index.jsp運行結果

    JSP page對象

    JSP page 的實質是 java.lang.Object 對象,相當于 Java 中的 this 關鍵字。

    page 對象是指當前的 JSP 頁面本身,在實際開發(fā)中并不常用。

    page 對象的常用方法如下:

    class getClass():返回當前頁面所在類

    int hashCode():返回當前頁面的 hash 代碼

    String toString():將當前頁面所在類轉換成字符串

    boolean equals(Object obj):比較對象和指定的對象是否相等

    void copy (Object obj):把對象復制到指定的對象中

    Object clone():復制對象

    示例

    下面通過一個簡單的例子來演示 page 中的方法。

    index.jsp 代碼如下:

    <%@ page language="java" contentType="text/html; charset=UTF-8"
        pageEncoding="UTF-8"%>
    <!DOCTYPE html>
    <html>
    <head>
    </head>
    <body>
        <%
            Object obj;
            obj = null;
        %>
        返回當前頁面所在類:<%=page.getClass()%>
        <br> 返回當前頁面的 hash 代碼:<%=page.hashCode()%>
        <br> 轉換成 String 類的對象:<%=page.toString()%>
        <br> page和obj比較:<%=page.equals(obj)%>
        <br> page和this比較:<%=page.equals(this)%>
    </body>
    </html>

    運行結果如下:

    Java中JSP的pageContext對象和page對象怎么使用

    感謝各位的閱讀,以上就是“Java中JSP的pageContext對象和page對象怎么使用”的內容了,經(jīng)過本文的學習后,相信大家對Java中JSP的pageContext對象和page對象怎么使用這一問題有了更深刻的體會,具體使用情況還需要大家實踐驗證。這里是億速云,小編將為大家推送更多相關知識點的文章,歡迎關注!

    向AI問一下細節(jié)

    免責聲明:本站發(fā)布的內容(圖片、視頻和文字)以原創(chuàng)、轉載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權內容。

    jsp
    AI