1.1、Mybatis一级缓存测试

本文通过一个具体的示例详细介绍了MyBatis的一级缓存机制,包括其默认使用情况及失效条件,并展示了如何通过代码验证缓存的使用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

package me.gacl.test;

import me.gacl.domain.User;
import me.gacl.util.MyBatisUtil;

import org.apache.ibatis.session.SqlSession;
import org.junit.Test;

public class TestOneLevelCache {
    @Test
    public void testCache1(){
        SqlSession session = MyBatisUtil.getSqlSession();
        String statement = "me.gacl.mapping.userMapper.getUser";
        User user = session.selectOne(statement,1);
        System.out.println(user);
        
        /**
         * 一级缓存默认会被使用
         */
        user = session.selectOne(statement, 1);
        System.out.println(user);
        session.close();
        /**
         * 1.必须是同一个session,如果session对象已经close()过了就 不可能用了
         */
        session = MyBatisUtil.getSqlSession();
        user = session.selectOne(statement, 1);
        System.out.println(user);
        /**
         * 2.查询条件是一样的
         */
        user = session.selectOne(statement,2);
        System.out.println(user);
        /**
         * 3.没有执行session.clearCache()清理完毕
         * 
         */
        user = session.selectOne(statement, 2);
        System.out.println(user);
        /**
         * 4.没有执行过增删改的操作(这些操作都会清理缓存 )
         */
        session.update("me.gacl.mapping.userMapper.updateUser",
                new User(2,"user",23));
        user = session.selectOne(statement, 2);
        System.out.println(user);
        
    
    }

}

 

转载于:https://www.cnblogs.com/zzzzw/p/5274775.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值