当前位置: 首页 > 图文教程 > 网络编程 > ASP > CacheCls缓存的应用

ASP
IIS访问ASP页面时报错The requested resource is in use.的解决办法
错误类型:Provider (0x80004005)未指定的错误 的一个处理方法
关于asp+access的安全问题分析
把RS.GetRows看得更清楚
asp下UTF-8页面乱码的解决方法
解决使用良精企业建站7.0未注册问题
在ASP中连接MySQL数据库的方法,最好的通过ODBC方法
flash与js通讯方法
ASP操作Excel相关技术总结
解决用Access数据库建站维护不便的问题的方法
ASP实现GB2312字符与区位码的相互转换的代码
对于ASP编码问题的深入研究与最终解决方案
ASP生成UTF-8编码的代码
删除A表中在B表中不存在的数据
动网防恶意广告比较有效的办法附asp代码
asp磁盘缓存技术使用的代码
网页语言编码及asp乱码问题解决方案
FSO遍历目录实现全站插马的代码
关于无限分级(ASP+数据库+JS)的实现代码
如何写ASP入库小偷程序

ASP 中的 CacheCls缓存的应用


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-13   浏览: 97 ::
收藏到网摘: n/a

复制代码 代码如下:

<%
Rem =================================================================
Rem = 类:CacheCls
Rem = 说明:缓存的应用
Rem = Revision:1.01 Beta
Rem = 作者:熊氏英雄(cexo255)
Rem = Date:2005/05/6 18:38:10
Rem = QQ:30133499
Rem = MySite:Http://www.Relaxlife.net
Rem = 下载:Http://www.Relaxlife.net/cexo/Cache_pro.rar
Rem = QQ群:4341998
Rem = 适用:对一些常用到,而又不常改变的数据放入缓存中,调用速度要比每次都要从数据库中读要快N陪
Rem =================================================================
CacheName = "RL"
Class CacheCls
Private LocalCacheName, Cache_Data
Public Property Let Name(ByVal vNewValue)
LocalCacheName = LCase(vNewValue)
Cache_Data=Application(CacheName & "_" & LocalCacheName)
End Property
Public Property Let Value(ByVal vNewValue)
Dim N,i,NewValueArr
If LocalCacheName<>"" Then
N = CountInStr(vNewValue,"|")
NewValueArr = Split(vNewValue,"|",-1,1)
ReDim Cache_Data(N)
For i = 0 to N
Cache_Data(i) = NewValueArr(i)
Next
Application.Lock
Application(CacheName & "_" & LocalCacheName) = Cache_Data
Application.unLock
Else
Response.Write "设置缓存出错,或缓存名不能为空,请重新更新缓存"
Response.End()
End If
End Property
Public Property Get Value()
If LocalCacheName<>"" Then
If IsArray(Cache_Data) Then
Value=Cache_Data
End If
Else
Response.Write "设置缓存出错,或缓存名不能为空,请重新更新缓存"
Response.End()
End If
End Property
'取指定缓存中的值
Public Function GetCacheValue(MyCaheName)
GetCacheValue = Application(CacheName & "_" & MyCaheName)
End Function
'取所有缓存名
Public Function GetallCacheName()
Dim Cacheobj
For Each Cacheobj in Application.Contents
GetallCacheName = GetallCacheName & Cacheobj & ","
Next
GetallCacheName = Left(GetallCacheName,Len(GetallCacheName)-1)
GetallCacheName = Replace(GetallCacheName,CacheName & "_","")
End Function
'释放缓存
Public Sub DelCahe(MyCaheName)
Application.Lock
Application.Contents.Remove(CacheName & "_" & MyCaheName)
Application.unLock
End Sub
'释放所有缓存
Public Sub RemoveAllCache()
Dim Cachelist,i
Cachelist=Split(GetallCacheName(),",")
If UBound(Cachelist)>0 Then
For i=0 to UBound(Cachelist)
DelCahe Cachelist(i)
Next
End If
End Sub
'统计字符Char在Str中出现的次数
Private Function CountInStr(Str,Char)
CountInStr = 0
Dim i, CharLen
CharLen = Len(Char)
For i = 1 to Len(Str)
If Mid(Str, i, CharLen) = Char Then CountInStr = CountInStr + 1
Next
End Function
End Class
Dim CachePro
Set CachePro = New CacheCls
'设置缓存“cexo255”和它的值:"cexo2551|cexo2552|cexo2553|cexo2554|cexo2555"
CachePro.Name = "cexo255"
CachePro.Value = "cexo2551|cexo2552|cexo2553|cexo2554|cexo2555"
'取当前缓存中的值
'CacheArr = CachePro.Value
CachePro.Name = "wxf"
CachePro.Value = "wxf"
CachePro.Name = "dw"
CachePro.Value = "dw"
'释放缓存cexo255
'CachePro.DelCahe("cexo255")
'释放所有缓存
'CachePro.RemoveAllCache
'取cexo255缓存中的值
CacheArr = CachePro.GetCacheValue("cexo255")
If isArray(CacheArr) Then
For i = 0 to UBound(CacheArr)
Response.Write CacheArr(i) & "<br>"
Next
Else
Response.Write "缓存被释放!!!"
End if
Set CachePro = Nothing
%>