jsp之九大內建對象與四大域對象__js

來源:互聯網
上載者:User
一,什麼是內建對象?

在jsp開發中會頻繁使用到一些對象,如ServletContext HttpSession PageContext等.如果每次我們在jsp頁面中需要使用這些對象都要自己親自動手建立就會特別的繁瑣.SUN公司因此在設計jsp時,在jsp頁面載入完畢之後自動幫開發人員建立好了這些對象,開發人員只需要使用相應的對象調用相應的方法即可.這些系統建立好的對象就叫做內建對象.

在servlet程式中,如果開發人員希望使用session對象,必須通過request.getSession()來得到session對象;而在jsp程式中,開發中可直接使用session(系統幫我們建立好的session對象的名字就叫session)調用相應的方法即可,如:session.getId(). 二,九大內建對象到底是哪九大呢?

內建對象名          類型request       HttpServletRequestresponse       HttpServletResponseconfig         ServletConfigapplication    ServletContextsession        HttpSessionexception      Throwablepage           Object(this)out            JspWriterpageContext    PageContext 
三,解析幾個內建對象 1)out對象對象,物件類型是JspWriter類,相當於帶緩衝的PrintWriter(不帶緩衝)

PrintWriter:write("內容")           直接向瀏覽器輸出內容

JspWriter:writer("內容")            向jsp緩衝區寫出內容

JspWriter當滿足以下條件時之一時,緩衝區的內容寫出:

a,緩衝區滿了

b,重新整理緩衝區

c,關閉緩衝區

d,jsp頁面執行完畢 2)pageContext對象

pageContext的物件類型是PageContext,叫jsp的內容物件.

pageContext作用:可以擷取其他八個內建對象

//樣本:pageContext.getOut();pageContext.getServletConfig()
使用情境:在自訂標籤時會頻繁使用到PageContext對象;或者是定義一個方法需要用到多個對象時,傳一個pageContext對象就能解決問題.
四,JSP中四大域對象 分類:

ServletContext     context域HttpServletRequet  request域HttpSession        session域     --前三種在學習Servlet時就能接觸到PageContext        page域 --jsp學習的
域對象的作用:儲存資料,擷取資料,共用資料. 儲存資料:

pageContext.setAttribute("內容");//預設儲存到page域pageContext.setAttribute("內容",域範圍常量);//儲存到指定域中//四個域常量PageContext.PAGE_SCOPEPageContext.REQUEST_SCOPEPageContext..SESSION_SCOPEPageContext.APPLICATION_SCOPE
擷取資料:

pageContext.getAttribute("內容");

pageContext.getAttribute("name",域範圍常量);//自動在四個域中搜尋資料 pageContext.findAttribute("內容");//在四個域中自動搜尋資料,順序:page域->request域->session域->application域(context域) 域作用範圍:

page域:    只能在當前jsp頁面使用                (當前頁面)request域: 只能在同一個請求中使用               (轉寄)session域: 只能在同一個會話(session對象)中使用  (私人的)context域: 只能在同一個web應用中使用            (全域的)
五,總結

堅持每天學一點新技術,堅持寫寫部落格,這就是今天部落格的總結!Fighting,bighuan!



相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.