Spring+MyBatis企業應用實戰 ( 簡體 字) |
作者:瘋狂軟件 | 類別:1. -> 程式設計 -> JAVA -> Spring |
譯者: |
出版社:電子工業出版社 | 3dWoo書號: 45935 詢問書籍請說出此書號!【缺書】 NT售價: 290 元 |
出版日:1/1/2017 |
頁數:324 |
光碟數:0 |
|
站長推薦: |
印刷:黑白印刷 | 語系: ( 簡體 版 ) |
|
加入購物車 │加到我的最愛 (請先登入會員) |
ISBN:9787121304217 |
作者序 | 譯者序 | 前言 | 內容簡介 | 目錄 | 序 |
(簡體書上所述之下載連結耗時費功, 恕不適用在台灣, 若讀者需要請自行嘗試, 恕不保證) |
作者序: |
譯者序: |
前言:前 言 時至今日,以Spring為核心的輕量級Java EE企業開發平臺在企業開發中占有絕對的優勢,Java EE應用以其穩定的性能、良好的開放性以及嚴格的安全性,深受企業應用開發者的青睞,應用的性能、穩定性都有很好的保證。 輕量級Java EE開發大致可分為兩種方式:以Struts+Spring+Hibernate三大框架為核心的輕量級Java EE,以Spring MVC+MyBatis為核心的輕量級Java EE。這兩種組合都在保留經典Java EE應用架構、高度可擴展性、高度可維護性的基礎上,降低了JavaEE應用的開發、部署成本,對于大部分中小型企業應用是第一首選。 本書重點介紹以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各方面的知識。 本書針對每一個知識點都通過相應的程序給出了示范,第14章的實戰項目“HRM人事管理系統”采用目前最流行、最規范的Java EE架構,整個應用分為DAO持久層、領域對象層、業務邏輯層、控制器層和視圖層,各層之間分層清晰,層與層之間以松耦合的方法組織在一起。筆者既擔任過軟件開發的技術經理,也擔任過軟件公司的培訓導師,現如今從事專業、高端的職業技術培訓,所有應用范例都密切契合企業開發實際場景,例如用戶權限驗證、文件上傳下載等都是企業開發實際功能,同時采用了目前企業最流行、最規范的開發架構,嚴格遵守Java EE開發規范。讀者參考本書的架構,完全可以身臨其境地感受企業實際項目開發。 本書并不是一本關于所謂“思想”的書,也沒有一堆“深奧”的新名詞和“高深”的思想,只會讓讀者學會實際的Spring MVC和MyBatis技術。本書的特點是操作步驟詳細,編程思路清晰,語言平實易懂。只要讀者認真閱讀本書,并掌握書中知識,那么就完全可以勝任企業中Spring MVC+MyBatis項目開發。 閱讀本書需要具備一定的計算機知識以及編程功底。熟練掌握Java語言和Spring框架的IOC、AOP和持久層的ORM設計模式等知識對于學習本書是很有必要的。 本書寫給誰看 如果你已經掌握Java SE內容,或已經學完了瘋狂軟件教育的《瘋狂Java講義》一書,那么你非常適合閱讀此書。除此之外,如果你已有初步的JSP、Servlet、JDBC基礎,甚至對Spirng、MyBatis等框架有所了解,但希望掌握它們在實際開發中應用,本書也將非常適合你。如果你對Java的掌握還不熟練,則建議遵從學習規律,循序漸進,暫時不要購買、閱讀此書,而是按照“瘋狂Java學習路線圖”中的建議順序學習。 衷心感謝 衷心感謝李剛老師,他是一個非常好的朋友,在本書的創作過程中,他提供了大量切實、有用的幫助。同時衷心感謝瘋狂軟件教育中心所有同事提供的幫助。 感謝所有參加瘋狂軟件實訓的學生,他們在實際工作場景的應用證明了本書的價值,他們的反饋讓本書更加實用。 肖文吉 2016年11月16日 |
內容簡介:本書介紹了Java EE領域的兩個開源框架:Spring的MVC和MyBatis。其中Spring的版本為4.2,MyBatis的版本是3.4。本書的示例建議在Tomcat 8上運行。本書重點介紹如何整合Spring MVC 4+MyBatis 3進行Java EE開發,主要包括三個部分。第一部分詳細介紹了Spring MVC框架的用法。第二部分詳細介紹了MyBatis框架的用法。第三部分重點介紹了Spring MVC4+MyBatis 3的整合,并示范開發了一個包含6個表、表之間具有復雜的關聯映射關系,且業務功能也相對完善的HRM人事管理系統案例,希望讓讀者理論聯系實際,將這兩個框架真正運用到實際開發當中去。該案例采用目前最流行、最規范的Java EE架構,整個應用分為DAO持久層、領域對象層、業務邏輯層、控制器層和視圖層,各層之間分層清晰,層與層之間以松耦合的方法組織在一起。所有代碼完全基于Eclipse IDE來完成,一步步帶領讀者深入兩個框架的核心。閱讀本書之前,建議先閱讀瘋狂軟件教育的《瘋狂Java講義》一書。本書適合有較好的Java編程基礎,JSP、Servlet、JDBC基礎,Spring框架基礎的讀者,尤其適合于對Spring MVC和MyBatis了解不夠深入,或對Spring MVC+MyBatis整合開發不太熟悉的開發人員閱讀。 |
目錄:第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 MyBatis3及替代技術 5 1.2.3 Spring4及替代技術 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 Struts2和Spring MVC 11 2.3 開發第一個Spring MVC應用 11 2.3.1 Spring的下載和安裝 11 2.3.2 Spring MVC的DispatcherServlet 12 2.3.3 基于Controller接口的控制器 13 示例:第一個Spring MVC應用 13 示例:基于注解的控制器 17 2.4 詳解DispatcherServlet 19 2.5 Spring MVC執行的流程 21 2.5.1 Spring MVC應用的開發步驟 22 2.5.2 Spring MVC執行的流程 23 2.6 本章小結 24 第3章 Spring MVC的常用注解 25 3.1 @Controller注解 26 示例:@Controller注解的使用 26 3.2 @RequestMapping注解 28 3.2.1 @RequestMapping注解 28 3.2.2 請求處理方法可出現的參數類型 30 3.2.3 請求處理方法可返回的類型 31 3.2.4 Model和ModelAndView 31 示例:Model和ModelMap的使用 32 示例:ModelAndView的使用 33 3.3 參數綁定注解 33 3.3.1 @RequestParam注解 33 示例:@RequestMapping和@RequestParam注解的使用 34 3.3.2 @PathVariable注解 38 3.3.3 @RequestHeader注解 38 3.3.4 @CookieValue注解 39 示例:@PathVariable、@RequestHeader和@CookieValue注解的使用 39 3.3.5 @SessionAttributes注解 41 示例:@SessionAttributes注解的使用 41 3.3.6 @ModelAttribute注解 42 示例:@ModelAttribute注解的使用 43 3.4 信息轉換 49 3.4.1 HttpMessageConverter<T>接口 49 3.4.2 轉換JSON數據 51 示例:接收JSON格式的數據 51 示例:自定義HttpMessageConverter接收JSON格式的數據 55 示例:返回JSON格式的數據 57 示例:自定義HttpMessageConverter返回JSON格式的數據 58 3.4.3 轉換XML數據 59 示例:接收XML格式的數據 59 示例:返回XML格式的數據 61 3.5 本章小結 62 第4章 Spring MVC的標簽庫 64 4.1 表單標簽庫 65 4.1.1 form標簽 65 4.1.2 input標簽 66 示例:form和input標簽的使用 66 4.1.3 password標簽 68 4.1.4 hidden標簽 69 4.1.5 textarea標簽 69 4.1.6 checkbox標簽 70 示例:checkbox標簽的使用 70 4.1.7 checkboxes標簽 71 示例:checkboxes標簽的使用 72 4.1.8 radiobutton標簽 76 示例:radiobutton標簽的使用 76 4.1.9 radiobuttons標簽 77 示例:radiobuttons標簽的使用 77 4.1.10 select標簽 79 4.1.11 option標簽 79 4.1.12 options標簽 79 示例:select、option和options標簽的使用 80 4.1.13 errors標簽 83 示例:errors標簽的使用 84 4.2 本章小結 86 第5章 Spring MVC的國際化 87 5.1 Spring MVC國際化的相關知識 88 5.1.1 messageSource 88 5.1.2 localeResolver 88 5.1.3 message標簽 89 5.2 AcceptHeaderLocaleResolver國際化 89 示例:基于瀏覽器請求的國際化實現 89 5.3 SessionLocaleResolver國際化 92 示例:基于HttpSession的國際化實現 93 5.4 CookieLocaleResolver國際化 95 示例:基于Cookie的國際化實現 95 5.5 本章小結 96 第6章 Spring MVC的數據轉換、格式化和數據校驗 97 6.1 數據綁定流程 98 6.2 數據轉換 98 6.2.1 ConversionService 98 6.2.2 Spring支持的轉換器 99 示例:使用ConversionService轉換數據 100 示例:使用@InitBinder添加自定義編輯器轉換數據 103 示例:使用WebBindingInitializer注冊全局自定義編輯器轉換數據 103 6.2.3 多種轉換器的優先順序 104 6.3 數據格式化 104 示例:使用Formatter格式化數據 105 示例:使用FormatterRegistrar注冊Formatter 107 示例:使用AnnotationFormatterFactory<A extends Annotation>格式化數據 108 6.4 數據校驗 110 6.4.1 Spring的Validation校驗框架 111 示例:測試Spring的Validation校驗 112 6.4.2 JSR 303校驗 114 示例:測試JSR 303校驗 115 6.5 本章小結 120 第7章 Spring MVC的文件上傳和下載 121 7.1 文件上傳 122 示例:Spring MVC的文件上傳 122 示例:使用對象接收上傳文件 124 7.2 文件下載 125 示例:Spring MVC的文件下載 125 7.3 攔截器 126 7.3.1 HandlerInterceptor接口 127 示例:攔截器實現用戶權限驗證 127 7.4 本章小結 131 第8章 MyBatis簡介 132 8.1 ORM和MyBatis 133 8.1.1 對象/關系數據庫映射(ORM) 133 8.1.2 基本映射方式 134 8.1.3 流行的ORM框架簡介 135 8.1.4 MyBatis概述 135 8.2 MyBatis入門 136 8.2.1 MyBatis下載和安裝 136 8.2.2 MyBatis的數據庫操作 137 8.3 本章小結 142 第9章 MyBatis的基本用法 143 9.1 MyBatis的體系結構 144 9.1.1 SqlSessionFactory 144 9.1.2 SqlSession 144 9.2 深入MyBatis的配置文件 146 9.2.1 MyBatis的配置文件結構 147 9.2.2 properties屬性 147 9.2.3 settings設置 148 9.2.4 typeAliases類型命名 150 9.2.5 typeHandlers類型處理器 151 9.2.6 objectFactory對象工廠 152 9.2.7 environments配置環境 152 9.2.8 mapper映射器 154 9.3 深入Mapper XML映射文件 155 9.3.1 select 155 9.3.2 insert、update和delete 157 9.3.3 sql 158 9.3.4 參數(Parameters) 159 示例:測試select、insert、update和delete操作 159 9.3.5 ResultMaps 163 示例:測試ResultMaps 163 9.4 本章小結 169 第10章 MyBatis的關聯映射和動態SQL 170 10.1 MyBatis的關聯映射 171 10.1.1 一對一 171 示例:OneToOneTest 171 10.1.2 一對多 174 示例:OneToManyTest 174 10.1.3 多對多 179 示例:ManyToManyTest 179 10.2 動態SQL 185 示例:DynamicSQLTest 185 10.2.1 if 186 10.2.2 choose(when、otherwise) 188 10.2.3 where 190 10.2.4 set 191 10.2.5 foreach 192 10.2.6 bind 193 10.3 本章小結 194 第11章 MyBatis的事務管理和緩存機制 195 11.1 MyBatis的事務管理 196 11.1.1 事務的概念 196 11.1.2 Transaction接口 196 11.1.3 事務的配置創建和使用 197 11.2 MyBatis的緩存機制 201 11.2.1 一級緩存(SqlSession級別) 201 示例OneLevelCacheTest 201 11.2.2 二級緩存(mapper級別) 204 示例:TwoLevelCacheTest 204 11.3 本章小結 207 第12章 MyBatis的注解配置 208 12.1 常用Annotation注解 209 12.2 Annotation注解的使用 209 示例:測試select、insert、update和delete操作 210 示例:AOneToOneTest 213 示例:AOneToManyTest 215 示例:AManyToManyTest 216 示例:ADynamicSQLTest 218 12.3 本章小結 224 第13章 Spring4整合MyBatis3 225 13.1 開發環境搭建 226 13.2 準備所需的jar包 226 13.3 準備數據庫資源 226 13.4 完成配置文件 227 13.5 持久層功能實現 229 13.6 服務層功能實現 230 13.7 控制層功能實現 232 13.8 jsp頁面 233 13.9 測試Spring4整合MyBatis3 234 13.10 本章小結 235 第14章 實戰項目:人事管理系統 236 14.1 項目簡介及系統結構 237 14.1.1 系統功能介紹 237 14.1.2 相關技術介紹 238 14.1.3 系統結構 238 14.1.4 系統的功能模塊 239 14.2 數據表和持久化類 239 14.2.1 設計數據庫表 239 14.2.2 設計持久化實體 241 14.2.3 創建持久化實體類 242 14.3 實現DAO持久層 248 14.3.1 公共常量類 249 14.3.2 定義DAO接口 249 14.3.3 部署DAO層 263 14.4 實現Service持久層 264 14.4.1 業務邏輯組件的設計 264 14.4.2 實現業務邏輯組件 264 14.4.3 事務管理 279 14.4.4 部署業務邏輯組件 279 14.5 實現Web層 280 14.5.1 控制器的處理順序 280 14.5.2 用戶管理 283 14.5.3 部門管理 287 14.5.4 職位管理 290 14.5.5 員工管理 292 14.5.6 公告管理 296 14.5.7 下載中心 299 14.6 本章小結 303 附錄A EL表達式和JSTL標簽庫 304 |
序: |