ASP入門(十一)-Application對象

來源:互聯網
上載者:User

標籤:

在一起協同工作以完成某項任務的一組ASP檔案稱為一個應用程式。Application 對象用於把這些檔案捆綁在一起。

Application 對象用於在整個應用程式生存期間儲存資訊。

Application 對象用於儲存和訪問來自任何頁面的變數,類似於 Session 對象。不同之處在於,所有使用者分享一個 Application 對象,而 Session 對象和使用者的關係是一一對應的。

Application 對象沒有屬性。

Application 對象的原理是這樣的,在每次應用程式啟動(即 IIS 的啟動)時,會在記憶體中請求一部分空間來儲存資料,這個資料對於訪問網站的所有使用者來說是共用的,當在 IIS 中停止網站或者伺服器重啟時,Application 對象所儲存的資訊將丟失。

Application 對象的方法和集合

與 Session 對象類似,Application 對象也有 Contents 集合,下面的例子示範了如何設定和讀取資料:

<%Application.Contents("WebSite") = "http://pchmonster.cnblogs.com"Dim WebSiteWebSite = Application("WebSite")Response.Write(WebSite)%>

Application 對象也有 RemoveRemoveAll 兩個方法,其使用方法和 Session 對象相應方法類似,這裡不再詳細描述了。

Applicaton 對象另外一對方法是 LockUnLock 方法。

Lock 方法阻止其他使用者修改 Application 對象中的變數(用來確保同一時間只有一位使用者可以修改 Application 物件變數)。

Unlock 方法使其他使用者能夠修改儲存在 Application 對象中的變數(在它被使用 Lock 方法鎖定之後)

下面的例子,Lock 方法可以防止一個以上使用者訪問變數 Visits,用 Unlock 方法來對鎖定的對象進行解鎖,這樣下一個使用者就可以增加變數 Visits 的值。

<%Application.Lock()Application("Visits") = Application("Visits") + 1Application.UnLock()%><h3>This page has been visited<%=Application("Visits")%> times.</h3>
Application 小案例

在 ASP 剛問世時候,有很多使用 ASP 製作的聊天室,它的原理就是利用 Application 集合是訪問網站所有使用者共用的特點,將所有使用者所發表的聊天句都儲存在 Application 中。

當然這樣的方法需要佔用比較大的伺服器記憶體資源,因此已經很少在使用了。

本例代碼如下(ChatRoom.asp):

<%If UCase(Trim(Request.ServerVariables("REQUEST_METHOD"))) = "POST" Then  Dim sCurrentWord  sCurrentWord = Trim(Request.Form("word"))  Application.Lock()  Application("chatroom") = Application("chatroom") & "<br>" & Session.SessionID & "-&gt;" & sCurrentWord  Application.UnLock()End If%><h3>以下是聊天室的內容:</h3><p><%=Application("chatroom")%></p><hr><form method="post" action="">請輸入要說的話:<input name="Word" type="text"/><input type="submit" value="發送"/></form>

運行後,輸入密碼登入,如:

輸入你要說的話,並按“發送”按鈕發送出去。利用多個終端登入該頁面,進行聊天。

範例程式碼下載

Application.rar

ASP入門(十一)-Application對象

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.