文档章节

ehcache springmvc 整合

 小南风
发布于 2017/04/08 12:49
字数 576
阅读 20
收藏 0

ehcache-local.xml文件

<?xml version="1.0" encoding="UTF-8"?>
<ehcache updateCheck="false" name="defaultCache">

	<diskStore path="../temp/springbaseEhCache" />

	<!-- 默认缓存配置. 自动失效:最后一次访问时间间隔300秒失效,若没有访问过自创建时间600秒失效。-->
	<defaultCache maxEntriesLocalHeap="1000" eternal="false" timeToIdleSeconds="300" timeToLiveSeconds="600"
		overflowToDisk="true" statistics="true"/>
	
	<!-- 系统缓存 -->
	<cache name="sysCache" maxEntriesLocalHeap="1000" eternal="true" overflowToDisk="true" statistics="true"/>
	
	<!-- 用户缓存 -->
	<cache name="userCache" maxEntriesLocalHeap="1000" eternal="true" overflowToDisk="true" statistics="true"/>
	
	<!-- 集团缓存 -->
	<cache name="corpCache" maxEntriesLocalHeap="1000" eternal="true" overflowToDisk="true" statistics="true"/>
	
	<!-- 内容管理模块缓存 -->
	<cache name="cmsCache" maxEntriesLocalHeap="1000" eternal="true" overflowToDisk="true" statistics="true"/>
    
	<!-- 工作流模块缓存 -->
	<cache name="actCache" maxEntriesLocalHeap="100" eternal="true" overflowToDisk="true" statistics="true"/>
	
    <!-- 简单页面缓存 -->
    <cache name="pageCachingFilter" maxEntriesLocalHeap="1000" eternal="false" timeToIdleSeconds="120"
    	timeToLiveSeconds="120" overflowToDisk="true" memoryStoreEvictionPolicy="LFU" statistics="true"/>
	
	<!-- 系统活动会话缓存 -->
    <cache name="activeSessionsCache" maxEntriesLocalHeap="10000" eternal="true" overflowToDisk="true"
           diskPersistent="true" diskExpiryThreadIntervalSeconds="600" statistics="true"/>
    	
</ehcache>

spring-context.xml

 	<!-- 缓存配置 -->
	<bean id="cacheManager" class="org.springframework.cache.ehcache.EhCacheManagerFactoryBean">
		<property name="configLocation" value="classpath:cache/ehcache-local.xml" />
	</bean>

Controller

package com.tiger;



import java.io.Serializable;

import javax.servlet.http.HttpServletRequest;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;

import net.sf.ehcache.Cache;
import net.sf.ehcache.CacheManager;
import net.sf.ehcache.Element;


@Controller
@RequestMapping(value="ehcache")
public class EhCache {
	@Autowired
	private CacheManager cacheManager;
	
	
	private String cacheName="activeSessionsCache";
	
	
	
	@RequestMapping(value="index")
	public   String   test(){
		return "views/ehcache";
	}
	
	@ResponseBody
	@RequestMapping(value="add",produces="text/html;charset=UTF-8")
	public   Object   addEache(HttpServletRequest request){
		Cache cache = cacheManager.getCache(cacheName);
		
		String key = request.getParameter("key");
		String value = request.getParameter("value");
		System.out.println("key="+key+"--value="+value);
		Element element = new Element(key, value);
		cache.put(element);
		return "添加成功!";
	}
	
	@ResponseBody
	@RequestMapping(value="show" ,produces="text/html;charset=UTF-8")
	public   Object   show(HttpServletRequest request){
		Cache cache = cacheManager.getCache(cacheName);
		String key = request.getParameter("key");
		Element element = cache.get(key);
		if(element!=null)
		{
			Object objectValue = element.getObjectValue();
			System.out.println(objectValue);
			return objectValue;
		}
		return "空";
	}
	@ResponseBody
	@RequestMapping(value="del",produces="text/html;charset=UTF-8")
	public   Object   delete(HttpServletRequest request){
		Cache cache = cacheManager.getCache(cacheName);
		String key = request.getParameter("key");
		cache.remove(key);
		return "已经删除";
	}

}

jsp/


<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>

<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>

<head>



<script type="text/javascript" src="/springbase/static/jquery/jquery-1.8.3.min.js"></script>

<script type="text/javascript">

	function add(){
	    $.ajax({
            url :"/springbase/ehcache/add",
            type: 'post',
            dataType : "text",
            data : {key:$('#key').val(),value:$('#value').val()},
            async : false, // 同步请求
            success : function(data) {
            	  $('#showResult').text(data)
            }
        });
	}
	function del(){
	    $.ajax({
            url :"/springbase/ehcache/del",
            type: 'post',
            dataType : "text",
            data : {key:$('#key').val()},
            async : false, // 同步请求
            success : function(data) {
            	  $('#showResult').text(data)
            }
        });
	}
	function show(){
	    $.ajax({
            url :"/springbase/ehcache/show",
            type: 'post',
            dataType : "text",
            data : {key:$('#key').val()},
            async : false, // 同步请求
            success : function(data) {
            	  $('#showResult').text(data)
            }
        });
	}

</script>

</head>

<body>
<a>Hello World!---jsp/index--1</a>

<h3>cc--${name}</h3>


key=  <input  type="text"   id="key"  name="key"    value="name"> <br>
value=<input  type="text" id="value"  name="value"  value="张三"> <br>

<a  id="showResult"></a>
<br>

<input  type="button"  onclick="add();"  value="添加" >  <br>

<input  type="button"  onclick="del();"  value="del3">

<input  type="button"  onclick="show();"  value="show">

</body>
</html>

 

© 著作权归作者所有

共有 人打赏支持
粉丝 4
博文 162
码字总数 59007
作品 0
私信 提问
memcached与spring提供的cache接口整合

spring 从3.x就提供了cache接口,spring默认实现的缓存是ehcache,spring的cache接口: public interface Cache { String getName(); Object getNativeCache(); ValueWrapper get(Object ke......

张升强
2015/01/16
0
1
在Spring、Hibernate中使用Ehcache缓存

在Spring、Hibernate中使用Ehcache缓存 前一篇http://www.cnblogs.com/hoojo/archive/2012/07/12/2587556.html介绍了Ehcache整合Spring缓存,使用页面、对象缓存;这里将介绍在Hibernate中使...

DavidBao
2015/05/15
0
0
spring+ehcache+注解的使用

spring+ehcache+注解的使用 为了提高系统的运行效率,引入缓存机制,减少数据库访问和磁盘IO。下面说明一下ehcache和spring整合配置。 总共需要四步,引入包,添加ehcache.xml文件,在sprin...

风中帆
2015/11/04
0
0
spring基于注解Ehcache缓存整合

今天下午做了一下缓存整合在项目中,以前没有用过也没有学过。都知道spring已经对Ehcache进行了很好的支持,我的spring版本是3.2.2在spring-context-support.jar包中可以看到.以前的版本可能...

zhaoxj
2013/08/05
0
28
spring 3.1 配置 ehcache 设置最大值问题

现在公司的框架使用的是 spring3 + myibatis 原来没有缓存,查了下资料发现,spring 3以后整合ehcache很方便,今天就尝试整合了下,用的是spring 注解方式,现在有这样一个问题 在ehcache配置...

slliver
2015/02/09
314
2

没有更多内容

加载失败,请刷新页面

加载更多

C++ vector和list的区别

1.vector数据结构 vector和数组类似,拥有一段连续的内存空间,并且起始地址不变。 因此能高效的进行随机存取,时间复杂度为o(1); 但因为内存空间是连续的,所以在进行插入和删除操作时,会造...

shzwork
今天
3
0
Spring之invokeBeanFactoryPostProcessors详解

Spring的refresh的invokeBeanFactoryPostProcessors,就是调用所有注册的、原始的BeanFactoryPostProcessor。 相关源码 public static void invokeBeanFactoryPostProcessors(Configu......

cregu
昨天
4
0
ibmcom/db2express-c_docker官方使用文档

(DEPRECIATED) Please check DB2 Developer-C Edition for the replacement. What is IBM DB2 Express-C ? ``IBM DB2 Express-C``` is the no-charge community edition of DB2 server, a si......

BG2KNT
昨天
3
0
Ubuntu 18.04.2 LTS nvidia-docker2 : 依赖: docker-ce (= 5:18.09.0~3-0~ubuntu-bionic)

平台:Ubuntu 18.04.2 LTS nvidia-docker2 版本:2.0.3 错误描述:在安装nvidia-docker2的时候报dpkg依赖错误 nvidia-docker2 : 依赖: docker-ce (= 5:18.09.0~3-0~ubuntu-bionic) 先看一下依......

Pulsar-V
昨天
4
0
学习笔记1-goland结构体(struct)

写在前面:若有侵权,请发邮件by.su@qq.com告知。 转载者告知:如果本文被转载,但凡涉及到侵权相关事宜,转载者需负责。请知悉! 本文永久更新地址:https://my.oschina.net/bysu/blog/3036...

不最醉不龟归
昨天
4
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部