ASP中使用APPLICATION对象存储数据的缓存类
<%
'*********************************************************
'紫茉莉缓存类1.0
'ZNet CacheClass Version 1.0
'作者:流行孤单[ZNetTech]
'版权声明:版权所有,源代码公开,各种用途均可免费使用。
'转发或使用时请保留此声明信息,这段声明并不会影响你的速度!
'*********************************************************
Class CacheClass
'声明变量
Public CacheID
Private CacheName,CacheData
'声明类预处理内容
Private Sub Class_Initialize()
'以过滤:/以后的路径为ID防止重复
CacheID = Replace(Server.MapPath("."),".","")
CacheID = Replace(Replace(CacheID,"/",""),":","")
End Sub
'声明类终止处理内容
Private Sub Class_Terminate()
Response.Write("SiteCache Is End.")
End Sub
'获取缓存名称
Public Property Let SetName(NameValue)
CacheName = NameValue
End Property
'获取缓存数据
Public Property Let SetData(DataValue)
If CacheName = "" Then
Response.Write("CacheName Is Empty.")
Response.End
Else
ReDim CacheData(1)
CacheData(0) = DataValue
CacheData(1) = Now()
Application.Lock
Application.Contents(CacheID & "_" & CacheName) = CacheData
Application.UnLock
End If
End Property
'输出缓存数据
Public Property Get GetData(NameValue)
If NameValue = "" Then
NameValue = CacheName
End If
If NameValue = "" Then
Response.Write("CacheName Is Empty.")
Response.End
Else
CacheData = Application.Contents(CacheID & "_" & NameValue)
If IsArray(CacheData) Then
GetData = CacheData
Else
Response.Write("The CacheData(" & NameValue & ") Is Empty.")
Response.End
End If
End If
End Property
'判断对象是否过期
Public Function Overdue(NameValue)
Overdue= True
If NameValue = "" Then
NameValue = CacheName
End If
CacheData = Application.Contents(CacheID & "_" & NameValue)
If Not (IsArray(CacheData)) Then
Exit Function
End If
If Not IsDate(CacheData(1)) Then
Exit Function
End If
If DateDiff("s",CDate(CacheData(1)),Now()) < (14400 * 60) Then
Overdue = False
End If
End Function
'删除一个缓存
Public Sub DelData(NameValue)
Application.Lock
Application.Contents.Remove(CacheID & "_" & NameValue)
Application.UnLock
End Sub
'清除所有缓存
Public Sub ClsData()
Application.Lock
Application.Contents.Remove.All
Application.UnLock
End Sub
End Class
%>
- 点赞
- 收藏
- 分享
- 文章举报
- Miley's Oracle讲堂第三课:如何在Oracle中使用对象表存储数据.
- 在ASP.NET中使用Session与Application 对象
- 为什么不能往Android的Application对象里存储数据
- 关于:“无法序列化会话状态。在“StateServer”或“SQLServer”模式下,ASP.NET 将序列化会话状态对象,因此不允许使用无法序列化的对象或 MarshalByRef 对象。如果自定义会话状态存储在“Custom”模式下执行了类似的序列化
- ASP.NET中application对象的使用介绍
- 在ASP.NET 2.0中操作数据之六十六:在TableAdapters中使用现有的存储过程
- Android笔记 Application对象的使用-数据传递以及内存泄漏问题
- Application对象的使用-数据传递以及内存泄漏问题
- ASP.NET中application对象的使用介绍
- 为什么不能往Android的Application对象里存储数据
- 为什么不能往Android的Application对象里存储数据
- Application对象的使用-数据传递以及内存泄漏分析
- ASP.NET中使用Application对象实现简单在线人数统计功能
- 上传图像并使用ASP.NET 2.0数据源控件代码存储二进制数据
- Application对象的使用-数据传递以及内存泄漏.
- Application对象中存储的数据一直存在?
- ASP.NET基础教程-使用CommandBuilder对象自动生成SQL语句对数据进行批量更新
- Android开发之千万不要把数据存储在Application对象中
- DevExpress ASP.NET 使用经验谈(2)-XPO对象的使用(使用默认数据连接)
- 为什么不能往Android的Application对象里存储数据