上一篇文章中,我們介紹了 SqlSessionFactory 的創建過程,忘記了的,可以回顧一下,或者看下下面這張圖也行。 接下來,可樂講給大家介紹 Mybatis 中另一個重量級嘉賓——SqlSession,有了這個對象,我們就能對數據進行一頓操作了。大家伙小板凳搬起來,請看可樂 ...
在上一篇博客中提到MyBatis是如何實現代理類MapperProxy,並拋出了一個問題 是怎么執行一個具體的sql語句的,在文末中提到了MapperMethod的execute采用命令模式來判斷是何種sql語句,並將具體語句的執行交由SqlSession處理。所以此篇博客正是要講到SqlSession。 在SqlSession接口中包含了所有可能執行的sql語句在這里不一一列舉,請參考org. ...
2016-11-17 23:55 6 24460 推薦指數:
上一篇文章中,我們介紹了 SqlSessionFactory 的創建過程,忘記了的,可以回顧一下,或者看下下面這張圖也行。 接下來,可樂講給大家介紹 Mybatis 中另一個重量級嘉賓——SqlSession,有了這個對象,我們就能對數據進行一頓操作了。大家伙小板凳搬起來,請看可樂 ...
Main 方法,mybatis 版本為 3.5.0 返回一個 DefaultSQlSession 對象,包含 Executor 和 Configuration sqlSessionFactory.openSession ...
sqlSession,顧名思義,是一次sql的回話,它起到了承上啟下的作用,這個類既維護了Configuration對象,又包含Executor對象,可以 執行jdbc操作,在mybatis體系中非常重要,下面我們來看一下這個類的源碼: 1:sqlSession類的源碼 ...
由之前解析可知,mybatis啟動的時候會加載XML配置文件解析生成全局配置對象Configuration對象,SqlSessionFactoryBuilder類會根據Configuration對象創建一個DefaultSqlSessionFactory對象 ...
mybatis框架在操作數據的時候,離不開SqlSession接口實例類的作用。可以說SqlSession接口實例是開發過程中打交道最多的一個類。即是DefaultSqlSession類。如果筆者記得沒有錯的話,早期是沒有什么getMapper方法的。增刪改查各志有對應的方法進行操作。雖然現在改進 ...
SqlSession可以說是整個MyBatis的重中之重,在SqlSession中涉及到前一篇四大對象:Executor、StatementHandler、ParameterHandler、ResultHandler,所以在此先只對SqlSession有一個大概的了解。 在代碼中我們可以看到當我 ...
在前面兩篇的MyBatis源碼解讀中,我們一路跟蹤到了MapperProxy,知道了盡管是使用了動態代理技術使得我們能直接使用接口方法。為鞏固加深動態代理,我們不妨再來回憶一遍何為動態代理。 我相信在初學MyBatis的時候幾乎每個人都會發出一個疑問,為什么明明是XXXDao接口,我沒有用 ...
工欲善其事,必先利其器 在使用MyBatis Generator 的時候生成的XML的Mapper文件總是不盡人意,例如在處理JdbcType為VARCHAR類型是只做null判斷,在Update的時候就會出現一些不符合要求的作用不會做空字符串判斷,利用剩余時間研究了一下源代碼 ...