mbatis应用到的设计模式

**Builder:**SqlSessionFactoryBuilder、XMLConfigBuiler、Environment

**工厂方法:**SqlSessionFactory、TransactionFactory、LogFactory

**单例:**ErrorContext、LogFactory

**代理:**mybatis核心,MapperProxy、ConnectionLogger使用JDK动态代理,excutor.loader包使用了cglib

**组合:**sqlNode和各个子类ChooseSqlNode

**模板方法:**BaseExecutor和SimpleExecutor,还有BaseTypeHandler和所有的子类,例如:IntegerTypeHandler

**适配器:**例如Log的mybatis接口和它对jdbc、log4j等各种日志框架的适配实现

**装饰者:**例如Cache包中的cache.decorators子包中各个装饰者的实现

**迭代器:**PropertyTokenizer

相关推荐
信誓旦旦的程序猿4 分钟前
【Python量化实战宝典 #20】动量、反转择时手册:趋势跟随与均值回归(Python 可跑)
java·python·股票数据api·股票数据api接口·股票api数据接口·股票量化数据api·股票量化数据接口
电商全栈程序猿10 分钟前
2026 开源商城系统选型指南:开发者实测对比Tigshop、ShopXO、CRMEB
java·运维·开源
利威尔xu12 分钟前
万字详解 | Go 进阶(二)GC 三色标记:STW 从 10ms 压到 40μs,1 次 Full GC 让线上 P99 抖了 3 秒
开发语言·后端·性能优化·golang·高并发
坤坤子吖14 分钟前
C++继承:继承的基本用法与访问规则
开发语言·c++·笔记·学习
骑着蜗牛撵大象32718 分钟前
用 Codex 批量做数字人商品口播视频:从分镜 JSON 到成片校验的流水线
java·ffmpeg·json·音视频·数字人·视频·codex
紧跟先前的步伐18 分钟前
Go AI Agent 实战 12|HTTP 状态码、API 错误处理与日志
开发语言·人工智能·http·ai·golang
博风19 分钟前
使用Spring官网下载Springboot骨架
java·spring boot·spring
Demon--hx24 分钟前
C++ 文件流:理解 ifstream/ofstream 与 RAII 机制
开发语言·c++
纪念 22926 分钟前
C++ stack和queue
开发语言·c++
hhb_61832 分钟前
Python异步队列实战:高效处理耗时任务
开发语言·python