记一次 mybatis 一级缓存导致数据查询错误的坑


文章探讨了 Mybatis 在一级缓存处理中的问题。相同查询条件下,Mybatis 的 selectOne 和 selectList 方法产生了不同的结果,是因为 selectOne 使用了自定义 resultHandler,影响了缓存。文章分析了源码并给出了两种解决方案:一是在 selectList 查询时添加额外条件规避缓存,二是统一使用 selectList 方法以避免问题。

Mybatis源码分析之多级缓存


本文详细介绍了MyBatis的缓存机制,包括一级缓存和二级缓存的概念、开启方式、失效时机及注意事项,并通过源码分析解释了缓存的工作原理和使用中的一些问题,建议在生产环境中谨慎使用二级缓存。

cola状态机


本文介绍了状态机的设计思路和细节,包括状态、事件、流转、条件和动作等概念。提供了外部流转、内部流转、条件流转和多对一流转的使用方法示例,展示了如何通过代码实现状态机的不同流转方式,确保状态机能根据不同条件和事件进行正确的状态转换。