MyBatis中出现的几种模式:

  • Builder模式 :例如 SqlSessionFactoryBuilder、XMLConfigBuilder、XMLMapperBuilder、XMLStatementBuilder、CacheBuilder;
  • 工厂模式 :例如SqlSessionFactory、ObjectFactory、MapperProxyFactory;
  • 单例模式 :例如ErrorContext和LogFactory;
  • 代理模式 :Mybatis实现的核心,比如MapperProxy、ConnectionLogger,用的jdk的动态代理;还有executor.loader包使用了cglib或者javassist达到延迟加载的效果;
  • 组合模式 :例如SqlNode和各个子类ChooseSqlNode等;
  • 模板方法模式 : 例如BaseExecutor和SimpleExecutor,还有BaseTypeHandler和所有的子类例如IntegerTypeHandler;
  • 适配器模式 : 例如Log的Mybatis接口和它对jdbc、log4j等各种日志框架的适配实现;
  • 装饰者模式 : 例如cache包中的cache.decorators子包中等各个装饰者的实现;
  • 迭代器模式 : 例如迭代器模式PropertyTokenizer;
     

MyBatis中出现的几种模式

 

相关文章:

  • 2022-12-23
  • 2021-04-08
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2021-12-02
  • 2021-11-19
猜你喜欢
  • 2021-11-02
  • 2022-03-03
  • 2021-11-02
  • 2021-10-27
  • 2022-01-07
  • 2022-03-06
  • 2022-01-16
相关资源
相似解决方案