配置

boot依赖

        <dependency><groupId>com.alicp.jetcache</groupId><artifactId>jetcache-starter-redis</artifactId><version>2.5.15</version></dependency>

连接


jetcache:statIntervalMinutes: 15areaInCacheName: falselocal:default:type: linkedhashmapkeyConvertor: fastjsonlimit: 100remote:default:type: rediskeyConvertor: fastjsonvalueEncoder: javavalueDecoder: javapoolConfig:minIdle: 5maxIdle: 20maxTotal: 50host: 47.103.116.160port: 8226password: Zc2019YuRenJie

配置,EnableMethodCache,EnableCreateCacheAnnotation这两个注解分别激活Cached和CreateCache注解

@Configuration
@EnableMethodCache(basePackages = "org.study")
@EnableCreateCacheAnnotation
public class JetCacheConfig {
}

使用方法1,@CreateCache

@Service
public class JetCacheServiceImpl implements JetCacheService {@CreateCache(name = "user_cache:", expire = 3600, cacheType = CacheType.BOTH, localLimit = 50)private Cache<Integer, User> userCache;@Overridepublic User getUserById(Integer userId) {User user = userCache.get(userId);if (user == null) {user = new User(userId, "lipo");userCache.put(userId, user);}return user;}@Overridepublic void updateUser(User user) {userCache.put(user.getId(), user);System.out.println("updateUser: " + user);}@Overridepublic void deleteUser(Integer userId) {userCache.remove(userId);System.out.println("deleteUser :" + userId);}
}
@Data
@AllArgsConstructor
@NoArgsConstructor
public class User implements Serializable {private Integer id;private String name;
}

name属性,用冒号结尾,多个缓存可以合拢。保存的是二进制数据,看不了内容。实体类必须实现序列化。

方法二,方法注解

public interface JetCacheService2 {@Cached(name = "student_cache:", key = "#id", expire = 3600)User getUserById(Integer id);@CacheUpdate(name = "student_cache:", key = "#user.id", value = "#user")void updateUser(User user);@CacheInvalidate(name = "student_cache:", key = "#id")void deleteUser(Integer id);
}

1.在接口方法上加注解,name以冒号结尾,key用spel表达式。
2.name如果不指定,默认是类的全限定名(包名都用首字母代替),结尾没有冒号,多个缓存不合并,显示不好,所以name必须手动指定。

3.注解用在接口方法和接口实现类的方法上,都有效果,在实现类上更好。

4.方法二不修改逻辑代码,方法一需要修改业务逻辑,所以使用方法二。

项目https://github.com/mingwulipo/redis-demo

jetCache使用相关推荐

  1. Redis客户端JetCache的单机版和集群版的配置

    jetcache基础应用参考这个:阿里巴巴开源的缓存框架JetCache创建缓存 1.JetCache的jedis配置 https://github.com/alibaba/jetcache/wiki ...

  2. 阿里巴巴开源的缓存框架JetCache创建缓存

    官网:https://github.com/alibaba/jetcache/wiki/CacheAPI_CN ======================= 多层嵌套缓存无效的问题: https:/ ...

  3. 阿里开源的缓存框架JetCache,实现spring二级缓存

    之前一直在用Spring Cache进行接口数据的缓存,主要是Spring Cache在对具体key缓存失效时间的设置不是很方法,还要自己去扩展,无意中发现了阿里的JetCache.大部分的需求都能满 ...

  4. 205. jetcache:你需要知道的小技巧

    205. jetcache:你需要知道的小技巧 [视频&交流平台] à SpringBoot视频:http://t.cn/R3QepWG à SpringCloud视频:http://t.cn ...

  5. 阿里巴巴开源的通用缓存访问框架JetCache介绍

    摘要: JetCache是由阿里巴巴开源的通用缓存访问框架,如果你对Spring Cache很熟悉的话,请一定花一点时间了解一下JetCache,它更好用.JetCache可以做类似Spring Ca ...

  6. 使用Jetcache过程的bug之Buffer underflow

    业务场景 - 使用Jetcache+springCloud相关组件 - 线上A服务缓存用户信息到jetcache中,但是其他服务读取不到缓存,本地可以正常获取. 猜测 - 怀疑是key错误,但是代码没 ...

  7. SpringBoot整合(四)整合Ehcache、Redis、Memcached、jetcache、j2cache缓存

    ​ 企业级应用主要作用是信息处理,当需要读取数据时,由于受限于数据库的访问效率,导致整体系统性能偏低. ​ 为了改善上述现象,开发者通常会在应用程序与数据库之间建立一种临时的数据存储机制,该区域中的数 ...

  8. 缓存篇(二)- JetCache

    本文将由浅入深,从基本特性介绍,从简单demo使用,到JetCache源码分析,到Spring Aop的源码分析,到如何利用这些知识去自己尝试写一个自己的cache小demo,去做一个全面的概括. * ...

  9. 【Java】- 缓存之JetCache基础篇

    Java缓存之JetCache 写在前面 为什么使用缓存 使用场景 简介 特性 缓存类型-两级缓存 本地缓存 远程(访问Redis的客户端) 区别 Spring Cache: JetCache 常用注 ...

最新文章

  1. 测试MM32 MicroPython测试电路板的基本功能
  2. Xamarin.iOS项目编译提示Could not AOT the assembly
  3. Gogland IDE Run/Debug Configurations 配置说明
  4. RabbitMQ Network Partitions 处理策略
  5. 分享一个windows下检测硬件信息的bat脚本
  6. 屏蔽节点的鼠标点击选择文字的方法
  7. Java基于springboot办公OA管理系统源码
  8. 局域网内连接MySQL数据库
  9. 如何压缩Word文档大小?这个方法太简单啦!
  10. 一个草根程序员如何进入BAT
  11. java摩托游戏_盘点那些JAVA游戏第3期
  12. 东京丛林 扮演动物的游戏
  13. 网络技术领域专业术语解释大全-170个术语
  14. 【proteus仿真】89C51单片机实现十字路口的交通灯控制系统代码
  15. 全球与中国工业防护服行业调查与未来发展趋势研究报告
  16. (史上最详细)C++实战-基于STL 演讲比赛流程管理系统
  17. Excel VBA教程–如何使用Visual Basic在电子表格中编写代码
  18. 求矩形中心点坐标编程c语言,三角函数在图形学里的应用(四) ​已知矩形的中心点、边长、phi求四个顶点的坐标...
  19. Windows系统的静态路由配置
  20. 收到字节跳动的面试邀请,我却掉了链子

热门文章

  1. ES6学习(十一)—Class 的基本语法和继承
  2. python map lambda 分割字符串_[转] Python特殊语法:filter、map、reduce、lambda
  3. 地推不同HTTP协议解决的问题
  4. 长辈退休金很高是什么体验?
  5. 农村树上的野菜“刺老芽”,价格比肉还贵,这是为啥呢?
  6. 2021第一场教师招聘考试3.28开始!一个月备考来得及吗?
  7. 男人离婚后一般过得怎么样?
  8. 写了一篇关于餐饮业陷入困境的文章
  9. 经典同步问题一——生产者和消费者问题
  10. vs2019加载调试动态库dll文件