摘要:核心包包名稱包內內容簡介注解目錄。如等類的實例反射生成工具目錄主要是注解,和的構造器及轉換器內部緩存接口。等默認的游標處理類數據源工廠類及實現。數據源實現類自定義的三個異常類。。都繼承自執行器相關包。為后續分析源碼打下基礎。
Mybatis核心包
包名稱 | 包內內容簡介 |
---|---|
annotation | 注解目錄。包括所有的注解。如@SELECT,@UPDATE等 |
binding | Mapper類的實例反射生成工具目錄 |
builder | 主要是注解,mapper和SqlSuorce的構造器及轉換器 |
cache | Mybatis內部緩存接口。實現了一些特定的緩存策略。FifoCache,LruCache,BlockingCache,LoggingCache等 |
cursor | 默認的游標處理類 |
dataSource | 數據源工廠類及實現。實現類包括JndiDataSourceFactory、PooledDataSourceFactory、UnpooledDataSourceFactory。 數據源實現類: UnpooledDataSource、PooledDataSource |
exceptions | Mybatis自定義的三個異常類。ExceptionFactory、PersistenceException、TooManyResultsException、IbatisException。都繼承自RuntimeException |
executor | 執行器相關包。包括Key生成器、加載器(包括Cglib、Javassist的代理,結果加載器)、參數處理器接口、結果處理器、結果集(resultSet)處理器、Statement處理器(實現類:BaseStatementHandler、CallableStatementHandler、PreparedStatementHandler、RoutingStatementHandler、SimpleStatementHandler)、執行器(SimpleExecutor、ReuseExecutor、CachingExecutor、BatchExecutor、BaseExecutor) |
io | 主要是定義的幾個VFS(VFS、DefaultVFS、ClassLoaderWrapper) |
javassist | javassist的字節碼處理包 |
jdbc | 與Sql相關的操作。如Sql運行器,腳本運行器和Sql封裝類等 |
lang | 指定是用java7還是java8的API的注解.UsesJava7、UsesJava8 |
logging | 各個類型的日志適配器,都實現了Log接口。StdOutImpl、Slf4jImpl、NoLoggingImpl、Log4j2Impl、Log4jImpl、Jdk14LoggingImpl、BaseJdbcLogger、JakartaCommonsLoggingImpl |
mapping | 主要是接口參數,sql和返回結果的映射類,主要類包括:MappedStatement,ParameterMap,ParameterMapping,ResultMap,ResultMapping,BoundSql,SqlSource等類 |
ognl | ognl包在Mybatis中的內部代碼引用 |
parsing | 變量解析.如解析${},#{}等 |
plugin | 主要包含插件的定義接口。如Interceptor,Plugin,InterceptorChain等 |
reflection | 主要是一些反射操作的工具方法和對象工廠類,以及一些常用的包裝類,如BaseWrapper,BeanWrapper,CollectionWrapper,MapWrapper,ObjectWrapper,,, |
scripting | 執行驅動和動態Sql解析的老巢 |
session | 主要是SqlSession和SqlSessionFactory |
transaction | 主要是mybatis簡單封裝的jdbc事務操作類 |
type | 各個類型數據的處理器。用于動態的設置參數和轉換數據。如IntegerTypeHandler用來處理Integer類型的值的set和get操作。除了八大基本類型。還有常用的集合及Map類型,還增加了各種時間類型的處理器 |
通過整理每個包的主要功能。通覽整個mybatis的代碼結構,了解各個組件的位置和大概的處理關系。為后續分析源碼打下基礎。
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/74041.html
摘要:哪吒社區技能樹打卡打卡貼函數式接口簡介領域優質創作者哪吒公眾號作者架構師奮斗者掃描主頁左側二維碼,加入群聊,一起學習一起進步歡迎點贊收藏留言前情提要無意間聽到領導們的談話,現在公司的現狀是碼農太多,但能獨立帶隊的人太少,簡而言之,不缺干 ? 哪吒社區Java技能樹打卡?【打卡貼 day2...
摘要:簡介我從七月份開始閱讀源碼,并在隨后的天內陸續更新了篇文章。考慮到超長文章對讀者不太友好,以及拆分文章工作量也不小等問題。經過兩周緊張的排版,一本小小的源碼分析書誕生了。我在寫系列文章中,買了一本書作為參考,這本書是技術內幕。 1.簡介 我從七月份開始閱讀MyBatis源碼,并在隨后的40天內陸續更新了7篇文章。起初,我只是打算通過博客的形式進行分享。但在寫作的過程中,發現要分析的代碼...
摘要:,整合剛才已經下載好了,現在我們添加文件標簽加一行如下然后是和在文件中添加數據源配置連接本地,新建數據庫,查詢執行項目頁面列出來的語句自動建立該項目需要的數據庫內容。 簡介:本文主要介紹把現今主流的springboot框架項目和精準測試工具進行結合和應用,通過精準測試的數據穿透、數據采集、測試用例與代碼的雙向追溯、數據分析等一系列精準測試的特有功能,達到對項目質量的保證。 本次環境搭...
摘要:配置想想,我們需要哪些數據庫要用到,數據庫連接池要用到橋接器要用到,因此要倉庫點我去倉庫中找到搜索這些加進去。 本文旨在用最通俗的語言講述最枯燥的基本知識 最近身邊的程序員掀起了學習springboot的熱潮,說什么學會了springboot在大街上就可以橫著走、什么有了springboot媽媽再也不擔心我的編程了、什么BAT都喜歡的框架...聽得作者那個心癢癢的,于是找了個時間,下載...
閱讀 2952·2021-11-23 09:51
閱讀 1006·2021-09-26 09:55
閱讀 3934·2021-09-22 14:58
閱讀 1467·2021-09-08 09:35
閱讀 1077·2021-08-26 14:16
閱讀 881·2019-08-23 18:17
閱讀 2053·2019-08-23 16:45
閱讀 700·2019-08-23 15:55