日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区

您的位置:首頁技術(shù)文章
文章詳情頁

ASP基礎(chǔ)入門第八篇(ASP內(nèi)建對象Application和Session)

瀏覽:729日期:2022-06-05 14:31:53

 在上一篇中作者給大家詳細介紹了 ASP 內(nèi)建對象 Response 的使用方法,在這一篇中作者將繼續(xù)給大家介紹另兩個非常實用且重要的 ASP 的內(nèi)建對象 Application 和 Session。   

在 ASP 的內(nèi)建對象中除了用于發(fā)送、接收和處理數(shù)據(jù)的對象外,還有一些非常實用的代表 Active Server 應(yīng)用程序和單個用戶信息的對象。

讓我們先來看看 Application 對象。在同一虛擬目錄及其子目錄下的所有 .asp 文件構(gòu)成了 ASP 應(yīng)用程序。我們非但可以使用 Application 對象,在給定的應(yīng)用程序的所有用戶之間共享信息,并在服務(wù)器運行期間持久的保存數(shù)據(jù)。而且,Application 對象還有控制訪問應(yīng)用層數(shù)據(jù)的方法和可用于在應(yīng)用程序啟動和停止時觸發(fā)過程的事件。
下面就讓我們一起來學(xué)習(xí) Application 對象。

一、屬性

雖然 Application 對象沒有內(nèi)置的屬性,但我們可以使用以下句法設(shè)置用戶定義的屬性也可稱為集合。

Application(" 屬性 / 集合名稱 ")= 值

我們可以使用如下腳本聲明并建立 Application 對象的屬性。

< %
Application("MyVar") = "Hello"
Set Application("MyObj") = Server.CreateObject("MyComponent")
%>

   一旦我們分配了 Application 對象的屬性,它就會持久地存在,直到關(guān)閉 WEB 服務(wù)器服務(wù)使得 Application 停止。由于存儲在 Application 對象中的數(shù)值可以被應(yīng)用程序的所有用戶讀取,所以 Application 對象的屬性特別適合在應(yīng)用程序的用戶之間傳遞信息。
二、方法

   Application 對象有兩個方法,它們都是用于處理多個用戶對存儲在 Application 中的數(shù)據(jù)進行寫入的問題

1、Lock 方法禁止其他客戶修改 Application 對象的屬性。

   Lock 方法阻止其他客戶修改存儲在 Application 對象中的變量,以確保在同一時刻僅有一個客戶可修改和存取 Application 變量。如果用戶沒有明確調(diào)用 Unlock 方法,則服務(wù)器將在 .asp 文件結(jié)束或超時后即解除對 Application 對象的鎖定。

   讓我們來看看下面這段用 Application 來記錄頁面訪問次數(shù)的程序 :
< %
Dim NumVisitsNumVisits=0
Application.LockApplication("NumVisits") = Application("NumVisits") + 1
Application.Unlock
%>
歡迎光臨本網(wǎng)頁,你是本頁的第 < %= Application("NumVisits") %> 位訪客 !

   將以上腳本保存在你的 .asp 文件中,就輕而易舉地給你的頁面添加了一個計數(shù)器。

2、和 Lock 方法相反,Unlock 方法允許其他客戶修改 Application 對象的屬性。

   在上面的例子中,上述例子中,Unlock 方法解除對象的鎖定,使得下一個客戶端能夠增加 NumVisits 的值。

三、事件

1、Application_OnStart

   Application_OnStart 事件在首次創(chuàng)建新的會話 ( 即 Session_OnStart 事件 ) 之前發(fā)生。當 WEB 服務(wù)器啟動并允許對應(yīng)用程序所包含的文件進行請求時就觸發(fā) Application_OnStart 事件。Application_OnStart 事件的處理過程必須寫在 Global.asa 文件之中。

   Application_OnStart 事件的語法如下 :

< SCRIPT LANGUAGE=ScriptLanguage RUNAT=Server>
Sub Application_OnStart. . .
End Sub
< /SCRIPT>

2、Application_OnEnd

   Application_OnEnd 事件在應(yīng)用程序退出時于 Session_OnEnd 事件之后發(fā)生,Application_OnEnd 事件的處理過程也必須寫在 Global.asa 文件之中。

下面讓我們來看看在使用 Application 對象時必須注意的事項。

不能在 Application 對象中存儲 ASP 內(nèi)建對象。例如,下面的每一行都返回一個錯誤。

< %
Set Application("var1")=Session
Set Application("var2")=Request
Set Application("var3")=Response
Set Application("var4")=Server
Set Application("var5")=Application
Set Application("var6")=ObjectContext
%>

   若您將一個數(shù)組存儲在 Application 對象中,請不要直接更改存儲在數(shù)組中的元素。例如,下列的腳本無法運行。
< % Application("StoredArray")(3) = "new value" %>

   這是因為 Application 對象是作為集合被實現(xiàn)的。數(shù)組元素 StoredArray(3) 未獲得新的賦值。而此值將包含在 Application 對象集合中,并將覆蓋此位置以前存儲的任何信息。建議您在將數(shù)組存儲在 Application 對象中時,在檢索或改變數(shù)組中的對象前獲取數(shù)組的一個副本。在對數(shù)組操作時,您應(yīng)再將數(shù)組全部存儲在 Application 對象中,這樣您所做的任何改動將被存儲下來。下列的腳本對此進行演示。
---asp8a.asp---

< %
dim MyArray()
Redim MyArray(5)
MyArray(0)="hello"
MyArray(1)="some other string"
Application.Lock
Application("StoredArray")=MyArray
Application.Unlock
Response.Redirect "asp8b.asp"
%>

---asp8b.asp---

< %
LocalArray=Application("StoredArray")
LocalArray(1)=" there"
Response.Write LocalArray(0)&LocalArray(1)
Application.Lock
Application("StoredArray")=LocalArray
Application.Unlock
%>

   與 Application 對象具有相近作用的另一個非常實用的 ASP 內(nèi)建對象就是 Session。我們可以使用 Session 對象存儲特定的用戶會話所需的信息。當用戶在應(yīng)用程序的頁之間跳轉(zhuǎn)時,存儲在 Session 對象中的變量不會清除,而用戶在應(yīng)用程序中訪問頁面時,這些變量始終存在。當用戶請求來自應(yīng)用程序的 Web 頁時,如果該用戶還沒有會話,則 Web 服務(wù)器將自動創(chuàng)建一個 Session 對象。當會話過期或被放棄后,服務(wù)器將終止該會話。   

通過向客戶程序發(fā)送唯一的 Cookie 可以管理服務(wù)器上的 Session 對象。當用戶第一次請求 ASP 應(yīng)用程序中的某個頁面時,ASP 要檢查 HTTP 頭信息,查看是否有在報文中有名為 ASPSESSIONID 的 Cookie 發(fā)送過來,如果有,則服務(wù)器會啟動新的會話,并為該會話生成一個全局唯一的值,在把這個值作為新 ASPSESSIONID Cookie 的值發(fā)送給客戶端,正是使用這種 Cookie,可以訪問存儲在服務(wù)器上的屬于客戶程序的信息。Session 對象最常見的作用就是存儲用戶的首選項。例如,如果用戶指明不喜歡查看圖形,就可以將該信息存儲在 Session 對象中。另外其還經(jīng)常被用在鑒別客戶身份的程序中。要注意的是,會話狀態(tài)僅在支持 cookie 的瀏覽器中保留,如果客戶關(guān)閉了 Cookie 選項,Session 也就不能發(fā)揮作用了。
一、屬性

1、SessionID

  SessionID 屬性返回用戶的會話標識。在創(chuàng)建會話時,服務(wù)器會為每一個會話生成一個單獨的標識。會話標識以長整形數(shù)據(jù)類型返回。在很多情況下 SessionID 可以用于 WEB 頁面注冊統(tǒng)計。

2、TimeOut

   Timeout 屬性以分鐘為單位為該應(yīng)用程序的 Session 對象指定超時時限。如果用戶在該超時時限之內(nèi)不刷新或請求網(wǎng)頁,則該會話將終止。

二、方法

   Session 對象僅有一個方法,就是 Abandon,Abandon 方法刪除所有存儲在 Session 對象中的對象并釋放這些對象的源。如果您未明確地調(diào)用 Abandon 方法,一旦會話超時,服務(wù)器將刪除這些對象。當服務(wù)器處理完當前頁時,下面示例將釋放會話狀態(tài)。
  < % Session.Abandon %>

三、事件

   Session 對象有兩個事件可用于在 Session 對象啟動和釋放是運行過程。

   1、Session_OnStart 事件在服務(wù)器創(chuàng)建新會話時發(fā)生。服務(wù)器在執(zhí)行請求的頁之前先處理該腳本。Session_OnStart 事件是設(shè)置會話期變量的最佳時機,因為在訪問任何頁之前都會先設(shè)置它們。

   盡管在 Session_OnStart 事件包含 Redirect 或 End 方法調(diào)用的情況下 Session 對象仍會保持,然而服務(wù)器將停止處理 Global.asa 文件并觸發(fā) Session_OnStart 事件的文件中的腳本。

   為了確保用戶在打開某個特定的 Web 頁時始終啟動一個會話,就可以在 Session_OnStart 事件中調(diào)用 Redirect 方法。當用戶進入應(yīng)用程序時,服務(wù)器將為用戶創(chuàng)建一個會話并處理 Session_OnStart 事件腳本。您可以將腳本包含在該事件中以便檢查用戶打開的頁是不是啟動頁,如果不是,就指示用戶調(diào)用 Response.Redirect 方法啟動網(wǎng)頁。程序如下 :

< SCRIPT RUNAT=Server Language=VBScript>
Sub Session_OnStart
startPage = "/MyApp/StartHere.asp"
currentPage = Request.ServerVariables("SCRIPT_NAME")
if strcomp(currentPage,startPage,1) then
Response.Redirect(startPage)
end if
End Sub
< /SCRIPT>

   上述程序只能在支持 cookie 的瀏覽器中運行。因為不支持 cookie 的瀏覽器不能返回 SessionID cookie,所以,每當用戶請求 Web 頁時,服務(wù)器都會創(chuàng)建一個新會話。這樣,對于每個請求服務(wù)器都將處理 Session_OnStart 腳本并將用戶重定向到啟動頁中。
   2、Session_OnEnd 事件在會話被放棄或超時發(fā)生。

關(guān)于使用 Session 對象需要注意的事項 Application 對象相近,請參照前文。

   會話可以通過以下三種方式啟動 :

   1、一個新用戶請求訪問一個 URL,該 URL 標識了某個應(yīng)用程序中的 .asp 文件,并且該應(yīng)用程序的 Global.asa 文件包含 Session_OnStart 過程。

   2、用戶在 Session 對象中存儲了一個值。

   3、用戶請求了一個應(yīng)用程序的 .asp 文件,并且該應(yīng)用程序的Global.asa 文件使用 < OBJECT> 標簽創(chuàng)建帶有會話作用域的對象的實例。

   如果用戶在指定時間內(nèi)沒有請求或刷新應(yīng)用程序中的任何頁,會話將自動結(jié)束。這段時間的默認值是 20 分鐘。可以通過在 Internet 服務(wù)管理器中設(shè)置“應(yīng)用程序選項”屬性頁中的“會話超時”屬性改變應(yīng)用程序的默認超時限制設(shè)置。應(yīng)依據(jù)您的 Web 應(yīng)用程序的要求和服務(wù)器的內(nèi)存空間來設(shè)置此值。例如,如果您希望瀏覽您的 Web 應(yīng)用程序的用戶在每一頁僅停留幾分鐘,就應(yīng)該縮短會話的默認超時值。過長的會話超時值將導(dǎo)致打開的會話過多而耗盡您的服務(wù)器的內(nèi)存資源。對于一個特定的會話,如果您想設(shè)置一個小于默認超時值的超時值,可以設(shè)置 Session 對象的 Timeout 屬性。例如,下面這段腳本將超時值設(shè)為 5 分鐘。
  < % Session.Timeout = 5 %>

   當然你也可以設(shè)置一個大于默認設(shè)置的超時值,Session.Timeout 屬性決定超時值。你還可以通過 Session 對象的 Abandon 方法顯式結(jié)束一個會話。例如,在表格中提供一個“退出”按鈕,將按鈕的 ACTION 參數(shù)設(shè)置為包含下列命令的 .asp 文件的 URL。
  < % Session.Abandon %>

   今天,我們學(xué)習(xí)了兩個在WEB 頁面特別是基于WEB 的BBS 或Chat 上經(jīng)常使用 ASP 內(nèi)建對象,由于這兩個對象在實際運用中很實用,因此在下一篇中作者將運用至此我們所學(xué)過的4 個ASP 內(nèi)建對象,給大家演示一個完整的 ASP 應(yīng)用程序,相信通過這個練習(xí),能大大加深你對 ASP 應(yīng)用程序的理解和掌握。

以上就是本文的全部內(nèi)容,希望對大家學(xué)習(xí)ASP內(nèi)建對象Application和Session有所幫助。

標簽: ASP
相關(guān)文章:
日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区
啪啪国产精品| 日本一二区不卡| 免费成人网www| 国产精品手机在线播放| 日本久久精品| 激情视频网站在线播放色 | 久久精品播放| 亚洲大全视频| 久久蜜桃av| 99亚洲视频| 亚洲精品无吗| 国产美女精品视频免费播放软件| 国产私拍福利精品视频二区| 国产精东传媒成人av电影| 蜜桃精品视频| 日韩深夜视频| 亚洲激情五月| 亚洲尤物av| 国产精品对白久久久久粗| 久久久免费人体| 在线人成日本视频| 精品在线99| 亚洲精品极品| 日本色综合中文字幕| 国产精品视频一区二区三区综合| 久久不见久久见国语| 精品国产精品国产偷麻豆| 欧美日韩尤物久久| 久热re这里精品视频在线6| 日韩1区2区3区| 麻豆精品久久久| 国内激情久久| 日韩精品国产欧美| 国产96在线亚洲| 欧美特黄一区| 国产情侣久久| 久久九九精品| 日韩高清在线一区| 另类综合日韩欧美亚洲| 久久久777| 香蕉久久一区| 高潮一区二区| 亚洲精品护士| 麻豆国产在线| 亚洲人成网站在线在线观看| 国产一区二区精品久| 婷婷成人基地| 国产精选久久| 免费观看久久av| 国产精品毛片久久久| 国产综合婷婷| 久久中文在线| 免费国产亚洲视频| 国产精品a级| 一区久久精品| 老鸭窝一区二区久久精品| 日韩精品免费一区二区在线观看 | 性欧美69xoxoxoxo| 欧美啪啪一区| 久久精品高清| 国产精品一区二区美女视频免费看 | 91亚洲无吗| 亚洲一区激情| 亚洲一区久久| 鲁大师成人一区二区三区| 91精品久久久久久久久久不卡| 久久伊人亚洲| 女人av一区| 麻豆91精品91久久久的内涵| 黄色免费成人| 国内自拍视频一区二区三区| 蜜桃一区二区三区在线| 国产激情久久| 先锋影音国产一区| 91欧美在线| 欧美私人啪啪vps| 99综合视频| av免费不卡国产观看| 日韩欧美美女在线观看| 亚洲成人一区| 麻豆视频在线看| 国产精品久av福利在线观看| 噜噜噜躁狠狠躁狠狠精品视频 | 国产精品白丝久久av网站| 欧美专区18| 另类av一区二区| 日韩精品乱码av一区二区| 欧美激情另类| 午夜电影一区| 欧美日韩激情| 国产剧情在线观看一区| 中文字幕一区二区三区四区久久 | 99国内精品| 水蜜桃精品av一区二区| 欧美精品中文字幕亚洲专区| 久久精品动漫| 91日韩欧美| 久久一区欧美| 国产精品99久久久久久董美香| 亚洲精品免费观看| 欧美日韩精品一本二本三本| 亚洲www啪成人一区二区| 99视频精品全国免费| 国产欧美丝祙| 亚洲美女91| 丝袜国产日韩另类美女| 亚洲激情中文| 美女少妇全过程你懂的久久| 日韩欧美二区| 91亚洲国产高清| 成人午夜网址| 日韩av片子| 91亚洲国产高清| 国产不卡人人| 91看片一区| 久久久国产亚洲精品| 久久中文字幕二区| 国产综合视频| 国户精品久久久久久久久久久不卡 | 日本va欧美va瓶| 亚洲免费中文| 亚洲免费网址| 亚洲日韩视频| 久久国产麻豆精品| 国产精品亚洲欧美| 欧美黄色一区| 精品国产乱码久久久| 国产中文字幕一区二区三区| 精品免费av| 成人国产精品一区二区免费麻豆| 国产一区二区三区免费在线| 久久99国产精品视频| 中文字幕在线视频网站| 国产精选久久| 日本不卡高清视频| 日本三级亚洲精品| 国产欧美一区| 欧美激情视频一区二区三区免费 | 三级欧美韩日大片在线看| 久久国产精品毛片| 亚洲精品第一| 国产无遮挡裸体免费久久| 麻豆中文一区二区| 国产一区二区三区四区五区| 日韩高清不卡| 在线日韩中文| 中文在线日韩| 国产精品久久久久久久免费软件| 久久精品国产99国产精品| 午夜欧美巨大性欧美巨大| 成人av动漫在线观看| 三级一区在线视频先锋| 91亚洲精品在看在线观看高清| 欧美激情网址| 91精品综合| 午夜在线一区| 国产日韩中文在线中文字幕 | 欧美综合社区国产| 另类综合日韩欧美亚洲| 色婷婷狠狠五月综合天色拍| 五月婷婷亚洲| 日韩av二区在线播放| 精品久久久网| 欧美日韩国产一区精品一区| 日韩精品午夜视频| 精品欠久久久中文字幕加勒比| 91精品一区二区三区综合| 中文字幕成人| 欧美国产美女| 红桃视频亚洲| 国产精品亚洲欧美日韩一区在线| 亚洲成人一区在线观看| 婷婷综合国产| 中文字幕在线高清| 婷婷精品在线| 欧产日产国产精品视频| 中文字幕免费一区二区| 麻豆mv在线观看| 蜜臀久久久99精品久久久久久| 麻豆传媒一区二区三区| 黄色免费成人| 久久亚洲资源中文字| 在线亚洲免费| 精品视频在线你懂得| 狠狠干成人综合网| 精品午夜视频| 国产亚洲在线| 精品一区二区三区免费看| 欧美日韩国产综合网| 免费在线亚洲欧美| 制服诱惑一区二区| 精品亚洲成人| 伊人精品久久| 中文在线资源| 日本不卡不码高清免费观看 | 亚洲自啪免费| 国语精品一区| 中文国产一区| 日韩成人免费| 日产欧产美韩系列久久99|