ehcache注解使用问题常见总结

1. 支持缓存的方法最好有传入参数和返回数据

1.1 没有入参将无法自定义key,即无法保证数据更新时实时更新缓存中对应的数据(如果数据不会被改变则忽略)
1.2 没有返回数据的话,当从缓存中获取的数据时,如法获取到数据

2. 不要在类的内部调用支持缓存的方法

2.1 对象内部调用支持缓存的方法是不会触发缓存功能的,因为ehcache要使用代理才可以缓存

3. 使用@CachePut注解时属性key和返回数据类型要一致

3.1 对应的@Cacheable和@CachePut,属性的key要保持一致,key不相同会造成缓存数据与实际数据不一致的问题,即从缓存中获取的不是最新数据
3.2 返回数据类型要一致,返回数据类型不同会导致更新后获取缓存数据时报500错误

ehcache扩展链接

  1. SpringBoot入门六,添加ehcache缓存
  2. 史上最全面的Spring-Boot-Cache使用与整合
  3. 使用spring cache和ehcache之前必须了解的
  4. spring整合ehcache 注解实现查询缓存,并实现实时缓存更新或删除
  5. Spring @Cacheable 的key生成

原文地址:http://blog.51cto.com/1197822/2287855

时间: 2024-07-30 10:32:32

ehcache注解使用问题常见总结的相关文章

spring3.2+ehcache 注解使用

通过spring 拦截,实现颗粒度比较细,容易控制的缓存.了解了下,spring 3.0 以后,应该从3.1 以后吧,注解方式的缓存就已经实现,下面是我自己做的例子,分享给大家: 例子内容介绍: 1.没用数据库,用的集合里面的数据,也就没事务之类的,完成的一个CRUD操作 2.主要测试内容,包括第一次查询,和反复查询,缓存是否生效,更新之后数据同步的问题 3.同时含有一些常用参数绑定等东西 4.为了内容简单,我没有使用接口,就是User,UserControl,UserServer,UserDa

spring + ehcache 注解使用实例

1.pom.xml中添加ehcache依赖包 <dependency>            <groupId>net.sf.ehcache</groupId>            <artifactId>ehcache</artifactId>            <version>2.9.1</version>        </dependency> 2.在classpath下增加ehcache配置文

spring整合ehcache 注解实现查询缓存,并实现实时缓存更新或删除

写在前面:上一篇博客写了spring cache和ehcache的基本介绍,个人建议先把这些最基本的知识了解了才能对今天主题有所感触.不多说了,开干! 注:引入jar <!-- 引入ehcache缓存 --> <dependency> <groupId>net.sf.ehcache</groupId> <artifactId>ehcache</artifactId> <version>2.8.3</version&g

spring4.x hibernate4.x 整合 ehcache 注解 annotate

废话不说 直接贴源码链接 :  https://git.oschina.net/alexgaoyh/alexgaoyh.git 使用ehcache来提高系统的性能,现在用的非常多, 也支持分布式的缓存,在hibernate当中作为二级缓存的实现产品,可以提高查询性能. pom.xml <dependency>     <groupId>org.hibernate</groupId>     <artifactId>hibernate-ehcache</

EhCache 分布式缓存/缓存集群

开发环境: System:Windows JavaEE Server:tomcat5.0.2.8.tomcat6 JavaSDK: jdk6+ IDE:eclipse.MyEclipse 6.6 开发依赖库: JDK6. JavaEE5.ehcache-core-2.5.2.jar Email:[email protected] Blog:http://blog.csdn.net/IBM_hoojo http://hoojo.cnblogs.com/ http://hoojo.blogjava.

Ehcache缓存框架具体解释

一.前言 ehcache是一个比較成熟的java缓存框架.它提供了用内存,磁盘文件存储.以及分布式存储方式等多种灵活的cache管理方案.ehcache最早从hibernate发展而来. 因为3.x的版本号和2.x的版本号API差异比較大.这里直接学习最新版本号的了,可是最后整合spring的时候还是有2.x. 二.安装 因为我的项目是使用maven管理的,因此仅仅要在pom文件里加入例如以下代码就可以. <dependency> <groupId>javax.cache</

Ehcache缓存框架详解

一.前言 ehcache是一个比较成熟的java缓存框架,它提供了用内存,磁盘文件存储,以及分布式存储方式等多种灵活的cache管理方案.ehcache最早从hibernate发展而来.由于3.x的版本和2.x的版本API差异比较大.这里直接学习最新版本的了,但是最后整合spring的时候还是有2.x. 二.安装 由于我的项目是使用maven管理的,因此只要在pom文件中添加如下代码即可. <dependency> <groupId>javax.cache</groupId&

Java 核心技术点之注解

转自:http://www.open-open.com/lib/view/open1473649808122.html 什么是注解 我们都知道在Java代码中使用注释是为了向以后阅读这份代码的人解释说明一些事情,注解是注释的升级版,它可以向编译器.虚拟机等解释说明一 些事情.比如我们非常熟悉的@Override就是一种元注解,它的作用是告诉编译器它所注解的方法是重写父类的方法,这样编译器就会去检查父类是否存在 这个方法,以及这个方法的签名与父类是否相同. 也就是说,注解是用来描述Java代码的,

注解处理101

原文链接http://hannesdorfmann.com/annotation-processing/annotationprocessing101 在这篇博客中,我想解释一下如何写注解处理器.因此,这使我的教程.首先,我打算解释什么是注解处理,你可以用这个强大工具做什么,最后是你不能做什么.在第二步中,我们将逐步实现一个简单地注解处理器. 为了在最开始澄清非常重要的事:我们不是在谈论通过在运行时(运行时 = 应用执行时)使用反射来评估注解.注解处理器发生在编译时(编译时 = java编译器编