1. 基於Spring MVC 5+MyBatis 3.4.5全新升級。
2. 提供配套代碼及微信、QQ群答疑服務。
3.貼近實際項目,以案例驅動
本書針對每一個知識點都通過相應的程序給齣瞭示範,所有應用範例都密切契閤企業開發實際場景,例如用戶權限驗證、文件上傳下載等都是企業開發實際功能,同時采用瞭目前企業流行、規範的開發架構,嚴格遵守Java EE開發規範。讀者參考本書的架構,完全可以身臨其境地感受企業實際項目開發。
4.內容深入,講解細緻
本書的特點是操作步驟詳細,編程思路清晰,語言平實易懂。隻要讀者認真閱讀本書,並掌握書中知識,那麼就完全可以勝任企業中Spring MVC+MyBatis項目開發的要求。
《Spring+MyBatis企業應用實戰》主要介紹介紹瞭Java EE領域的兩個開源框架:Spring MVC和MyBatis。其中Spring的版本為5.0,MyBatis的版本是3.4.5。本書的示例建議在Tomcat 8上運行。
《Spring+MyBatis企業應用實戰》詳細介紹如何整閤Spring MVC 5+MyBatis 3.4.5進行Web應用開發,主要包括三個部分:
第一部分詳細介紹瞭Spring MVC框架的用法。
第二部分詳細介紹瞭MyBatis框架的用法。
第三部分重點介紹瞭Spring MVC 5+MyBatis 3.4.5的整閤,並示範開發瞭一個包含6個錶、錶之間具有復雜的關聯映射關係,且業務功能也相對完善的HRM人事管理係統案例,希望讓讀者理論聯係實際,將這兩個框架真正運用到實際開發當中去。該案例采用目前流行、規範的Java EE架構,整個應用分為DAO持久層、領域對象層、業務邏輯層、控製器層和視圖層,各層之間分層清晰,層與層之間以鬆耦閤的方法組織在一起。
所有代碼完全基於Eclipse IDE來完成,一步步帶領讀者深入兩個框架的核心。
瘋狂軟件,多年來從事Java開發、移動開發等方麵的培訓及研發工作,承接大型研發項目。瘋狂軟件是廣州為學教育科技有限公司的教育品牌,立誌以務實的技術來改變中國的軟件教育,所培訓的學生入職華為、阿裏軟件、唯品會、網易、IBM等IT名企。
第1章 Java EE應用 1
1.1 Java EE應用概述 2
1.1.1 Java EE應用的分層模型 2
1.1.2 Java EE應用的組件 3
1.1.3 Java EE應用的結構和優勢 4
1.2 輕量級Java EE應用相關技術 4
1.2.1 JSP、Servlet和JavaBean及替代技術 4
1.2.2 MyBatis 3及替代技術 5
1.2.3 Spring 5及替代技術 6
1.2.4 使用開源框架的好處 7
1.3 本章小結 7
第2章 Spring MVC簡介 8
2.1 MVC思想概述 9
2.1.1 傳統Model1和Model2 9
2.1.2 MVC思想及其優勢 10
2.2 Struts 2和Spring MVC 11
2.2.1 Spring MVC的優勢 11
2.2.2 Spring MVC和Struts 2的區彆 11
2.3 開發第一個Spring MVC應用 12
2.3.1 Spring的下載和安裝 12
2.3.2 Spring MVC的DispatcherServlet 13
2.3.3 基於Controller接口的控製器 14
示例:第一個Spring MVC應用 14
示例:基於注解的控製器 18
2.4 詳解DispatcherServlet 20
2.5 Spring MVC執行的流程 22
2.5.1 Spring MVC應用的開發步驟 22
2.5.2 Spring MVC執行的流程 24
2.6 本章小結 25
第3章 Spring MVC的常用注解 26
3.1 @Controller注解 27
示例:@Controller注解的使用 27
3.2 @RequestMapping注解 29
3.2.1 @RequestMapping注解簡介 29
3.2.2 請求處理方法中可齣現的參數類型 32
3.2.3 請求處理方法可返迴的類型 33
3.2.4 Model和ModelMap 33
示例:Model和ModelMap的使用 34
3.2.5 ModelAndView 35
示例:ModelAndView的使用 35
3.2.6 頁麵轉發 35
3.3 @RequestParam注解 36
示例:@RequestMapping和@RequestParam注解的使用 37
3.4 @PathVariable注解 41
3.5 @MatrixVariable注解 42
3.6 @CrossOrigin注解 42
示例:@PathVariable注解和@MatrixVariable注解的使用 43
示例:@CrossOrigin注解的使用 45
3.7 @RequestHeader注解 46
示例:@RequestHeader注解的使用 47
3.8 @CookieValue注解 48
示例:@CookieValue注解的使用 49
3.9 @RequestAttribute注解 50
3.10 @SessionAttribute注解 50
示例:@RequestAttribute注解和@SessionAttribute注解的使用 51
3.11 @SessionAttributes注解 53
示例:@SessionAttributes注解的使用 53
3.12 @ModelAttribute注解 55
示例:@ModelAttribute注解的使用 55
3.13 @RequestBody注解 62
3.13.1 HttpMessageConverter<T>接口 62
3.13.2 轉換JSON數據 64
示例:@RequestBody接收JSON格式的數據 65
示例:自定義HttpMessageConverter接收JSON格式的數據 68
3.14 @ResponseBody注解 70
示例:@ResponseBody返迴JSON格式的數據 70
示例:自定義HttpMessageConverter返迴JSON格式的數據 72
3.15 轉換XML數據 72
示例:接收XML格式的數據 72
示例:返迴XML格式的數據 75
3.16 @RestController注解 76
示例:@RestController注解的使用 76
3.17 Spring MVC的異常處理 77
3.17.1 Spring MVC異常處理接口以及實現類 77
示例:SimpleMappingExceptionResolver處理異常 78
3.17.2 @ResponseStatus注解 82
示例:@ResponseStatus處理異常 82
3.17.3 @ExceptionHandle注解 84
示例:@ExceptionHandler處理異常 84
3.17.4 @ControllerAdvice注解 87
示例:@ControllerAdvice處理異常 87
3.17.5 @RestControllerAdvice注解 91
示例:@RestControllerAdvice注解的使用 91
3.18 本章小結 92
第4章 Spring MVC的標簽庫 93
4.1 錶單標簽庫 94
4.1.1 form標簽 94
4.1.2 input標簽 95
示例:form和input標簽的使用 95
4.1.3 password標簽 97
4.1.4 hidden標簽 98
4.1.5 textarea標簽 98
4.1.6 checkbox標簽 99
示例:checkbox標簽的使用 99
4.1.7 checkboxes標簽 101
示例:checkboxes標簽的使用 101
4.1.8 radiobutton標簽 105
示例:radiobutton標簽的使用 105
4.1.9 radiobuttons標簽 106
示例:radiobuttons標簽的使用 107
4.1.10 select標簽 108
4.1.11 option標簽 109
4.1.12 options標簽 109
示例:select、option和options標簽的使用 109
4.1.13 errors標簽 113
示例:errors標簽的使用 114
4.2 本章小結 116
第5章 Spring MVC的國際化 117
5.1 Spring MVC國際化的相關知識 118
5.1.1 messageSource接口 118
5.1.2 localeResolver接口 118
5.1.3 message標簽 119
5.2 Spring MVC的國際化處理 119
5.2.1 AcceptHeaderLocaleResolver 119
示例:基於瀏覽器請求的國際化實現 119
5.2.2 SessionLocaleResolver 122
示例:基於HttpSession的國際化實現 123
5.2.3 CookieLocaleResolver 125
示例:基於Cookie的國際化實現 125
5.3 本章小結 127
第6章 Spring MVC的數據轉換、格式化和數據校驗 128
6.1 數據綁定流程 129
6.2 數據轉換 129
6.2.1 ConversionService 129
6.2.2 Spring支持的轉換器 130
示例:使用ConversionService轉換數據 131
示例:使用@InitBinder添加自定義編輯器轉換數據 134
示例:使用WebBindingInitializer注冊全局自定義編輯器轉換數據 135
6.2.3 多種轉換器的優先順序 135
6.3 數據格式化 136
示例:使用Formatter格式化數據 137
示例:使用FormatterRegistrar注冊Formatter 138
示例:使用AnnotationFormatterFactory <A extends Annotation>格式化數據 139
6.4 數據校驗 142
6.4.1 Spring的Validation校驗框架 143
示例:測試Spring的Validation校驗 143
6.4.2 JSR 303校驗 146
示例:測試JSR 303校驗 147
6.5 本章小結 152
第7章 Spring MVC的文件上傳下載和攔截器機製 153
7.1 文件上傳 154
示例:Spring MVC的文件上傳 154
示例:使用對象接收上傳文件 157
7.2 文件下載 158
示例:Spring MVC的文件下載 158
7.3 攔截器 160
7.3.1 HandlerInterceptor接口 160
示例:攔截器實現用戶權限驗證 161
7.4 本章小結 164
第8章 MyBatis簡介 165
8.1 ORM和MyBatis 166
8.1.1 對象/關係數據庫映射(ORM) 166
8.1.2 基本映射方式 167
8.1.3 流行的ORM框架簡介 168
8.1.4 MyBatis概述 168
8.2 MyBatis入門 169
8.2.1 MyBatis下載和安裝 169
示例:MyBatis的數據庫操作入門 170
8.3 本章小結 175
第9章 MyBatis的基本用法 176
9.1 MyBatis體係結構 177
9.1.1 SqlSessionFactory 177
9.1.2 SqlSession 177
9.2 深入MyBatis的配置文件 179
9.2.1 MyBatis的配置文件結構 180
9.2.2 properties屬性 180
9.2.3 settings設置 181
9.2.4 typeAliases類型命名 183
9.2.5 typeHandlers類型處理器 184
9.2.6 objectFactory對象工廠 185
9.2.7 environments配置環境 185
9.2.8 mapper映射器 187
9.3 MyBatis日誌信息配置 188
9.3.1 log4j.properties配置日誌 188
9.3.2 log4j.xml配置日誌 189
9.4 深入Mapper XML映射文件 190
9.4.1 select 191
9.4.2 insert、update和delete 192
9.4.3 sql 194
9.4.4 參數(Parameters) 195
示例:測試select、insert、update和delete操作 195
9.4.5 ResultMaps 200
示例:測試ResultMaps 201
9.5 本章小結 208
第10章 深入使用MyBatis 209
10.1 MyBatis關聯映射 210
10.1.1 一對一 210
示例:OneToOneTest 210
10.1.2 一對多 213
示例:OneToManyTest 213
10.1.3 多對多 218
示例:ManyToManyTest 218
10.2 MyBatis動態SQL 225
示例:DynamicSQLTest 225
10.2.1 if 226
10.2.2 choose(when、otherwise) 229
10.2.3 where 230
10.2.4 set 232
10.2.5 foreach 233
10.2.6 bind 234
10.3 MyBatis調用存儲過程 234
示例:MyBatis調用存儲過程 235
10.3.1 插入數據 235
10.3.2 查詢數據返迴集閤 237
10.3.3 根據id查詢數據返迴對象 238
10.3.4 修改數據 239
10.3.5 刪除數據 241
10.4 MyBatis事務管理 242
10.4.1 事務的概念 242
10.4.2 Transaction接口 243
10.4.3 事務的配置創建和使用 243
10.5 MyBatis緩存機製 247
10.5.1 一級緩存(SqlSession級彆) 247
示例:OneLevelCacheTest 247
10.5.2 二級緩存(mapper級彆) 251
示例:TwoLevelCacheTest 251
10.6 本章小結 254
第11章 MyBatis的注解配置 255
11.1 常用注解 256
11.2 注解的使用 256
示例:測試select、insert、update和delete操作 257
示例:測試一對一關聯 262
示例:測試一對多關聯 263
示例:測試多對多關聯 265
示例:測試動態SQL 267
示例:測試調用存儲過程 274
示例:測試二級緩存 276
11.3 本章小結 278
第12章 Spring 5整閤MyBatis 3 279
12.1 開發環境搭建 280
12.2 準備所需的jar包 280
12.3 準備數據庫資源 280
12.4 完成配置文件 281
12.5 持久層功能實現 283
12.6 服務層功能實現 284
12.7 控製層功能實現 286
12.8 JSP頁麵 288
12.9 測試Spring 5整閤MyBatis 3 289
12.10 本章小結 290
第13章 實戰項目:人事管理係統 291
13.1 項目簡介及係統結構 292
13.1.1 係統功能介紹 292
13.1.2 相關技術介紹 293
13.1.3 係統結構 293
13.1.4 係統的功能模塊 294
13.2 數據錶和持久化類 294
13.2.1 設計數據庫錶 294
13.2.2 設計持久化實體 296
13.2.3 創建持久化實體類 297
13.3 實現DAO持久層 303
13.3.1 公共常量類 304
13.3.2 定義DAO接口 304
13.3.3 部署DAO層 318
13.4 實現Service持久層 319
13.4.1 業務邏輯組件的設計 319
13.4.2 實現業務邏輯組件 320
13.4.3 事務管理 335
13.4.4 部署業務邏輯組件 335
13.5 實現Web層 335
13.5.1 控製器的處理順序 335
13.5.2 用戶管理 339
13.5.3 部門管理 342
13.5.4 職位管理 345
13.5.5 員工管理 348
13.5.6 公告管理 351
13.5.7 下載中心 355
13.6 本章小結 359
附錄A EL錶達式和JSTL標簽庫 360
時至今日,以Spring為核心的輕量級Java EE企業開發平颱在企業開發中占有絕對的優勢,Java EE應用以其穩定的性能、良好的開放性以及嚴格的安全性,深受企業應用開發者的青睞,應用的性能、穩定性都有很好的保證。
輕量級Java EE開發大緻可分為兩種方式:以Struts+Spring+Hibernate三大框架為核心的輕量級Java EE和以Spring MVC+MyBatis為核心的輕量級Java EE。這兩種組閤都在保留經典Java EE應用架構、高度可擴展性、高度可維護性的基礎上,降低瞭Java EE應用的開發、部署成本,對於大部分中小型企業應用來說是首選。
本書重點介紹以Spring MVC+MyBatis為核心的輕量級Java EE。本書采用Tomcat 8作為Web服務器,Eclipse IDE作為開發工具,詳細介紹瞭Spring MVC和MyBatis框架。Spring MVC的配置全部使用注解方式,不再采用舊版本中傳統的XML配置方式;MyBatis則基於企業開發實際情況,首先介紹瞭傳統的XML持久化映射,之後又介紹瞭升級的注解持久化映射。
隨著Spring的不斷發展,Spring MVC已有取代Struts的能力,而MyBatis相對Hibernate而言則更為輕便、簡單,越來越多的公司選擇使用Spring MVC+MyBatis的輕量級框架組閤來開發Java EE項目,因此掌握Spring MVC+MyBatis技術將為Java開發者帶來更多的就業機會與競爭力。
本書有什麼特點
本書是一本介紹Spring MVC+MyBatis技術以及兩者整閤的實用圖書,全麵介紹瞭最新的Spring MVC和MyBatis各方麵的知識。
本書針對每一個知識點都通過相應的程序給齣瞭示範,第13章的實戰項目“HRM人事管理係統”采用目前最流行、最規範的Java EE架構,整個應用分為DAO持久層、領域對象層、業務邏輯層、控製器層和視圖層,各層之間分層清晰,層與層之間以鬆耦閤的方式組織在一起。筆者既擔任過軟件開發的技術經理,也擔任過軟件公司的培訓導師,現如今從事專業、高端的職業技術培訓。本書所有應用範例都密切契閤企業開發實際場景,例如用戶權限驗證、文件上傳下載等都是企業開發中要實現的實際功能,同時采用目前企業中頗為流行、規範的開發架構,嚴格遵守Java EE開發規範。讀者參考本書的架構,完全可以身臨其境地感受企業實際項目開發。
本書並不是一本關於所謂“思想”的書,也沒有一堆“深奧”的新名詞和“高深”的理論,隻是讓讀者學會實際的Spring MVC和MyBatis技術。本書的特點是操作步驟詳細,編程思路清晰,語言平實易懂。隻要讀者認真閱讀本書,並掌握書中知識,那麼就完全可以勝任企業中的Spring MVC+MyBatis項目開發。
閱讀本書需要具備一定的計算機知識以及編程功底。熟練掌握Java語言和Spring框架的IOC、AOP和持久層的ORM設計模式等知識對於學習本書是很有必要的。
可訪問www.crazyit.org或下載本書配套資源。
本書寫給誰看
如果你已經掌握瞭Java SE的內容,或已經學完瞭瘋狂軟件教育的《瘋狂Java講義》一書,那麼你非常適閤閱讀此書。除此之外,如果你已有初步的JSP、Servlet、JDBC基礎,甚至對Spring、MyBatis等框架有所瞭解,但希望掌握它們在實際開發中的應用,本書也非常適閤你。如果你對Java的掌握還不熟練,則建議遵從學習規律,循序漸進,暫時不要購買、閱讀此書,而是按照“瘋狂Java學習路綫圖”中的建議順序學習。
衷心感謝
衷心感謝李剛老師,他是筆者非常好的朋友,在本書的創作過程中,他提供瞭大量切實、有用的幫助。同時衷心感謝瘋狂軟件教育中心所有同事提供的幫助。
感謝我的妻子王丹娜女士,她給瞭我生活上、精神上無微不至的關懷和照顧,並承擔幾乎所有的日常傢務,使我能夠心無旁騖地專注於程序的研究和書籍的撰寫。
感謝所有參加瘋狂軟件實訓的學生,他們在實際工作場景的應用中證明瞭本書的價值,他們的反饋讓本書更加實用。
肖文吉
說實話,剛拿到《Spring+MyBatis企業應用實戰(第2版)》的時候,我還有點猶豫,畢竟市麵上同類書籍很多。但當我翻開第一頁,就被它清晰的邏輯和生動的講解吸引住瞭。這本書對於Spring的IoC容器、DI注入、Bean的生命周期等核心概念,講解得非常透徹,甚至讓我重新審視瞭一些之前似懂非懂的地方。而在MyBatis部分,它不僅僅是講瞭XML配置,還重點介紹瞭注解式開發,以及如何優化SQL語句,提高查詢效率。我尤其喜歡它在介紹整閤過程時,會詳細講解各種配置文件的作用,以及不同配置之間的關係,這對於理解整個Spring+MyBatis生態係統至關重要。書中還包含瞭許多實用的技巧,比如如何實現數據庫連接池的配置,如何進行日誌記錄,以及如何進行單元測試等,這些都是企業級開發中不可或缺的部分。總的來說,這本書就像一本武林秘籍,讓我掌握瞭Spring和MyBatis的精髓,為我的開發者之路打下瞭堅實的基礎。
評分這本《Spring+MyBatis企業應用實戰(第2版)》真的幫瞭我大忙,特彆是對於我這種剛從學校齣來,對企業級Java開發還一知半解的新手來說。之前在學校學的都是基礎概念,到瞭實際項目裏,各種框架、各種配置看得我眼花繚亂,感覺自己像個無頭蒼蠅。這本書就像一位經驗豐富的導師,一步一步地把我從迷茫中拉齣來。它沒有上來就講一大堆理論,而是從實際的應用場景齣發,比如如何搭建一個完整的Web項目,如何將Spring和MyBatis這兩個核心技術整閤起來,實現高效的數據持久化。我特彆喜歡它那種“知其然,更知其所以然”的講解方式,不是簡單地告訴你怎麼寫代碼,而是深入剖析為什麼這麼寫,背後的原理是什麼,這樣我纔能真正理解,而不是死記硬背。而且,書中的代碼示例都非常貼近實際項目開發,很多我在工作中遇到的問題,都能在這本書裏找到相似的例子和解決方案,真的讓我少走瞭不少彎路,工作效率也大大提升瞭。
評分作為一名已經摸爬滾打瞭幾年的Java開發者,我一直在尋找一本能讓我對Spring和MyBatis的理解更上一層樓的書,而《Spring+MyBatis企業應用實戰(第2版)》無疑滿足瞭我的需求。這本書的深度和廣度都相當可觀,它不僅僅是基礎知識的堆砌,更側重於在企業級應用場景下的實踐和優化。我印象深刻的是它對Spring事務管理、AOP切麵編程以及MyBatis的動態SQL、緩存機製等高級特性的詳細闡述。書中提齣的許多設計模式和最佳實踐,都經過瞭反復驗證,能夠有效提高代碼的可維護性、可擴展性和性能。我特彆欣賞它在講解過程中,會穿插一些實際項目中的“坑”和規避方法,這對於有一定經驗的開發者來說,是極其寶貴的財富。讀完這本書,我感覺自己在Spring和MyBatis方麵的功力有瞭質的飛躍,能夠更自信地應對復雜項目需求,並能為團隊貢獻更優質的代碼。
評分對於那些希望在Spring和MyBatis領域深入發展的開發者,《Spring+MyBatis企業應用實戰(第2版)》絕對是一本不容錯過的佳作。我之前在工作中也接觸過Spring和MyBatis,但總覺得對它們的理解不夠深入,尤其是在處理一些復雜業務場景時,常常感到力不從心。這本書的齣現,徹底改變瞭我的現狀。它不僅詳細講解瞭Spring的各種高級特性,比如Spring Boot的自動化配置,Spring Cloud的服務治理,以及MyBatis的緩存策略、性能調優等,還結閤實際案例,演示瞭如何將這些技術融會貫通,構建齣高性能、高可用的企業級應用。我特彆喜歡書中對“髒讀”、“不可重復讀”、“幻讀”等數據庫事務隔離級彆問題的深入分析,以及如何通過Spring事務管理和MyBatis的配置來規避這些問題。這本書的內容非常豐富,而且非常超前,讓我對未來的技術發展有瞭更清晰的認識,也為我職業生涯的進一步發展提供瞭強大的支持。
評分這本書的實用性是我最看重的一點。《Spring+MyBatis企業應用實戰(第2版)》真正做到瞭“實戰”二字。它沒有空泛的理論,而是直接帶你進入企業級開發的真實場景。我從書中學習到瞭如何構建一個完整的、可部署的Spring+MyBatis應用,從項目的初始化到最終的上綫部署,每一步都有詳細的指導。特彆是關於多模塊項目管理、數據庫遷移、以及如何在Spring MVC中集成MyBatis等方麵,都給齣瞭非常成熟的解決方案。書中還涉及瞭一些安全方麵的考量,比如如何進行權限管理和數據加密,這在企業應用中是非常重要的。而且,作者的寫作風格非常接地氣,用詞遣句都很容易理解,即使是一些比較復雜的概念,也能被解釋得條理清晰。我經常會一邊看書,一邊跟著敲代碼,感覺自己就像在參與一個真實的開發項目,學到的東西很快就能消化吸收,並能在實際工作中應用。
評分還沒開始看呢,看瞭再追評吧!
評分挺好的,推薦購買。
評分還沒看呢 相當於收集關於cloud的書瞭
評分很實用,質量不錯
評分研究瞭好久,是本好書,果斷從京東入手,送貨快,服務好!
評分還沒看 但一直想找本這種書看看
評分又是瘋狂係列的精品,好書,值得一看,希望成為大牛!
評分京東圖書搞活動,加上用券,差不多三摺,簡直太便宜瞭,買瞭超多,物流也超快,超級滿意!
評分老公要用的書,他評價不錯?!
本站所有内容均为互联网搜索引擎提供的公开搜索信息,本站不存储任何数据与内容,任何内容与数据均与本站无关,如有需要请联系相关搜索引擎包括但不限于百度,google,bing,sogou 等
© 2025 book.tinynews.org All Rights Reserved. 静思书屋 版权所有