数据缓存技术及代码详解

数据缓存技术及代码详解

ID:21666830

大小:393.00 KB

页数:10页

时间:2018-10-23

数据缓存技术及代码详解_第1页
数据缓存技术及代码详解_第2页
数据缓存技术及代码详解_第3页
数据缓存技术及代码详解_第4页
数据缓存技术及代码详解_第5页
资源描述:

《数据缓存技术及代码详解》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、1.缓存概述  •为什么使用缓存    –应用程序可以将那些频繁访问的数据,以及那些需要大量处理时间来创建的数据存储在内存中,从而提高性能  •缓存机制分类介绍    –应用程序缓存    –页输出缓存2.应用程序缓存的机制  •应用程序缓存是由System.Web.Caching.Cache类实现的,缓存实例(Cache对象)是每个应用程序专    用的,并且每个应用只有一个,通过Page类或UserControl类的Cache属性公开   •缓存生存期依赖于应用程序的生存期,当重新启动应用程序后,将重新创建Cache 对象,也就是说缓存数据将被清空3.如何将项添加到

2、缓存中   •添加缓存项  •设置缓存依赖项    •设置缓存过期策略  •设置缓存优先级4.设置缓存依赖项  •为什么要设置依赖项  •依赖项分类    –键依赖项    –文件依赖项    –SQL依赖项    –聚合依赖项    –自定义依赖项  •添加缓存项的文件依赖项    Cache.Insert("FinanceData","CachedItem4",      newSystemWebCachingCacheDependency(Server.MapPath("XMLData.xml")));   •添加缓存项的SQL依赖项    –使用SqlCache

3、Dependency对象来创建依赖于数据库表中的记录    –在Web.config文件的caching节点定义缓存使用的数据库名称及连接字符串    –使用代码依赖于该连接对应数据库的某个表的缓存项      Cache.Insert("cacheitem1","CacheItem1",        newSqlCacheDependency("AdvWorks","Product"));5.从缓存中删除项时通知应用程序http://qun.81nanchang.cn  •CacheItemRemovedCallback委托    –该委托定义编写事件处理程序时使用

4、的签名,当对从缓存中删除项进行响应时会调用此事件处理程序  •CacheItemRemovedReason枚举    – 用于指定删除缓存项的原因6.实例演示(使用CacheDependency监视文件变化)  a)新建一个CacheUtil类,来处理Cache的常见操作,代码如下: ViewCodepublicclassCacheUtil{publicstaticvoidAddCache(){vards=newSystem.Data.DataSet();ds.ReadXml(HttpContext.Current.Server.MapPath("~/Employees

5、.xml"));HttpContext.Current.Cache.Add("EmployeeSet",ds,newCacheDependency(HttpContext.Current.Server.MapPath("~/Employees.xml")),DateTime.Now.AddHours(1),Cache.NoSlidingExpiration,CacheItemPriority.High,EmployeeSetCacheItemRemoved);}http://www.qqmy2.compublicstaticvoidEmployeeSetCacheIte

6、mRemoved(stringkey,objectvalue,CacheItemRemovedReasonreason){switch(reason){caseCacheItemRemovedReason.DependencyChanged:AddCache();break;}}}    b)修改Global.asax.cs的Application_Start,在网站启动时,添加CacheViewCodevoidApplication_Start(objectsender,EventArgse){//在应用程序启动时运行的代码CacheUtil.AddCache();}

7、  c)修改Default.aspx.cs的Page_LoadViewCodeprotectedvoidPage_Load(objectsender,EventArgse){if(Cache["EmployeeSet"]==null){CacheUtil.AddCache();}vards=(DataSet)Cache["EmployeeSet"];GridView1.DataSource=ds.Tables[0];GridView1.DataBind();}    d)效果图:  当修改Employees.xml,保存后,缓存会接到文件

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。