MyBatis 二级缓存源码深度剖析二级缓存(Second Level Cache)是 MyBatis 中跨SqlSession的缓存,作用域为namespace(即 Mapper 的命名空间)。它通过装饰器模式包装在Executor之上,与一级缓存协同工作,能够显著提升多个会话共享相同数据时的查询性能。本文将深入剖析二级缓存的实现机制,包括核心Cache接口、CachingExecutor、TransactionalCache以及缓存与事务的协同。一、二级缓存整体架构事务协同查询流程缓存组件