-- 會員 / 註冊 --  
 帳號:
 密碼:
  | 註冊 | 忘記密碼
3/26 新書到! 3/19 新書到! 3/14 新書到! 12/12 新書到!
購書流程Q & A站務留言版客服信箱
3ds MaxMayaRhinoAfter EffectsSketchUpZBrushPainterUnity
PhotoShopAutoCadMasterCamSolidWorksCreoUGRevitNuke
C#CC++Java遊戲程式Linux嵌入式PLCFPGAMatlab
駭客資料庫搜索引擎影像處理FluentVR+ARANSYS深度學習
單晶片AVROpenGLArduinoRaspberry Pi電路設計CadenceProtel
HadoopPythonStm32CortexLabview手機程式AndroidiPhone
可查書名,作者,ISBN,3dwoo書號
詳細書籍分類

深入淺出MyBatis技術原理與實戰

( 簡體 字)
作者:楊開振類別:1. -> 程式設計 -> JAVA -> Java
譯者:
出版社:電子工業出版社深入淺出MyBatis技術原理與實戰 3dWoo書號: 44967
詢問書籍請說出此書號!

缺書
NT售價: 345

出版日:8/1/2016
頁數:268
光碟數:0
站長推薦:
印刷:黑白印刷語系: ( 簡體 版 )
加入購物車 加到我的最愛
(請先登入會員)
ISBN:9787121295942
作者序 | 譯者序 | 前言 | 內容簡介 | 目錄 | 
(簡體書上所述之下載連結耗時費功, 恕不適用在台灣, 若讀者需要請自行嘗試, 恕不保證)
作者序:

譯者序:

前言:

隨著手機、平板電腦等移動終端的廣泛應用,移動互聯網時代已經到來。在這個時代
里,構建一個高效的平臺并提供服務是移動互聯網的基礎,在眾多的網站服務中,使用Java
構建網站的不在少數。移動互聯網的特點是大數據、高并發,對服務器往往要求分布式、
高性能、高靈活等,而傳統模式的Java 數據庫編程框架已經不再適用了。在這樣的背景下,
一個Java 的持久框架MyBatis 走入了我們的世界,它以封裝少、高性能、可優化、維護簡
易等優點成為了目前Java 移動互聯網網站服務的首選持久框架,它特別適合分布式和大數
據網絡數據庫的編程。
本書主要講解了MyBatis 的應用。從目前的情況來看,國內圖書市場上沒有介紹
MyBatis 的書籍,有的只是官方的API 和少數的幾篇博客文章,國外圖書市場上的這類書
籍也是鳳毛麟角,這使得系統學習MyBatis 困難重重。官方的API 只是簡單介紹了MyBatis
有些什么功能和一些基本的使用方法,沒有告訴我們如何用好,其中原理是什么,需要注意
哪些問題,這顯然是不夠的。有些博客雖然講解得比較深入,但是內容支離破碎,沒有形成
一個完整的知識體系,不易于初學者對MyBatis 進行系統學習。隨著移動互聯網應用的興起,
系統掌握MyBatis 編程技巧已經成了用Java 構建移動互聯網網站的必要條件。為了順應時
代的要求,筆者寫下了這本書,以期為廣大需要掌握MyBatis 的開發者提供學習和參考的
資料。
閱讀本書要求開發人員擁有Java 語言基礎和JDBC 基礎知識,對數據庫也要掌握入門
知識,最好能夠掌握常用的設計模式,因為在介紹MyBatis 構造時,常常涉及設計模式,
尤其是第6 章和第7 章的內容。
由于本書以講解MyBatis 的原理為主,所以適合中高級開發人員閱讀。本書分為三大部分。
第一部分是MyBatis 基礎應用,主要介紹如何高效地使用MyBatis。
第1 章:MyBatis 的內容簡介,告訴讀者MyBatis 是什么,在何種場景下使用它。
第2 章:主要介紹MyBatis 的基礎模塊及其生命周期,并給出實例。
第3 章:主要介紹MyBatis 配置的主要含義和內容。
第4 章:介紹MyBatis 映射器的主要元素及其使用方法。
第5 章:介紹動態SQL,助你輕松應對大部分的SQL 場景。
第二部分是MyBatis 原理,我們將深入源碼去理解MyBatis 的內部運行原理以及插件
的開發方法和技巧。
第6 章:介紹MyBatis 的解析和運行原理,我們將了解到SqlSession 的構建方法,以
及其四大對象是如何工作的。
第7 章:在第6 章的基礎上著重介紹MyBatis 的插件,這里我們將學習插件的設計原
理,以及開發方法和注意的要點。
第三部分是MyBatis 的實戰應用,主要講解MyBatis 的一些實用的場景。
第8 章:介紹MyBatis-Spring,主要講解如何在Spring 項目中集成MyBatis 應用,幫
助讀者在Spring 的環境中順利使用MyBatis。
第9 章:介紹MyBatis 的實用場景,精選一批典型且又常用的場景。詳細解析每一個
場景下,開發人員需要注意避免的一些錯誤和性能上的損失。
MyBatis 源于2002 年的iBatis 項目,至今MyBatis 中依然有許多iBatis 的痕跡。本書
默認使用MyBatis 的版本是3.3.0,使用MyBatis-Spring 的版本是1.2.3。而歷史上的iBatis
的書籍已經跟不上技術發展的步伐,于是筆者通過自己的努力和實踐,在研究MyBatis 源
碼的基礎上,寫作本書。從本書中既能學習如何使用MyBatis,也可以學習MyBatis 的原理
和應用,為國內的MyBatis 開發者提供一條系統掌握MyBatis 編程技巧的捷徑,當然讀者
也可以把本書作為工具書參考。在實際操作中,MyBatis 往往是結合Spring 使用的,于是
本書花費了一些篇幅講解MyBatis-Spring 技術,筆者也會略略提到Spring 項目的內容,以
便更好地論述它們。最后筆者還將講解一些使用頻率高、參考價值大的場景,使讀者能熟
練掌握MyBatis 的開發。
本書堅持實用原則,對于一些使用頻率低的技術并沒有提及太多,比如注解SQL、SQL
構造器等內容,提及太多只能降低你的可讀性。
感謝我的公司為我提供真實的使用MyBatis 的環境,所有的程序代碼都經過了調試。
感謝我的姐姐楊堅,她參與編寫并通篇審校了本書,潤色了那些晦澀的句子。同時也感謝
電子工業出版社的編輯們,尤其是汪達文的全程跟進。沒有他們的辛苦付出,就沒有本書
的成功出版。在出版本書的欣喜之余,也伴著戰戰兢兢,因為筆者才疏學淺,很多東西都
是從對源碼的理解和實際操作中獲得的,因此書中難免有疏漏之處,或有不能讓讀者滿意
的地方。如果有困惑,讀者可以發郵件到我的郵箱:ykzhen2013@163.com,也可以在我的
博客(http://blog.csdn.net/ykzhen2015)中和我討論,還望各位同行不吝賜教。
楊開振
2016 年7 月
內容簡介:

當前已經是移動互聯網時代,Java持久框架Hibernate沒有辦法適應高性能,靈活,大數據,可優化等要求,這時MyBatis就進入了我們的視野,隨著移動互聯網應用的持續發酵,Spring+MyBatis的應用已在Java互聯網平臺上得到大量的使用,單單在51job招聘網站中MyBatis在全國也有近萬個崗位的需求,加上未在51job發布的企業,可見需求相當大,而在當今市場上卻沒有任何一本介紹MyBatis的書籍,為了填補這一空白本書主要介紹了Java MyBatis技術。本書詳細介紹了MyBatis的基礎組成、配置、映射器、動態SQL,教會讀者正確使用MyBatis,書中包含大量的實例,使讀者可以參考。接著介紹了MyBatis的運行原理和插件開發并配有一個完整的插件例子。為了增加實用性,作者還介紹了MyBatis-Spring項目,使得讀者能夠學習到如何把MyBatis整合到Spring項目中,最后作者還將講解一些常用實例,比如Blob字段、文件上傳、批量、動態表名等實用場景,讓讀者能夠參考和注意一些細節的問題。本書從基礎講到底層,注重實戰,原理,照顧到初中高三類讀者,可以作為MyBatis的學習教程和參考技術叢書。

目錄:

目 錄
第1 章 MyBatis 簡介................ 1
1.1 傳統的JDBC 編程.............. 1
1.2 ORM 模型............... 4
1.3 Hibernate................ 4
1.4 MyBatis ............... 9
1.5 什么時候用MyBatis..............12
第2 章 MyBaits 入門...............13
2.1 開發環境準備...............13
2.1.1 下載MyBatis ...............13
2.1.2 搭建開發環境..............14
2.2 MyBatis 的基本構成..............15
2.2.1 構建SqlSessionFactory............15
2.2.2 創建SqlSession.............19
2.2.3 映射器...............21
2.3 生命周期.................26
2.3.1 SqlSessionFactoryBuilder.............27
2.3.2 SqlSessionFactory..............27
2.3.3 SqlSession..............27
2.3.4 Mapper...............28
2.4 實例.................29
第3 章 配置.................37
3.1 properties 元素...............38
3.1.1 property 子元素..............38
3.1.2 properties 配置文件.............39
3.1.3 程序參數傳遞..............39
3.1.4 優先級...............40
3.2 設置.................41
3.3 別名................44
3.3.1 系統定義別名..............44
3.3.2 自定義別名..............47
3.4 typeHandler 類型處理器.............48
3.4.1 系統定義的typeHandler............49
3.4.2 自定義typeHandler..............51
3.4.3 枚舉類型typeHandler............55
3.5 ObjectFactory...............62
3.6 插件................65
3.7 environments 配置環境.............65
3.7.1 概述...............65
3.7.2 數據庫事務..............66
3.7.3 數據源...............67
3.8 databaseIdProvider 數據庫廠商標識...........68
3.8.1 使用系統默認規則..............68
3.8.2 不使用系統默認規則............69
3.9 引入映射器的方法...............71
第4 章 映射器................73
4.1 映射器的主要元素...............73
4.2 select 元素................74
4.2.1 概述...............74
4.2.2 簡易數據類型的例子............75
4.2.3 自動映射...............76
4.2.4 傳遞多個參數..............78
4.2.5 使用resultMap 映射結果集............81
4.3 insert 元素................82
4.3.1 概述...............82
4.3.2 主鍵回填和自定義..............83
4.4 update 元素和delete 元素............85
4.5 參數...............85
4.5.1 參數配置...............86
4.5.2 存儲過程支持..............86
4.5.3 特殊字符串替換和處理(#和$)...........87
4.6 sql 元素.................88
4.7 resultMap 結果映射集.............89
4.7.1 resultMap 元素的構成.............89
4.7.2 使用map 存儲結果集............91
4.7.3 使用POJO 存儲結果集.............91
4.7.4 級聯...............92
4.8 緩存cache ................113
4.8.1 系統緩存(一級緩存和二級緩存)...........113
4.8.2 自定義緩存..............117
第5 章 動態SQL ..............119
5.1 概述.................119
5.2 if 元素................120
5.3 choose、when、otherwise 元素............120
5.4 trim、where、set 元素..............121
5.5 foreach 元素...............123
5.6 test 的屬性................124
5.7 bind 元素...............125
第6 章 MyBatis 的解析和運行原理.............127
6.1 涉及的技術難點簡介.............128
6.1.1 反射技術..............129
6.1.2 JDK 動態代理..............130
6.1.3 CGLIB 動態代理.............133
6.2 構建SqlSessionFactory 過程...........134
6.2.1 構建Configuration.............135
6.2.2 映射器的內部組成..............135
6.2.3 構建SqlSessionFactory............137
6.3 SqlSession 運行過程..............138
6.3.1 映射器的動態代理..............138
6.3.2 SqlSession 下的四大對象............141
6.3.3 SqlSession 運行總結............150
第7 章 插件................152
7.1 插件接口...............152
7.2 插件的初始化..............153
7.3 插件的代理和反射設計............154
7.4 常用的工具類——MetaObject ............157
7.5 插件開發過程和實例.............159
7.5.1 確定需要攔截的簽名............159
7.5.2 實現攔截方法..............161
7.5.3 配置和運行..............162
7.5.4 插件實例..............163
7.6 總結...............166
第8 章 MyBatis-Spring..............168
8.1 Spring 的基礎知識..............168
8.1.1 Spring IOC 基礎.............169
8.1.2 Spring AOP 基礎..............171
8.1.3 Spring 事務管理.............173
8.1.4 Spring MVC 基礎.............179
8.2 MyBatis-Spring 應用..............181
8.2.1 概述...............181
8.2.2 配置SqlSessionFactory............182
8.2.3 配置SqlSessionTemplate .............184
8.2.4 配置Mapper...............188
8.2.5 配置事務..............190
8.3 實例................191
8.3.1 環境準備..............191
8.3.2 文件目錄..............193
8.3.3 Spring 配置文件.............194
8.3.4 MyBatis 框架相關配置............198
8.3.5 配置服務層..............205
8.3.6 編寫控制器..............209
8.3.7 測試...............210
8.4 總結................210
第9 章 實用的場景..............212
9.1 數據庫BLOB 字段讀寫.............212
9.2 批量更新...............215
9.3 調用存儲過程..............217
9.3.1 存儲過程in 和out 參數的使用..........217
9.3.2 存儲過程游標..............220
9.4 分表...............225
9.5 分頁................227
9.5.1 RowBounds 分頁..............227
9.5.2 插件分頁..............229
9.6 上傳文件到服務器.............239
9.7 在映射中使用枚舉.............247
9.8 多對多級聯................249
9.9 總結...............253
附錄A 數據庫模型描述與級聯學生關系建表語句.........254
序: