偷偷摘套内射激情视频,久久精品99国产国产精,中文字幕无线乱码人妻,中文在线中文a,性爽19p

簡單介紹JSP的對(duì)象和范圍屬性

開發(fā) 后端
本文介紹的是JSP的對(duì)象和范圍屬性,主要是指開發(fā)中的。希望本文對(duì)大家有幫助,一起來看。

JSP技術(shù)使用Java編程語言編寫類XML的tags和scriptlets,來封裝產(chǎn)生動(dòng)態(tài)網(wǎng)頁的處理邏輯。網(wǎng)頁還能通過tags和scriptlets訪問存在于服務(wù)端的資源的應(yīng)用邏輯。

JSP頁面中的對(duì)象,包括用戶創(chuàng)建的對(duì)象(例如,JavaBean對(duì)象)和JSP的隱含對(duì)象,都有一個(gè)范圍屬性。范圍定義了在什么時(shí)間內(nèi),在哪一個(gè)JSP頁面中可以訪問這些對(duì)象。例如,session對(duì)象在會(huì)話期間內(nèi),可以在多個(gè)頁面中被訪問。application對(duì)象在整個(gè)Web應(yīng)用程序的生命周期中都可以被訪問。在JSP中,有4種范圍,如下所示。

一、page范圍

具有page范圍的對(duì)象被綁定到j(luò)avax.servlet.jsp.PageContext對(duì)象中。在這個(gè)范圍內(nèi)的對(duì)象,只能在創(chuàng)建對(duì)象的頁面中訪問。可以調(diào)用pageContext這個(gè)隱含對(duì)象的getAttribute()方法來訪問具有這種范圍類型的對(duì)象(pageContext對(duì)象還提供了訪問其他范圍對(duì)象的getAttribute方法),pageContext對(duì)象本身也屬于page范圍。

當(dāng)Servlet類的_jspService()方法執(zhí)行完畢,屬于page范圍的對(duì)象的引用將被丟棄。page范圍內(nèi)的對(duì)象,在客戶端每次請(qǐng)求JSP頁面時(shí)創(chuàng)建,在頁面向客戶端發(fā)送回響應(yīng)或請(qǐng)求被轉(zhuǎn)發(fā)(forward)到其他的資源后被刪除。

二、request范圍

具有request范圍的對(duì)象被綁定到j(luò)avax.servlet.ServletRequest對(duì)象中,可以調(diào)用request這個(gè)隱含對(duì)象的getAttribute()方法來訪問具有這種范圍類型的對(duì)象。在調(diào)用forward()方法轉(zhuǎn)向的頁面或者調(diào)用include()方法包含的頁面中,都可以訪問這個(gè)范圍內(nèi)的對(duì)象。要注意的是,因?yàn)檎?qǐng)求對(duì)象對(duì)于每一個(gè)客戶請(qǐng)求都是不同的,所以對(duì)于每一個(gè)新的請(qǐng)求,都要重新創(chuàng)建和刪除這個(gè)范圍內(nèi)的對(duì)象。

三、session范圍

具有session范圍的對(duì)象被綁定到j(luò)avax.servlet.http.HttpSession對(duì)象中,可以調(diào)用session這個(gè)隱含對(duì)象的getAttribute()方法來訪問具有這種范圍類型的對(duì)象。JSP容器為每一次會(huì)話,創(chuàng)建一個(gè)HttpSession對(duì)象,在會(huì)話期間,可以訪問session范圍內(nèi)的對(duì)象。

四、application范圍

具有application范圍的對(duì)象被綁定到j(luò)avax.servlet.ServletContext中,可以調(diào)用application這個(gè)隱含對(duì)象的getAttribute()方法來訪問具有這種范圍類型的對(duì)象。在Web應(yīng)用程序運(yùn)行期間,所有的頁面都可以訪問在這個(gè)范圍內(nèi)的對(duì)象。

下面我們通過幾個(gè)簡單的例子,來看一下這4種范圍對(duì)象的應(yīng)用。

1.測試page范圍

test1.jsp

  1. <%  
  2. pageContext.setAttribute("name","zhangsan");  
  3. out.println("test1.jsp: ");  
  4. out.println(pageContext.getAttribute("name"));  
  5. out.println("<p>");  
  6. pageContext.include("test2.jsp");  
  7. %> 

test2.jsp

  1. <%  
  2. out.println("test2.jsp: ");  
  3. out.println(pageContext.getAttribute("name"));  
  4. %> 

訪問test1.jsp,將看到如下的輸出:

test1.jsp: zhangsan

test2.jsp: null

說明保存在pageContext對(duì)象中的屬性具有page范圍,只能在同一個(gè)頁面中被訪問。

2.測試request范圍

修改test1.jsp和test2.jsp,如下所示。

test1.jsp

  1. <%  
  2. request.setAttribute("name","zhangsan");  
  3. out.println("test1.jsp: ");  
  4. out.println(request.getAttribute("name"));  
  5. out.println("<p>");  
  6. pageContext.include("test2.jsp");  
  7. %> 

test2.jsp

  1. <%  
  2. out.println("test2.jsp: ");  
  3. out.println(request.getAttribute("name"));  
  4. %> 

訪問test1.jsp,將看到如下的輸出:

test1.jsp: zhangsan

test2.jsp: zhangsan

說明保存在request對(duì)象中的屬性具有request范圍,在請(qǐng)求對(duì)象存活期間,可以訪問這個(gè)范圍內(nèi)的對(duì)象。將

pageContext.include("test2.jsp");

這一句注釋起來,先訪問test1.jsp,再訪問test2.jsp,可以看到如下輸出:

test2.jsp: null

這是因?yàn)榭蛻舳碎_始了一個(gè)新的請(qǐng)求。

3.測試session范圍

修改test1.jsp和test2.jsp,如下所示。

test1.jsp

  1. <%  
  2. session.setAttribute("name","zhangsan");  
  3. %> 

test2.jsp

  1. <%  
  2. out.println("test2.jsp: ");  
  3. out.println(session.getAttribute("name"));  
  4. %> 

先訪問test1.jsp,然后在同一個(gè)瀏覽器窗口中訪問test2.jsp,可以看到如下輸出:

test2.jsp: zhangsan
 
說明保存在session對(duì)象中的屬性具有session范圍,在會(huì)話期間,可以訪問這個(gè)范圍內(nèi)的對(duì)象。

如果我們?cè)谠L問完test1.jsp后,關(guān)閉瀏覽器,重新打開瀏覽器窗口,訪問test2.jsp,將看到如下輸出:

test2.jsp: null

這是因?yàn)榭蛻舳伺c服務(wù)器開始了一次新的會(huì)話。

4.測試application范圍

修改test1.jsp和test2.jsp,如下所示。

test1.jsp

  1. <%  
  2. application.setAttribute("name","zhangsan");  
  3. %> 

test2.jsp

  1. <%  
  2. out.println("test2.jsp: ");  
  3. out.println(application.getAttribute("name"));  
  4. %> 

先訪問test1.jsp,然后關(guān)閉瀏覽器,再打開瀏覽器窗口,訪問test2.jsp,可以看到如下輸出:

test2.jsp: zhangsan

說明保存在application對(duì)象中的屬性具有application范圍,在Web應(yīng)用程序運(yùn)行期間,都可以訪問這個(gè)范圍內(nèi)的對(duì)象。

希望通過本文的介紹,能夠給大家?guī)韼椭?/p>

【編輯推薦】

  1. JSP頁面的五種跳轉(zhuǎn)方法
  2. jsp開發(fā)技術(shù)應(yīng)用的29個(gè)注意事項(xiàng)
  3. JSP應(yīng)用開發(fā)的背景及特點(diǎn)
  4. jsp速度優(yōu)化七種方法
  5. 詳細(xì)介紹JSP技術(shù)的兩種架構(gòu)模型
責(zé)任編輯:于鐵 來源: 互聯(lián)網(wǎng)
相關(guān)推薦

2009-07-02 13:51:05

對(duì)象和范圍屬性

2009-06-30 13:38:37

SERVLET和JSP

2009-07-02 10:13:47

ASP和JSPJSP頁面

2009-07-02 12:56:01

JSP技術(shù)

2009-07-03 16:21:43

2009-07-06 14:43:30

JSP元素

2009-06-30 17:26:56

JSP頁面

2009-06-29 16:48:43

內(nèi)置對(duì)象JSP

2009-07-01 11:08:14

JSP DestoryJSP Init數(shù)據(jù)庫鏈接

2009-09-09 09:36:25

Linq對(duì)象引用

2011-06-28 11:27:19

java克隆對(duì)象

2009-07-07 14:04:55

JSP入門

2009-07-07 11:38:54

jsp oracle

2009-12-24 16:46:42

ADO Connect

2009-07-29 15:07:23

Request對(duì)象的屬

2009-07-02 17:06:36

JSP中的PageEn

2009-09-02 09:44:01

JSP和JavaBea

2009-07-03 11:21:43

Servlet和JSPJSP路徑

2010-07-14 17:38:47

MIME協(xié)議

2011-06-28 10:34:54

==equals
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)