|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
减少客户内IT专业人才缺乏带来的影响。ASP的客户员工利用浏览器进入相关的应用软件,简单易用,无需专业技术支持。cache为了进步网站首页的功能,首页但凡必要挪用数据库显现数据的中央城市先试图从缓存中挪用数据,假如缓存中没有可用数据再翻开数据库掏出纪录集,为了让页面显现数据和数据库在必定工夫内同步,我们把缓存的过时工夫设置成30秒。
声明:缓存办理类出自于动网论坛7.0
注重:最好不要在缓存里间接缓存带形态的工具和MTA形式的工具,好比说间接缓存纪录集大概数据库链接工具等。
<%
SubShowRsArr(rsArr)
用表格显现纪录集getrows天生的数组的表布局
Response.Write"<tablewidth=100%border=0cellspacing=0cellpadding=0>"
IfNotIsEmpty(rsArr)Then
Fory=0ToUbound(rsArr,2)
Response.Write"<tr>"
forx=0toUbound(rsArr,1)
Response.Write"<td>"&rsArr(x,y)&"</td>"
next
Response.Write"</tr>"
next
Else
Response.Write"<tr>"
Response.Write"<tdcolspan="&rs.fields.count-1&">NoRecords</td>"
Response.Write"</tr>"
EndIf
Response.Write"</table>"
EndSub
ClassCls_Cache
Rem==================利用申明=================================================================================
Rem=本类模块是动网前锋原创,迷城荡子。如接纳本类模块,请不要往失落这个申明。这段正文不会影响实行的速率。=
Rem=感化:缓存弛缓存办理类=
Rem=私有变量:Reloadtime过时工夫(单元为分钟)缺省值为14400,=
Rem=MaxCount缓存工具的最年夜值,凌驾则主动删除利用次数少的工具。缺省值为300=
Rem=CacheName缓存组的总称号,缺省值为"Dvbbs",假如一个站点中有凌驾一个缓存组,则必要内部改动这个值。=
Rem=属性:Name界说缓存工具称号,只写属性。=
Rem=属性:value读取和写进缓存数据。=
Rem=函数:ObjIsEmpty()判别以后缓存是不是过时。=
Rem=办法:DelCahe(MyCaheName)手工删除一个缓存工具,参数是缓存工具的称号。=
Rem===========================================================================================================
PublicReloadtime,MaxCount,CacheName
PrivateLocalCacheName,CacheData,DelCount
PrivateSubClass_Initialize()
Reloadtime=14400
CacheName="Dvbbs"
EndSub
PrivateSubSetCache(SetName,NewValue)
Application.Lock
Application(SetName)=NewValue
Application.unLock
EndSub
PrivateSubmakeEmpty(SetName)
Application.Lock
Application(SetName)=Empty
Application.unLock
EndSub
PublicPropertyLetName(ByValvNewValue)
LocalCacheName=LCase(vNewValue)
EndProperty
PublicPropertyLetValue(ByValvNewValue)
IfLocalCacheName<>""Then
CacheData=Application(CacheName&"_"&LocalCacheName)
IfIsArray(CacheData)Then
CacheData(0)=vNewValue
CacheData(1)=Now()
Else
ReDimCacheData(2)
CacheData(0)=vNewValue
CacheData(1)=Now()
EndIf
SetCacheCacheName&"_"&LocalCacheName,CacheData
Else
Err.RaisevbObjectError+1,"DvbbsCacheServer","pleasechangetheCacheName."
EndIf
EndProperty
PublicPropertyGetValue()
IfLocalCacheName<>""Then
CacheData=Application(CacheName&"_"&LocalCacheName)
IfIsArray(CacheData)Then
Value=CacheData(0)
Else
Err.RaisevbObjectError+1,"DvbbsCacheServer","TheCacheDataIsEmpty."
EndIf
Else
Err.RaisevbObjectError+1,"DvbbsCacheServer","pleasechangetheCacheName."
EndIf
EndProperty
PublicFunctionObjIsEmpty()
ObjIsEmpty=True
CacheData=Application(CacheName&"_"&LocalCacheName)
IfNotIsArray(CacheData)ThenExitFunction
IfNotIsDate(CacheData(1))ThenExitFunction
IfDateDiff("s",CDate(CacheData(1)),Now())<60*ReloadtimeThen
ObjIsEmpty=False
EndIf
EndFunction
PublicSubDelCahe(MyCaheName)
makeEmpty(CacheName&"_"&MyCaheName)
EndSub
EndClass
Dimstrconn,rs
strconn="Driver={sqlserver};server=localhost;database=northwind;uid=sa;pwd=sa;"
PublicFunctionGetEmployees()
DimSQL,Rs,Cache
SetCache=NewCls_Cache
Cache.Reloadtime=0.5
Cache.CacheName="wawa"
Cache.Name="Employees"
IfCache.ObjIsEmpty()Then
Setrs=Server.CreateObject("ADODB.Recordset")
SQL="selectEmployeeID,LastName,FirstNamefromemployeesorderbyemployeeiddesc"
Rs.OpenSQL,strconn,1,1
Cache.value=Rs.GetRows(5)
Rs.Close:SetRs=Nothing
EndIf
GetEmployees=Cache.Value
SetCache=Nothing
EndFunction
ShowRsArr(GetEmpLoyees)
%>
<script>
functionTimeOut(a){
varc=a-1;
if(c==0){
window.location.href=window.location;
}else{
document.all.abc.innerHTML="离缓存停止另有:"+c+"秒";
window.setTimeout(TimeOut(+c+),1000);
}
}
</script>
<body>
<divid="abc"></div></p>asp可以轻松地实现对页面内容的动态控制,根据不同的浏览者,显示不同的页面内容。而浏览者一点觉察不出来,就像为他专门制作的页面一样。使用各种各样的组件,asp可以完成无比强大的功能。 |
|