作为一个流行的持久化工具,缓存必然是缺少不了的组件。通过这篇文章,就让我们来了解一下一级缓存与二级缓存的实现,具有一定的参考价值,感兴趣的小伙伴们可以参考一下。

缓存

作为一个流行的持久化工具,缓存必然是缺少不了的组件。通过这篇文章,就让我们来了解一下的缓存。

缓存类型

说起的缓存,了解过的同学都知道,中可以有两种缓存类型:

一级缓存

作为自带的缓存,我们通过代码来分析一下其原理。

首先,我们来看下一级缓存的效果。

缓存级数_缓存级别statement_mybatis一级缓存和二级缓存

缓存级数_缓存级别statement_mybatis一级缓存和二级缓存

缓存级数_缓存级别statement_mybatis一级缓存和二级缓存

从上述代码可以看出:

中集成了一级缓存,一级缓存为(永久缓存?)的对象,其也是实现了Cache接口的对象,并且其存储结果就是简单的。

并且从代码上来看,一级缓存是无法禁止的。但是如果一个查询,我们就是不想让其从缓存中获取,必须从数据库查询,那我们岂不是无法处理了?

缓存级别statement_缓存级数_mybatis一级缓存和二级缓存

二级缓存

的二级缓存是需要借助第三方的缓存来实现,常用的有或者redismybatis一级缓存和二级缓存,其存储类型不同,但是在中的使用方式是一样的,简单处理,我们使用来说明。

通常来说,在中启用二级缓存mybatis一级缓存和二级缓存,我们需要以下的步骤:

1、在项目中引入模块和-模块

2、在项目中加如配置文件

3、在配置文件中我们需要在中配置属性;

4、在配置文件中配置cache属性,并指定缓存的实现类;

5、在中配置属性为”true“

缓存级数_缓存级别statement_mybatis一级缓存和二级缓存

缓存级数_缓存级别statement_mybatis一级缓存和二级缓存

缓存级别statement_缓存级数_mybatis一级缓存和二级缓存

总结:

1、的缓存处理,都交由来处理,一级缓存是由处理,二级缓存则由处理;

2、中如果配置了为true,那么不论是一级缓存还是二级缓存都会失效;

3、要启用二级缓存,需要在中配置为true。

到此这篇关于 一级缓存与二级缓存的实现的文章就介绍到这。

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注