mybatis-config.xml配置
<settings> <setting name="cacheEnabled" value="true"/> </settings> 默认为false,这里需要设置为true |
同时将PersonMapper.xml中添加
<cache></cache> |
同时将Person javabean 实现Serializable接口,注意比须实现,不然会出现异常.
测试如下:
package com.mybatis.test;
import java.io.InputStream; import java.util.List;
import org.apache.ibatis.session.SqlSession; import org.apache.ibatis.session.SqlSessionFactory; import org.apache.ibatis.session.SqlSessionFactoryBuilder;
import com.mybatis.dao.PersonMapper; import com.mybatis.domain.Person;
public class PersonTest {
private static SqlSessionFactory factory ;
static{ InputStream in = PersonTest.class.getClassLoader().getResourceAsStream("mybatis-config.xml"); factory = new SqlSessionFactoryBuilder().build(in,"test1"); }
public static void main(String args[]){ SqlSession session = factory.openSession(); PersonMapper personMapper = session.getMapper(PersonMapper.class); Person person = new Person(); person.setName("jysemel"); List<Person> list = personMapper.selectPerson("jysemel"); System.out.println(list.get(0).getName()+"=================="); session.commit(); session.close(); SqlSession session1 = factory.openSession(); PersonMapper personMapper1 = session1.getMapper(PersonMapper.class); person.setName("jysemel"); System.out.println(personMapper = personMapper1); List<Person> list1 = personMapper1.selectPerson("jysemel1"); System.out.println(list1.size()+"***********************"); session1.commit(); session1.close(); } } |
注意:所谓缓存,只有当前session关闭之后,重启开启session,才能看出缓存的作用
相关推荐
在提供的压缩包文件“Zdxtec”中,可能包含了该项目的源代码、配置文件、测试用例等,通过分析这些内容,我们可以进一步了解Mybatis缓存的具体实现和测试方法。实际操作时,可以运行测试类,观察日志输出,理解缓存...
总的来说,《Mybatis缓存开源架构源码2021》这份文档很可能会涵盖 MyBatis 缓存体系的各个方面,包括一级缓存和二级缓存的使用、配置、源码解析以及实际开发中的注意事项。对于想深入了解 MyBatis 缓存机制的开发者...
2. **二级缓存**:在 MyBatis 的配置文件中,设置 `<cache>` 标签开启全局二级缓存: ```xml ``` 在对应的 Mapper 映射文件中,使用 `<cache>` 标签配置具体的缓存策略: ```xml ``` 其中,`...
MyBatis缓存机制 MyBatis 提供了一级缓存和二级缓存两种缓存机制来优化数据的读取性能。 - **一级缓存**: 由 MyBatis 自身维护,也称为本地缓存,它的作用范围是同一个 `SqlSession` 内。在一个 `SqlSession` 中,...
2. 配置MyBatis:在`application.yml`或`application.properties`中设置数据源和MyBatis的相关配置,如数据源类型、Mapper扫描路径等。 ```yaml spring: datasource: url: jdbc:mysql://localhost:3306/test?...
在创建 SqlSessionFactory 时,可以设置缓存相关的配置。 3. **SqlSession**:执行 SQL 查询的主要接口,内部包含了对一级缓存的操作。在执行 CRUD 操作后,结果会被放入一级缓存。 4. **Mapper**:MyBatis 映射器...
MyBatis可以使用简单的XML或注解进行配置和原始映射,将接口和Java的POJOs(Plain Old Java Objects,普通的Java对象)映射成数据库中的记录。 3. **Redis**:这是一款高性能的键值对数据库,常用于缓存和消息代理。...
MyBatis 只使用简单的 XML 和注解来配置和映射基本数据类型、Map 接口和 POJO 到数据库记录。相对 Hibernate 和 Apache OJB 等“一站式”ORM 解决方案而言,Mybatis 是一种“半自动化”的 ORM 实现。 MyBatis 的...
本篇文章将深入讲解MyBatis框架的简单配置。 首先,MyBatis的配置文件通常为`mybatis-config.xml`,它是MyBatis的核心配置,包含了数据库连接信息、事务管理、日志配置等。在入门阶段,我们需要了解以下关键配置...
- **`settings`**:这是MyBatis的核心配置,可以设置一些全局参数,如缓存、延迟加载等。 - **`typeAliases`**:定义别名,方便在XML映射文件中使用类名。 - **`environments`**:定义数据库环境,包括开发、测试和...
MyBatis 可以使用简单的 XML 或注解来配置和映射原生信息,将接口和 Java 的 POJOs(PlainOld Java Objects,普通的 Java 对象)映射成数据库中的记录。 MyBatis 主要构件及其作用: 1. SqlSession:作为 MyBatis ...
五、MyBatis缓存机制 1. 一级缓存:SqlSession级别的缓存,同一SqlSession内的相同查询会复用结果。 2. 二级缓存:全局缓存,不同SqlSession之间可以共享数据,但需要注意并发控制问题。 六、MyBatis与Spring整合 1...
在这个名为 "mybatis第三方缓存需要的文件.zip" 的压缩包中,包含的是 MyBatis 整合第三方缓存——EhCache 的相关组件和配置文件。 首先,我们要了解 EhCache 是一个开源的 Java 缓存库,它可以被用于存储和检索...
MyBatis可以使用简单的XML或注解进行配置和原始映射,将接口和Java的POJOs(Plain Old Java Objects,普通的Java对象)映射成数据库中的记录。 标题“mybatis demo mybatis 实例”指的是一个MyBatis的学习示例项目,...
1. **配置文件(mybatis-config.xml)**:这是MyBatis的全局配置文件,包含数据库连接信息、事务管理、类型处理器等设置。 2. **Mapper XML文件**:每个Mapper XML文件对应一个Java接口,里面定义了SQL语句和结果...
1. **XML配置文件**:MyBatis的初始化配置文件(通常为`mybatis-config.xml`)包含了数据源、事务管理器等全局设置。在这里,你需要指定数据库驱动、连接URL、用户名和密码。例如: ```xml ...
MyBatis可以使用简单的XML或注解进行配置和原始映射,将接口和Java的POJOs(Plain Old Java Objects,普通的Java对象)映射成数据库中的记录。 在"Mybatis配置及架包"中,我们主要会探讨以下几个关键知识点: 1. **...
MyBatis可以使用简单的XML或注解进行配置和原始映射,将接口和Java的POJOs(Plain Old Java Objects,普通的Java对象)映射成数据库中的记录。 在基于配置的MyBatis框架中,主要涉及以下几个核心概念和功能: 1. **...
在MyBatis的配置文件`mybatis-config.xml`中,我们需要启用缓存并指定使用Ehcache: ```xml ... <cacheEnabled>true <cacheImpl class="org.mybatis.cache.ehcache.EhcacheCache"/> ... ``` 然后在Mapper...