Java EE框架整合開發入門到實戰——Spring+Spring MVC+MyBatis(第2版·微課視頻版)

陳恆,孫雲浩 主編;樓偶俊,吳鏑 副主編

  • Java EE框架整合開發入門到實戰——Spring+Spring MVC+MyBatis(第2版·微課視頻版)-preview-1
  • Java EE框架整合開發入門到實戰——Spring+Spring MVC+MyBatis(第2版·微課視頻版)-preview-2
  • Java EE框架整合開發入門到實戰——Spring+Spring MVC+MyBatis(第2版·微課視頻版)-preview-3
Java EE框架整合開發入門到實戰——Spring+Spring MVC+MyBatis(第2版·微課視頻版)-preview-1

買這商品的人也買了...

商品描述

本書詳細地講解了 Java EE中 Spring、Spring MVC和 MyBatis三大框架(SSM)的基礎知識和實際應用。為了更好地幫助讀者學習 SSM框架,本書以大量案例介紹了 SSM框架的基本思想、方法和技術。 全書共 17章,第 1~5章主要講解 Spring框架的相關知識,內容包括 Spring入門、Spring IoC、Spring Bean、 Spring AOP以及 Spring的事務管理;第 6~13章主要講解 Spring MVC的相關知識,內容包括 Spring MVC入門、Controller、數據綁定和表單標簽庫、攔截器、數據驗證、國際化、異常統一處理以及文件的上傳和下載;第 14章主要講解 MyBatis的相關知識,內容包括 MyBatis開發入門、映射器、動態 SQL以及 SSM框架整合的思想與流程;第 15~17章主要講解 SSM框架整合的實踐應用,內容包括 Spring Test單元測試、EL與 JSTL標簽以及基於 SSM框架的電子商務平臺的設計與實現。書中案例側重實用性,趣味性強,分佈合理,通俗易懂,使讀者能夠快速地掌握 SSM框架的基礎知識、編程技巧以及完整的開發體系,為大型項目的開發打下堅實的基礎。 本書可作為大學電腦及相關專業的教材或教學參考書,也可作為 Java技術的培訓教材,適合廣大 Java EE應用開發人員閱讀與使用。

目錄大綱

目錄 

源碼下載

學習目的與要求1 本章主要內容 1 

1.1 Spring簡介·1 

1.1.1 Spring的由來 ·1 

1.1.2 Spring的體系結構 ·1 

1.2 Spring開發環境的構建 

1.2.1 使用 Eclipse開發 Java Web應用 4 

1.2.2 Spring的下載 ·6 

1.3 使用 Eclipse開發 Spring入門程序 

·7 

1.4 本章小結 8 習題 1 ·8 

學習目的與要求· 10 本章主要內容 · 10 

2.1 Spring IoC的基本概念 · 10 

2.2  Spring IoC容器 

 11 

2.2.1 BeanFactory 11 

2.2.2 ApplicationContext· 11 

2.2.3 GenericApplicationContext· 13 

2.3 依賴註入的類型· 14 

2.3.1 使用構造方法註入 

 14 

2.3.2 使用屬性的 Setter方法註入 

 16 

2.4 本章小結 · 17 習題 2  17 

學習目的與要求· 18 本章主要內容 · 18 

3.1 Bean的配置· 18 

3.2 Bean的實例化  19 

3.2.1 構造方法實例化 

 19 

3.2.2 靜態工廠方法實例化 

 20 3.2.3 實例工廠方法實例化  21 

3.3 Bean的作用域 

· 22 

3.3.1 singleton作用域· 22 

3.3.2 prototype作用域 23 

3.4 Bean的生命周期 

 24 

3.5 Bean的裝配方式  26 

3.5.1 基於 XML配置的裝配 

· 26 

3.5.2 基於註解的裝配 

 29 

3.6 本章小結 · 33 習題 3  33 

學習目的與要求· 35 本章主要內容 · 35 

4.1 Spring AOP的基本概念 · 35 

4.1.1 AOP的概念· 35 

4.1.2 AOP的術語· 36 

4.2 動態代理 · 37 

4.2.1 JDK動態代理 

 37 

4.2.2 CGLIB動態代理 

 40 

4.3 基於代理類的 AOP實現 

 42 

4.4 基於 XML配置開發 AspectJ 

 45 

4.5 基於註解開發 AspectJ 

· 49 

4.6 本章小結 · 52 習題 4  52 

學習目的與要求· 53 本章主要內容 · 53 

5.1 Spring的數據庫編程 · 53 

5.1.1 Spring JDBC的配置· 53 

5.1.2 Spring jdbcTemplate的使用方法 

 54 

5.2 編程式事務管理· 58 

5.2.1 基於底層 API的編程式事務管理 

 58 

5.2.2 基於 TransactionTemplate的編程式事務管理 

60 

5.3 聲明式事務管理· 62 

5.3.1 基於 XML方式的聲明式事務管理 

63 

5.3.2 基於@Transactional註解的聲明式事務管理 

66 

5.3.3 如何在聲明式事務管理中捕獲異常 

· 69 

5.4 本章小結 · 71 習題 5  71 

學習目的與要求· 72 本章主要內容 · 72 

6.1 MVC模式與 Spring MVC的工作原理 

 72 

6.1.1 MVC模式 72 

6.1.2 Spring MVC的工作原理 · 73 

6.1.3 Spring MVC接口 74 

6.2 第一個 Spring MVC應用 

· 74 

6.2.1 創建Web應用並引入JAR包 · 74 

6.2.2 在 web.xml文件中部署 DispatcherServlet · 75 

6.2.3 創建 Web應用首頁· 76 

6.2.4 創建 Controller類  76 

6.2.5 創建 Spring MVC配置文件並配置 Controller映射信息· 76 

6.2.6 應用的其他頁面 77 

6.2.7 發布並運行 Spring MVC應用 77 

6.3 視圖解析器 · 78 

6.4 本章小結 · 78 習題 6  78 

學習目的與要求· 80 本章主要內容 · 80 

7.1 基於註解的控制器 

· 80 

7.1.1 Controller註解類型 · 80 

7.1.2 RequestMapping註解類型 · 81 

7.1.3 編寫請求處理方法 82 

7.2 Controller接收請求參數的常見方式 

· 83 

7.2.1 通過實體 Bean接收請求參數 · 83 

7.2.2 通過處理方法的形參接收請求參數  89 

7.2.3 通過 HttpServletRequest接收請求參數· 90 

7.2.4 通過@PathVariable接收 URL中的請求參數 · 90 

7.2.5 通過@RequestParam接收請求參數 91 

7.2.6 通過@ModelAttribute接收請求參數 91 

7.3 重定向與轉發 

· 92 

7.4 應用@Autowired進行依賴註入· 93 

7.5 @ModelAttribute註解 94 

7.6 本章小結 · 96 習題 7  96 

學習目的與要求· 98 本章主要內容 · 98 

8.1 數據綁定 · 98 

8.2 表單標簽庫 · 98 

8.3 數據綁定的應用 

·101 

8.4 JSON數據交互 

108 

8.4.1 JSON概述·108 

8.4.2 JSON數據轉換 109 

8.5 本章小結 ·112 習題 8 112 

學習目的與要求·114 本章主要內容 ·114 

9.1 攔截器概述 

·114 

9.1.1 攔截器的定義114 

9.1.2 攔截器的配置115 

9.2 攔截器的執行流程·116 

9.2.1 單個攔截器的執行流程 

·116 9.2.2 多個攔截器的執行流程 ·118 

9.3 應用案例——用戶登錄權限驗證 

120 

9.4 本章小結 ·124習題 9 124

學習目的與要求·125 本章主要內容 ·125 

10.1 數據驗證概述·125 

10.1.1 客戶端驗證·125 

10.1.2 服務器端驗證·125 

10.2 Spring驗證器 

·126 

10.2.1 Validator接口 126 

10.2.2 ValidationUtils類126 

10.2.3 Validator驗證示例 127 

10.3 Jakarta Bean Validation(JSR 380) 

·132 

10.3.1 Jakarta Bean Validation驗證配置132 

10.3.2 標註類型·133 

10.3.3 Jakarta Bean Validation驗證示例134 

10.4 本章小結·137 習題 10137 

學習目的與要求·138 本章主要內容 ·138 11.1 程序國際化概述 

138 

11.1.1 Java國際化的思想 ·138 

11.1.2 Java支持的語言和國家 ·139 

11.1.3 Java程序國際化 ·139 

11.1.4 帶占位符的國際化信息 140 

11.2 Spring MVC的國際化 

141 

11.2.1 Spring MVC加載資源屬性文件 ·141 

11.2.2 語言區域的選擇 142 

11.2.3 使用 message標簽顯示國際化信息 142 

11.3 用戶自定義切換語言示例 

143 

11.4 本章小結·147 習題 11147 

學習目的與要求·148 本章主要內容 ·148 12.1 示例介紹·148 12.2 SimpleMappingExceptionResolver類·153 12.3 HandlerExceptionResolver接口 154 12.4 @ExceptionHandler註解·155 12.5 @ControllerAdvice註解·156 12.6 本章小結·157 習題 12157 

學習目的與要求·158 本章主要內容 ·158 

13.1 文件的上傳 

·158 13.2 文件的下載 

·163 13.3 本章小結·166 習題 13166 

學習目的與要求·167 

本章主要內容 ·167 

14.1 MyBatis簡介 167 

14.2 MyBatis的環境構建168 

14.3 MyBatis的工作原理168 

14.4 MyBatis的核心配置169 

14.5 使用 Eclipse開發 MyBatis入門程序 

·170 

14.6 SSM框架的整合開發 174 

14.6.1 相關 JAR包174 

14.6.2 MapperScannerConfigurer方式 ·175 

14.6.3整合示例 

·176 

14.6.4SqlSessionDaoSupport方式 

·180 

14.7 使用 MyBatis Generator插件自動生成映射文件 

·185 

14.8 映射器概述·187 

14.9 <select>元素187 

14.9.1 使用 Map接口傳遞參數 

·188 

14.9.2 使用 Java Bean傳遞參數 

·190 

14.9.3 使用@Param註解傳遞參數 

·191 

14.9.4 <resultMap>元素 ·192 

14.9.5 使用 POJO存儲結果集 

192 

14.9.6使用 Map存儲結果集 

·194 

14.10 <insert>、<update>、<delete>和<sql>元素 195 

14.10.1 <insert>元素 

195 

14.10.2 <update>與<delete>元素 197 

14.10.3 <sql>元素 ·197 

14.11 級聯查詢 197 

14.11.1 一對一級聯查詢 

197 

14.11.2 一對多級聯查詢 

201 

14.11.3 多對多級聯查詢 

204 

14.12 動態 SQL207 

14.12.1 <if>元素 

·207 

14.12.2 <choose>、<when>和<otherwise>元素 

208 

14.12.3 <trim>元素 

·208 

14.12.4 <where>元素 

·209 

14.12.5 <set>元素 

·210 

14.12.6 <foreach>元素 

211 

14.12.7 <bind>元素 

212 

14.13 MyBatis的緩存機制 ·213 

14.13.1 一級緩存(SqlSession級別的緩存) 

·213 

14.13.2 二級緩存(Mapper級別的緩存) 

215 

14.14 本章小結 217 習題 14217 

學習目的與要求·218 本章主要內容 ·218 

15.1 JUnit 5 

218 

15.1.1 JUnit 5簡介·218 

15.1.2 JUnit 5註解·219 

15.1.3 JUnit 5斷言·220 

15.2 單元測試用例·221 

15.2.1 測試環境的構建 

·221 

15.2.2測試 Mapper接口 

·225 

15.2.3測試 Service層 

·227 

15.3 使用 Postman測試 Controller層 

·228 

15.4 本章小結·231 習題 15231 

學習目的與要求·232 本章主要內容 ·232 

16.1 EL 

·232 

16.1.1 基本語法·232 

16.1.2 EL隱含對象 ·234 

16.2 JSTL 

·236 

16.2.1 配置 JSTL237 

16.2.2 核心標簽庫之通用標簽 237 

16.2.3 核心標簽庫之流程控制標簽238 

16.2.4 核心標簽庫之迭代標簽 240 

16.2.5 函數標簽庫·242 

16.3 本章小結·244 習題 16244 

學習目的與要求·245 本章主要內容 ·245 

17.1 系統設計·245 

17.1.1 系統的功能需求 245 

17.1.2 系統的模塊劃分 245 

17.2 數據庫設計·246 

17.2.1 數據庫的概念結構設計 246 

17.2.2 數據庫的邏輯結構設計 247 

17.2.3 創建數據表·249 

17.3 系統管理 

·249 

17.3.1 添加相關依賴·249 

17.3.2 視圖頁面及靜態資源管理249 

17.3.3 應用的包結構·250 

17.3.4 配置文件·251 

17.4 組件設計 

·254 

17.4.1 管理員登錄權限驗證攔截器254 

17.4.2 前臺用戶登錄權限驗證攔截器 ·255 

17.4.3 驗證碼·255 

17.4.4 工具類·255 

17.5 後台管理子系統的實現255 

17.5.1管理員登錄 

·256 

17.5.2類型管理 

·257 17.5.3新增商品 

·260 

17.5.4查詢商品 

·262 

17.5.5修改商品 

·265 

17.5.6刪除商品 

·267 

17.5.7查詢訂單 

·268 

17.5.8按月統計 

·269 

17.5.9按類型統計 

·271 

17.5.10 安全退出·273 

17.6 前臺電子商務子系統的實現274 

17.6.1 導航欄及首頁搜索 

274 

17.6.2最新商品 

·275 17.6.3用戶註冊 

·276 17.6.4用戶登錄 

·277 17.6.5商品詳情 

·278 

17.6.6收藏商品 

·279 

17.6.7購物車 

·280 

17.6.8下單 

·282 

17.6.9個人信息 

·284 

17.6.10我的收藏 

·285 17.6.11我的訂單 

·286 

17.7 本章小結·287 習題 17287 

A.1 基於 SSM的郵件管理系統 

·288 

A.2 基於 SSM的人事管理系統 

·288