博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
SSM项目整合——07OSCache缓存讲解
阅读量:3958 次
发布时间:2019-05-24

本文共 1260 字,大约阅读时间需要 4 分钟。

SSM项目整合——07OSCache缓存讲解

本文我们为了方便演示新建一个项目。

一.创建项目与导包

点击next:

在这里插入图片描述
勾上后点击next:
在这里插入图片描述
输入项目名点击next:
在这里插入图片描述
导入jar包:

链接:https://pan.baidu.com/s/1f2350hIxvvxPmLbc-zevFQ

提取码:kddz

二.演示

我们先来看一个例子:

index.jsp:

<%@ page import="java.util.Date" %><%-- Created by IntelliJ IDEA. --%><%@ page contentType="text/html;charset=UTF-8" language="java" %><%@ taglib prefix="o" uri="http://www.opensymphony.com/oscache" %>              当前时间:<%=new Date()%>
缓存的时间:<%=new Date()%>

项目部署后:

在这里插入图片描述
发现缓存的时间在刷新后一直没有变化。我们需要注意原理:

在<o:cache>标签配置后,它里面的内容会被缓存起来,这个缓存机制是利用map对象来存储的,他的key默认就是当前访问路径,比如我们上面这个就是localhost:8080,这里注意一下,如果如果我们访问localhost:8080/index.jsp,虽然访问的同一个页面但是由于路径不同那么这是又会重新缓存。当然这个缓存的存活时间默认是3600s,他的作用域是application域。这里的key,存活时间,作用域我们都可以设置属性,下面我们来演示一下

接下来我们来演示:

  当前时间:<%=new Date()%>
缓存的时间:<%=new Date()%>

上面表示缓存的作用域是session域(检验方式就是用不同的浏览器来访问看结果是否一致,time=5代表缓存的存活时间是5skey的值是new Date())

在这里插入图片描述
上面这里的缓存其实生效了,只是由于我们的key是变化的。再来看一个例子演示:

  当前时间:<%=new Date()%>
缓存的时间:<%=new Date()%>

在这里插入图片描述

在3秒内缓存时间一直没有变化,经过3s后缓存时间到了被销毁,此时访问重新创建。
上面两个例子没有演示session的作用,读者可以自己演示。

三.缓存的持久化

最后我们讲一下缓存的持久化。

首先我们在创建下面文件(注意我们的文件必须在classpath路径下)
在这里插入图片描述

cache.memory=false

cache.persistence.class=com.opensymphony.oscache.plugins.diskpersistence.DiskPersistenceListener
cache.path=D:\testCache

测试发现我们的缓存数据到了硬盘上:

在这里插入图片描述

转载地址:http://yalzi.baihongyu.com/

你可能感兴趣的文章
快速幂
查看>>
vector.reserve and resize &&vector与map结合
查看>>
最长公共子序列
查看>>
计算几何
查看>>
求解方程
查看>>
太弱了。。水题
查看>>
位运算(含应用)
查看>>
野指针与空指针
查看>>
图文混排效果
查看>>
urllib2.urlopen超时问题
查看>>
魏兴国:深入浅出DDoS攻击防御
查看>>
使连续的参考文献能够中间用破折号连起来
查看>>
Discover Feature Engineering, How to Engineer Features and How to Get Good at It
查看>>
36辆车,6条跑道,无计时器,最少几次比赛可以选出前三
查看>>
matlab2012b与matlab7.1执行set(gca,'Yscale','log')之后画到的直方图结果居然不同
查看>>
回文题
查看>>
AJAX应用之注册用户即时检测
查看>>
File 类小结
查看>>
java除去字符串空格
查看>>
jsp 2.0标记文件
查看>>