java

关注公众号 jb51net

关闭
首页 > 软件编程 > java > MyBatis二级缓存

MyBatis开启二级缓存实现过程解析

作者:viewts

这篇文章主要介绍了MyBatis开启二级缓存实现过程解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

MyBatis的一级缓存是sqlSession作用域的,默认开启,执行DML(insert, update, delete)操作后自动删除。

下面介绍一下如何开启MyBatis的二级缓存,作用域为Mapper:

1.修改config.xml配置文件:

<settings>
  <!-- 开启二级缓存 -->
  <setting name="cacheEnabled" value="true"/>
</settings>

这里需要注意一下configuration标签下子标签的顺序。

2.在对应的Mapper.xml中配置二级缓存:

<?xml version="1.0" encoding="UTF-8" ?>

<!DOCTYPE mapper
    PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
    "http://mybatis.org/dtd/mybatis-3-mapper.dtd">

<mapper namespace="com.wts.mapper.UserMapper">
  <cache></cache>
  <!-- 新建用户 -->
  <insert id="insertUser" parameterType="com.wts.entity.User">
    insert into user values (#{id}, #{username}, #{password})
  </insert>
</mapper>

很简单,只需要加个cache标签就行了,如以上代码标黄部分。

3.对应的实体类需要实现序列化接口:

package com.wts.entity;

import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.io.Serializable;

@Data
@AllArgsConstructor
@NoArgsConstructor
public class User implements Serializable {
  private long id;
  private String username;
  private String password;
}

这样就开启了MyBatis默认的二级缓存。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

您可能感兴趣的文章:
阅读全文