文档章节

Cache笔记

rhythmk
 rhythmk
发布于 2014/08/16 16:37
字数 551
阅读 3
收藏 0
1.页面输出缓存
   1>.在aspx页面顶部加上下面语句 ,则设置整个页面进行输出缓存 
       <%@ OutputCache Duration="30" VaryByParam="none" %>
      Duration:设置缓存的有效时间;
      VaryByParam:根据Request请求的参数进行改变缓存页面
      VaryByControl:则根据页面中控件属性的改变进行缓存页面
eg:       <%@ OutputCache Duration="30" VaryByParam="id" %>
      则当请求的URL为 http://localhost/default.aspx?id=1 页面进行缓存,则如果请求URL地址  http://localhost/default.aspx?id=2 中ID数值进行改变 ,则页面马上进行重新缓存。url地址为 http://localhost/default.aspx?id=2&name=abc 则设置成VaryByParam="id;name";
 2>. 用户控件进行缓存[WebUserControl.ascx]
           在建立WebUserControl.ascx 用户控件时候,我们可以把单独不常改变数据的用户控件进行缓存.
使用方法:在.ascx文件的顶部加上"<%@ OutputCache Duration="10" VaryByParam="none" %>" 即可
 3>.页面输出缓存进行局部取消缓存
     页面局部取消缓存我们使用控件Substitution :
        <asp:Substitution ID="Substitution1" runat="server" MethodName="yourMethod" />
其中MethodName用来设置不缓存局部获取字符串方法。
Code
    protected static string yourMethod(HttpContext context)
    {
        
return DateTime.Now.ToString();
    }
    
/*
     注意: 
     * 此方法必须为静态方法 
     * 参数类型必须为HttpContext
     * 返回类型必须为字符串!
 
    */
 
2.程序Object 对象进行缓存     
   在项目开发中 ,我们有时候 通过抽象工厂模式拓展项目灵活性。在可以通过配置文件去对逻辑层中的模块进行缓存

   
Code
/// <summary>
    
/// 获取被缓存的对象
    
/// </summary>
    
/// <param name="valueName">对象key</param>
    
/// <returns></returns>
    public static Object getValue(string valueName)
    {
        System.Web.Caching.Cache objcache 
= HttpRuntime.Cache;
        
return objcache[valueName];
 
    }
    
/// <summary>
    
/// 插入被缓存的对象
    
/// </summary>
    
/// <param name="obj">需要缓存的对象</param>
    
/// <param name="valueName">对象key</param>
    public static void insertValue(object obj,string valueName)
    {
        System.Web.Caching.Cache objcache 
= HttpRuntime.Cache;
        objcache.Insert(valueName, obj);
         

    }
    
/// <summary>
    
/// 插入对文件依赖的缓存对象。
    
/// 被依赖的文件修改 则缓存对象自动清除
    
/// </summary>
    
/// <param name="obj"></param>
    
/// <param name="valueName"></param>
    
/// <param name="filePath">文件的相对路径</param>
    public static void insertValue(object obj, string valueName, string filePath)
    {
        System.Web.Caching.Cache objcache 
= HttpRuntime.Cache;
        objcache.Insert(valueName,obj,
new CacheDependency(HttpContext.Current.Server.MapPath(filePath)));

 
    }
   
/// <summary>
    
/// 移除被缓存的对象
   
/// </summary>
   
/// <param name="valueName"></param>
    public static void removeValue(string valueName)
    {
        System.Web.Caching.Cache objCache 
= HttpRuntime.Cache;
        objCache.Remove(valueName);
    }

         参考: http://ltp.cnblogs.com/

© 著作权归作者所有

rhythmk
粉丝 1
博文 62
码字总数 40987
作品 0
广州
私信 提问
spring cache + redis整合

谨以此做个笔记。 平时我们使用的redis无非是用作缓存以及分布式session,其他的作用就视项目需求而定了。 这里主要讲讲redis作为缓存的作用。 使用redis做缓存,可以选择单独使用,也可以和...

疯狂的米老鼠
2017/12/11
0
0
ASP.NET状态管理之六(缓存Cache)

ASP.NET 为您提供了一个强大的、便于使用的缓存机制,用于将需要大量服务器资源来创建的对象存储在内存中。缓存这些类型的资源会大大改进应用程序的性能。 缓存是由 Cache 类实现的;缓存实例...

范大脚脚
2017/12/14
0
0
【CentOS 7笔记22】,手动增加Swap空间#171104

hellpasswd --- dd命令是用于操作磁盘 if指定源设备/dev/zero linux内核的造零器,是一个特殊设备,里面有源源不断的“0”of指定目标设备(在这里,我们创建了一个文件,作为一个模拟的设备)...

hellopasswd
2017/11/04
30
0
【CentOS 7笔记18】,df命令和du命令#171101

hellopasswd --- 一.df显示磁盘分区上的可使用的磁盘空间 使用df命令可以直观的了解,第一列为文件系统,第二列为磁盘总大小,第三列为已使用的磁盘空间,第四列为剩余的磁盘空间,第五列为已...

hellopasswd
2017/11/01
68
0
Squid学习笔记

1、部署 编译安装(以下编译安装参数适用Squid-3.0-stable20) ./configure --prefix=/usr/local/squid --enable-async-io=100 --with-pthreads --enable-storeio="ufs,aufs,diskd" --enable......

香胖
2015/12/04
733
0

没有更多内容

加载失败,请刷新页面

加载更多

nginx学习笔记

中间件位于客户机/ 服务器的操作系统之上,管理计算机资源和网络通讯。 是连接两个独立应用程序或独立系统的软件。 web请求通过中间件可以直接调用操作系统,也可以经过中间件把请求分发到多...

码农实战
56分钟前
5
0
Spring Security 实战干货:玩转自定义登录

1. 前言 前面的关于 Spring Security 相关的文章只是一个预热。为了接下来更好的实战,如果你错过了请从 Spring Security 实战系列 开始。安全访问的第一步就是认证(Authentication),认证...

码农小胖哥
今天
8
0
JAVA 实现雪花算法生成唯一订单号工具类

import lombok.SneakyThrows;import lombok.extern.slf4j.Slf4j;import java.util.Calendar;/** * Default distributed primary key generator. * * <p> * Use snowflake......

huangkejie
昨天
11
0
PhotoShop 色调:RGB/CMYK 颜色模式

一·、 RGB : 三原色:红绿蓝 1.通道:通道中的红绿蓝通道分别对应的是红绿蓝三种原色(RGB)的显示范围 1.差值模式能模拟三种原色叠加之后的效果 2.添加-颜色曲线:调整图像RGB颜色----R色增强...

东方墨天
昨天
10
1
将博客搬至CSDN

将博客搬至CSDN

算法与编程之美
昨天
12
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部