MyBatis中出現的幾種模式

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;
     

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章