简介

j2cache是开源的二级缓存库,支持实现:本地缓存Ehcache、Caffeine、远程缓存Redis、Memcached。常见解决方案 如一级缓存使用Ehcache、二级缓存使用Redis。

上篇描述的阿里开源的jetcache,是支持二级缓存,只是相比j2cache不够灵活,还不够完善,前者是缓存统一操作规范,而j2cache是专注二级缓存库。

与SpringBoot整合

本文一级缓存:Caffeine、二级缓存:Redis。

pom.xml 依赖

<dependency><groupId>net.oschina.j2cache</groupId><artifactId>j2cache-core</artifactId><version>2.8.4-release</version>
</dependency>
<dependency><groupId>net.oschina.j2cache</groupId><artifactId>j2cache-spring-boot2-starter</artifactId><version>2.8.0-release</version>
</dependency>

application.yml 配置

# 设置j2cache配置文件
j2cache:config-location: j2cache.properties

j2cache.properties

# 一级缓存
j2cache.L1.provider_class=caffeine
# 二级缓存
j2cache.l2-cache-open=true
j2cache.L2.provider_class=net.oschina.j2cache.cache.support.redis.SpringRedisProvider
j2cache.L2.config_section=redis
redis.hosts=192.168.126.181:6379
redis.timeout=2000
redis.password=123456
# 指定模式,可以消除一行警告信息
redis.mode=single
# 指定命名空间,可以作为key的公共前缀
redis.namespace=j2cache
# 一级缓存中的数据如何到达二级缓存
j2cache.broadcast=net.oschina.j2cache.cache.support.redis.SpringRedisPubSubPolicy

业务代码

import lombok.AllArgsConstructor;
import lombok.Data;
import net.oschina.j2cache.CacheChannel;
import net.oschina.j2cache.CacheObject;
import org.springframework.stereotype.Service;import java.util.ArrayList;
import java.util.List;@Service
public class UserService {@Data@AllArgsConstructorpublic static class User {private String name;private Integer age;}// 模拟数据库List<User> userList = new ArrayList<>();private CacheChannel cacheChannel;public void add (User user) {// 插入数据库userList.add(user);// 设置缓存cacheChannel.set("user", user.getName(), user);}public void query(String name){CacheObject user = cacheChannel.get("user", name);}
}

二级缓存j2cache和SpringBoot整合相关推荐

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

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

  2. SpringBoot整合j2cache缓存

    jetcache可以在限定范围内构建多级缓存,但是灵活性不足,不能随意搭配缓存,本节介绍一种可以随意搭配缓存解决方案的缓存整合框架,j2cache.下面就来讲解如何使用这种缓存框架,以Ehcache与 ...

  3. 8分钟带你学会SpringBoot整合Redis来实现缓存技术

    1.概述 随着互联网技术的发展,对技术要求也越来越高,所以在当期情况下项目的开发中对数据访问的效率也有了很高的要求,所以在项目开发中缓存技术使用的也越来越多,因为它可以极大的提高系统的访问速度,关于缓 ...

  4. SpringBoot整合第三方技术学习笔记(自用)

    SpringBoot整合第三方技术学习笔记 搬运黑马视频配套笔记 KF-4.数据层解决方案 KF-4-1.SQL 回忆一下之前做SSMP整合的时候数据层解决方案涉及到了哪些技术?MySQL数据库与My ...

  5. Mybatis 一级缓存,Mybatis 二级缓存,Mybatis 缓存失效

    Mybatis 一级缓存,Mybatis 二级缓存,Mybatis 缓存失效 ================================ ©Copyright 蕃薯耀 2021-06-24 ht ...

  6. Mybatis的一级缓存和二级缓存详解

    注:本笔记是根据尚硅谷的MyBatis视频记录的 对于任何一个持久层框架,都有缓存机制:缓存在电脑中有一块真实的存储空间(https://baike.baidu.com/item/%E7%BC%93% ...

  7. 【SpringBoot应用篇】SpringBoot集成j2cache二级缓存框架

    [SpringBoot应用篇]SpringBoot集成j2cache二级缓存框架 j2cache介绍 j2cache入门使用 pom application.yml caffeine.properti ...

  8. SpringBoot整合Redis配置MyBatis二级缓存

    目录 写在前面 源码获取 一.MyBatis缓存机制 1.1.一级缓存 1.2.二级缓存 二.集成Redis 2.1.安装Redis 2.2.项目引入Redis 2.2.1.Maven依赖 2.2.2 ...

  9. SpringBoot整合Redis缓存

    SpringBoot整合Redis缓存 一.缓存概念知识 1.是什么缓存 2.缓存的优缺点 3.为什么使用缓存 二.Redis概念知识 1.Redis简介 2.为什么用Redis作为缓存 3.Redi ...

  10. SpringBoot整合Redis+Redis缓存应用+Redis实现Session共享+...

    一.SpringBoot整合Redis 1.导入依赖 <!--存在Redis依赖--> <dependency><groupId>org.springframewo ...

最新文章

  1. jQuery API之each、children、index的使用
  2. 让协同工作更加轻松——Office 2007面面观之(8)
  3. python程序的基本结构知识点总结_Python知识点总结
  4. 一道关于完全二叉树的考研题
  5. IE8提示JS错误(KB927917)终极解决方法
  6. 横空出世,席卷互联网--评微软等公司数据结构和算法面试100题
  7. CSS transform 使 fixed 定位失效?
  8. 智能优化算法:算术优化算法-附代码
  9. C语言 execve()函数使用方法
  10. 古文观止卷七_陈情表_李密
  11. NVI(Non-Virtual Interface)手法
  12. bigo2020.算法一面(已凉)
  13. 玫瑰编程--python
  14. 第四章 玩转捕获数据包
  15. JVM参数详细配置说明
  16. 全球与中国制药工艺用隔膜阀市场现状及未来发展趋势
  17. dw网页制作入学教程_网站制作之dreamweaver入门
  18. 使用andorid studio获取经纬度信息
  19. java weblogic.wlst_Weblogic - 使用Wlst获取部署类型
  20. Android 花里胡哨的加载Loading动画

热门文章

  1. Linux中更换软件源以及更新软件过程中报错的解决方法
  2. Altium Designer中的长度单位如何转换?
  3. 综述文章笔记——《A Survey on Traffic Signal Control Methods》等
  4. 百度图像识别java使用笔记
  5. 快速傅里叶变换(FFT):蝶形算法(CT蝴蝶、GS蝴蝶)
  6. php 万能密码,网络安全系列之十 万能密码登录网站后台
  7. C语言数组指针和指向数组的指针变量—数组名作函数参数.doc
  8. 计算机三级考点一:宽带城域网的结构
  9. 解决eclipse在编辑时字体变成繁体字的问题
  10. Label Matrix v8 怎样做二次开发