SpringBoot配置第三方专业缓存框架j2cache

j2cache的使用

这不是一个缓存

这是一个缓存框架

J2Cache, 也称为Java Cache或JSR-107,是一个用于缓存管理的标准API,它允许开发者在Java应用程序中实现分布式、基于内存的缓存。J2Cache主要通过javax.cache.Cache接口提供功能,用于存储和检索数据,以提高性能和减少数据库访问。

以下是J2Cache的一些关键点:

  1. 缓存存储:数据存储在内存中,提供快速的读取速度。
  2. 自动失效策略:支持设置缓存数据的过期时间,当数据不再有效时会自动从缓存中清除。
  3. 分布式缓存:通过配置,可以在分布式系统中共享缓存,提高可用性和可扩展性。
  4. 缓存替换策略:定义了当缓存满时,如何选择数据进行替换的策略,如LRU(最近最少使用)等。
  5. 事件通知:当缓存发生更新、删除等操作时,可以通过事件监听器通知其他部分的代码。
  6. 集成各种实现:J2Cache规范是开放的,许多第三方实现如Ehcache、Infinispan等都符合这个标准。

我们可以把其他技术整合到j2cahe上 形成一个缓存框架、

看一眼业务层接口的实现类

导入依赖的坐标

<!--        j2cache的core依赖-->
        <dependency>
            <groupId>net.oschina.j2cache</groupId>
            <artifactId>j2cache-core</artifactId>
            <version>2.8.0-release</version>
        </dependency>

<!--        j2cache的起步依赖-->
        <dependency>
            <groupId>net.oschina.j2cache</groupId>
            <artifactId>j2cache-spring-boot2-starter</artifactId>
            <version>2.8.0-release</version>
        </dependency>

我们查看maven工程

发现默认导入了一个redis

我们再导入Ehcache的坐标

<!--        ehcache的依赖-->
        <dependency>
            <groupId>net.sf.ehcache</groupId>
            <artifactId>ehcache</artifactId>
        </dependency>

这代表我们要使用的框架j2cache

以及的我们要使用的两个缓存技术

redis和j2cache

接下来要在yml文件里进行配置

j2cache:
  config-location: j2cache.properties

指定j2cache的配置文件是j2cache.properties

我们创建一个配置文件

.propertis后缀的配置文件是没有键入提示的

我们书写比较困难

在maven工程里搜索j2cache

找到了一系列的配置文件

我们直接粘贴到resources文件夹

覆盖原有的文件夹

我们看ehcache3的配置

发现有一句话说

别删掉默认的配置

挺有意思的

还有个j2cache的配置

设置一级缓存和二级缓存的配置

我们把多余的配置文件删掉

j2cache配置文件里面的内容

就是辅助我们操作的

我们全删掉

然后配置缓存

先配置一级缓存

再配置二级缓存

然后配置一级缓存的数据如何到达二级缓存

重点

虽然说我还没懂

接下来我们就能操作缓存

注入一个缓存对象

然后进行操作

分为放入缓存 取出缓存两种

最后我们用postman进行测试

即可

个人号推广

博客主页

多多!-CSDN博客

Web后端开发

https://blog.csdn.net/qq_30500575/category_12624592.html?spm=1001.2014.3001.5482

Web前端开发

https://blog.csdn.net/qq_30500575/category_12642989.html?spm=1001.2014.3001.5482

数据库开发

https://blog.csdn.net/qq_30500575/category_12651993.html?spm=1001.2014.3001.5482

项目实战

https://blog.csdn.net/qq_30500575/category_12699801.html?spm=1001.2014.3001.5482

算法与数据结构

https://blog.csdn.net/qq_30500575/category_12630954.html?spm=1001.2014.3001.5482

计算机基础

https://blog.csdn.net/qq_30500575/category_12701605.html?spm=1001.2014.3001.5482

回忆录

https://blog.csdn.net/qq_30500575/category_12620276.html?spm=1001.2014.3001.5482

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/720989.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

【漏洞复现】CRMEB开源电商系统 /api/products SQL注入漏洞(CVE-2024-36837)

0x01 产品简介 CRMEB开源电商系统是一款由西安众邦网络科技有限公司打造的全栈式电商解决方案&#xff0c;旨在为开发者和商家提供高性能、智能化的电商平台服务。该系统集成了CRM(客户关系管理)、ERP(企业资源规划)和EB(电子商务)的功能&#xff0c;通过深度结合这些功能&…

图神经网络入门(1)-networkx

简介 NetworkX是一个Python语言的图论建模工具&#xff0c;用于创建、操作复杂网络结构&#xff08;如图、有向图等&#xff09;。它提供了许多用于分析网络、生成随机网络、以及可视化网络的函数和工具。用户可以利用NetworkX来研究复杂网络的拓扑结构、节点间的关系以及路径查…

力扣每日一题 6/18 字符串/模拟

博客主页&#xff1a;誓则盟约系列专栏&#xff1a;IT竞赛 专栏关注博主&#xff0c;后期持续更新系列文章如果有错误感谢请大家批评指出&#xff0c;及时修改感谢大家点赞&#x1f44d;收藏⭐评论✍ 2288.价格减免 【中等】 题目&#xff1a; 句子 是由若干个单词组成的字符…

自动驾驶规划-RTT* 算法 【免费获取Matlab代码】

目录 1.算法原理3.结果展示4.参考文献5.代码获取 1.算法原理 RRT(Rapidly-Exploring Random Trees) 快速随机扩展树&#xff0c;是一种单一查询路径规划算法。RRT 将根节点作为搜索的起点&#xff0c;然后通过随机撒点采样增加叶子节点的方式&#xff0c;生成一个随机扩展树&a…

基于IDEA的Maven简单工程创建及结构分析

目录 一、用 mvn 命令创建项目 二、用 IDEA 的方式来创建 Maven 项目。 &#xff08;1&#xff09;首先在 IDEA 下的 Maven 配置要已经确保完成。 &#xff08;2&#xff09;第二步去 new 一个 project &#xff08;创建一个新工程&#xff09; &#xff08;3&#xff09;…

MapReduce基础编程项目实践

一、项目实现效果概述 在accounts.txt文件中存储如下&#xff0c;第一列为金额大小&#xff0c;第二列表示收入、支出&#xff08;0表示收入&#xff0c;1表示支出&#xff09;&#xff0c;第三列表示金额出入的月份。我们要通过MapReduce计算每个月过去后的结余&#xff0c;并…

【日常记录】【vue】vite-plugin-inspect 插件的使用

文章目录 1、vite-plugin-inspect2、安装3、使用4、链接 1、vite-plugin-inspect vite-plugin-inspect 可以让开发者在浏览器端就可以看到vue文件编译后的代码、vue文件的相互依赖关系 2、安装 npm i -D vite-plugin-inspect// vite.config.ts import Inspect from vite-plugi…

单一管理平台 - Enterprise Global Console

大约三年前&#xff0c;当我们向客户和社区推出控制台时&#xff0c;MinIO 的世界发生了变化。这是可访问性的巨大飞跃。可靠的 CLI 和 MC 命令很快让位于我们新的基于浏览器的 GUI 的速度和直观可用性。对于开发人员和企业 IT 管理员来说&#xff0c;这是一个游戏规则的改变者…

关于一元方程求根中牛顿迭代法的分析

文末含有程序源代码以及可执行exe文件&#xff0c;文中部分内容参考网上博客以及GPT协助&#xff0c;希望能对你有所帮助~ 一、理论知识简述 牛顿迭代法&#xff08;Newton’s Method&#xff09;&#xff0c;也称为牛顿-拉弗森方法&#xff08;Newton-Raphson Method&#xf…

Python 条件控制语句

条件控制语句是编程中用于基于特定条件执行不同代码块的一种结构。Python提供了几种条件控制语句&#xff0c;包括if、elif和else。这些语句允许程序根据不同的条件执行不同的代码路径 if 语句 if语句是最基本的条件控制语句&#xff0c;用于检查一个条件是否为真。如果条件为真…

C++ 53 之 继承中同名成员处理

#include <iostream> #include <string> using namespace std;class Base06{ public:int m_a;Base06(){this->m_a 10;}void fun(){cout << "父类的fun函数" << endl;}void fun(int a){cout << "父类的fun(int a)函数" &…

简易计算器需求报告

1. &#xff08;简易计算器&#xff09; 需求说明书 文件编号&#xff1a;2022[1] [木柚2] 06[3] [木柚4] 01[5] [木柚6] 完成日期&#xff1a;2024年 06月18日 编制&#xff1a; 易正阳 日期&#xff1a;2024年6月18日 审核&#xff1a;张正 日期&#xff1a;2024年6月18…

LLM 理论知识

LLM 理论知识 一.大型语言模型LLM1.1 大型语言模型 LLM 的概念1.2 常见的 LLM 模型1.2.1 闭源 LLM (未公开源代码)1.2.1.1 GPT 系列1.2.1.1.1 ChatGPT1.2.1.1.2 GPT-4 1.2.1.2 Claude 系列1.2.1.1.3 PaLM/Gemini 系列1.2.1.1.4 文心一言1.2.1.1.5 星火大模型 1.2.2. 开源 LLM1.…

gitblit git pycharm 新建版本库及push备忘

在终端l中输入ssh,如果有消息弹出说明安装成功。 // 在任意路径打开GIT BASH,执行以下命令,期间所有询问可以直接Enter跳过 ssh-keygen -t rsa -C "注册Gitlab的邮箱" “”之内可以任何文字,备注提示作用。 设置用户名和邮箱 已经设置的可以检查一下。 #设置用…

Git--Part1--基础操作

Git简介 Git 是一个开源的分布式版本控制系统&#xff0c;由 Linus Torvalds 于 2005 年开发&#xff0c;主要用于源代码管理。Git 允许多名开发者共同合作处理同一个项目&#xff0c;跟踪每个文件的修改&#xff0c;并且在必要时回滚到之前的版本。 Linus Torvalds是Linux操作…

SpringMVC—RequestMapping注解

一、RequestMapping注解 RequestMapping注解&#xff1a;是Spring MVC框架中的一个控制器映射注解&#xff0c;用于将请求映射到相应的处理方法上&#xff0c;具体来说&#xff0c;他可以将指定URL的请求绑定到一个特定的方法或类上&#xff0c;从而实现对请求的处理和响应。 …

004-配置交换机ssh远程登录

配置交换机ssh远程登录 注意事项 要远程的本机电脑必须与该交换机在同一个网段&#xff0c;以下实验在172.16.12段下模拟&#xff0c;本地ip设置为172.16.12.10&#xff0c;交换机的ip设置为172.16.12.254 将密码设置为明文&#xff08;simple&#xff09;是不安全的&#x…

常见的网络设备

引入 园区网络安全部署场景 1、路由器&#xff1a; 跨网段通信设备 。 2、交换机&#xff1a; 同网段或跨网段通信设备。 3、AntiDDoS &#xff1a; DDoS 防御系统&#xff0c;通常旁挂部署于网络出口处&#xff0c; 位于防火墙上游&#xff0c;用于减轻防火墙报文处理负担。 …

专业技能篇---计算机网络篇

文章目录 前言计算机网络基础一、网络分层模型 HTTP一、从输入URL到页面显示发生了什么&#xff1f;二、Http的状态码有哪些&#xff1f;三、 HTTP与HTTPS有什么区别&#xff1f;四、URI 和 URL 的区别是什么?五、Cookie和Session有什么区别&#xff1f;六、GET与POST 前言 主…

【分布式事务1-seata客户端源码分析】

文章目录 启动seata客户端1.导入依赖2.自动装配 发送请求的核心方法客户端开启事务的核心流程服务端分布式事务的处理机制 启动seata客户端 1.导入依赖 <parent><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-parent…