前 言
Java Web開發技術是當今最為流行的Web開發技術之一,尤其是輕量級框架開發技術,在軟件開發應用中被大量使用。為了幫助讀者更好、更快速地掌握Java Web輕量級框架開發技術并能實際運用,尤其是Java Web開發中最新用到的三大框架(Struts 2、Spring4與Hibernate 5(MyBatis))技術,我們花費大量時間編寫了本書,采用項目開發模式,以一個完整的項目開發全過程,介紹Java Web的三大框架技術的實際應用與整合,用實際項目帶動讀者對知識的理解和掌握。相信讀者通過對本書的學習,不僅可以系統地掌握Java Web三大框架整合開發的相關技術,而且可以掌握它們在實際開發中的運用,從而極大地提升Java Web開發水平,并能夠勝任相關的開發工作。
本書通過一個具體實例的開發過程,著重介紹MVC架構下的Java Web輕量級框架整合開發流程,讓讀者體驗實際的Web開發過程并掌握相關知識要點。本書對Java Web三大框架的部署和開發過程的每個步驟都做了詳細的闡述,并輔以多種實現方法,使讀者既能掌握知識框架,又能理清知識脈絡,還能按照書中的操作步驟循序漸進地學習到基本技能。另外,本書配備了大量的多媒體教學視頻,以幫助讀者更好地掌握Java Web開發技術。
本書特色
1.體系性強,知識全而新
本書系統、全面地介紹Java Web輕量級框架技術知識,從基礎性知識到應用性知識,從知識結構到項目結構,使讀者全局性掌握和理解Java Web輕量級框架技術。本書采用的資源和軟件版本都是最新的,便于讀者掌握知識前沿。
2.講解細致,環環相扣
本書對Java Web開發中涉及的各個知識點及開發步驟都進行了詳盡、細致的講解,語言表述清晰、準確,而且注意各個技術之間的關聯,講解時環環相扣,逐步深入,使讀者學習起來沒有障礙。
3.實例豐富,精于技巧
本書注重實戰,在講解各項技術的相關概念及知識點時都輔以相應的實例,通過實例向讀者演示實際的操作方法,加深讀者對相關技術的理解,從而能夠熟練、靈活地運用這些技術。
4.真實項目,增強效果
本書提供了一個真實的電子商城項目案例,通過該項目的整個開發過程的記錄,可以幫助讀者系統地理解實際項目開發中三大框架的具體部署和整合開發流程,并輔以新知識、新方法的引入和應用,從而提高讀者的實戰開發水平。
5.全程視頻,資源豐富
本書配套教學視頻、素材、源代碼、教學PPT、大綱和習題答案下載地址(注意數字和字母大小寫)如下:http://pan.baidu.com/s/1pL3vl7l,密碼:cdkv。如果下載有問題或需要答疑,請您發電子郵件至shikham99@163.com,郵件主題為"Java Web輕量級框架項目化教程"。
本書主要內容
本書共分為10章,各章的主要內容介紹如下。
第1章 Java Web軟件安裝與開發環境搭建,重點介紹如何實現安裝和配置Java Web的開發環境。
第2章 電子商城項目簡介與設計,重點介紹電子商城項目的設計思路、框架結構、模塊構造、數據庫設計等,并對MVC的基本概念、設計理念和基本方法等做了講解。
第3章 使用Struts 2框架進行表示層開發,主要通過開發電子商城項目的部分頁面,介紹Struts 2的基礎知識和基本方法。
第4章 使用Hibernate 5框架和MyBatis 框架進行持久層開發,主要講解Hibernate 5和MyBatis的基礎知識和持久層開發的實現。
第5章 使用Spring 4框架進行邏輯層開發,主要介紹使用Spring框架進行邏輯層開發的基本知識,包括Spring的核心機制、Bean的裝配模式、Spring AOP、Spring MVC等。
第6章 SSH2整合實現電子商城前臺功能,主要介紹三個框架的整合方法。
第7章 Spring整合Hibernate與Struts 2實現產品管理,主要介紹結合前端Easy UI框架實現部分后臺管理功能。
第8章 Spring整合Hibernate與Spring MVC實現訂單管理,主要包括創建訂單、查詢訂單、修改訂單、刪除訂單等。
第9章 Spring整合MyBatis與Spring MVC實現用戶和權限管理,主要包括用戶的查看、啟用和禁止,以及權限的賦予。
第10章 技術開發總結及項目知識框架,主要通過對電子商城項目開發的總結,幫助讀者回顧知識要點,把握整體框架。
本書讀者對象
本書適合從未接觸過Java Web開發技術的初學者,有一定Java Web開發基礎、希望進一步深入學習的讀者,需要全面學習三大框架技術的人員,J2EE開發工程師閱讀;也可以作為高職院校和大專院校計算機相關專業課程的教材。
作者及致謝
本書由揚州職業大學的繆勇、施俊和李新鋒編著。其中,施俊編寫了第1、2、3、6章;繆勇編寫了第4、5、7、8、9章;李新鋒編寫了第10章,并對本書進行統稿。在編寫過程中,王梅、陳亞輝、李艷會、劉嬌、湯劼、游名揚、李云霞、王永慶、蔣梅芳等提供了大量的幫助,在此一一向他們致謝。
由于作者水平有限,書中難免存在一些不足和錯誤之處,敬請讀者批評指正。
編 者
目 錄
第1章 Java Web軟件安裝與開發環境
搭建.... 1
1.1 安裝和配置JDK 8. 1
1.2 安裝與配置Tomcat 8. 4
1.3 MySQL數據庫的安裝與配置... 6
1.4 MyEclipse 2015的安裝與配置... 13
1.5 創建Java Web工程digital 18
小結... 21
思考與練習... 21
第2章 電子商城項目簡介與設計.... 22
2.1 項目分析與功能設計... 22
2.2 系統分析和設計... 23
2.3 數據庫設計... 27
小結... 30
思考與練習... 30
第3章 使用Struts 2框架進行表示層
開發.... 31
3.1 認識Struts 2框架... 31
3.2 使用JSP Struts 2 JDBC實現用戶
登錄... 34
3.3 使用Struts 2表單標簽實現用戶
注冊... 47
3.4 使用Struts 2標簽實現商品類別
顯示... 56
3.5 使用method屬性及通配符修改登錄
注冊... 62
3.6 使用自定義攔截器完善登錄功能... 66
3.7 使用Struts 2的驗證框架完善程序... 74
3.8 使用Struts 2的國際化完善程序... 80
3.9 使用Struts 2的Ajax標簽顯示提示
信息... 89
小結... 94
思考與練習... 94
第4章 使用Hibernate 5框架和MyBatis
框架進行持久層開發.... 97
4.1 認識Hibernate 5框架... 97
4.1.1
Hibernate的優勢... 97
4.1.2 持久化和ORM... 98
4.1.3
Hibernate體系結構... 98
4.2 基于XML映射文件實現數據的
CRUD.. 100
4.2.1 Hibernate的下載與安裝... 100
4.2.2 Hibernate的執行流程... 101
4.2.3 添加數據... 102
4.2.4 加載數據... 108
4.2.5 刪除數據... 110
4.2.6 修改數據... 110
4.3 基于Annotation注解實現數據的
CRUD.. 111
4.4 基于XML映射文件的Hibernate關聯
映射... 114
4.4.1 單向多對一映射... 114
4.4.2 單向一對多映射... 117
4.4.3 雙向多對一映射... 118
4.4.4 雙向多對多映射... 120
4.4.5 雙向一對一映射... 124
4.5 基于Annotation注解的Hibernate關聯
映射... 130
4.5.1 雙向多對一映射... 130
4.5.2 雙向多對多映射... 133
4.5.3 雙向一對一映射... 135
4.6 使用HQL和QBC查詢數據... 138
4.6.1 HQL查詢... 138
4.6.2 QBC查詢... 148
4.7 Hibernate緩存... 155
4.7.1 Hibernate中的第一級緩存... 156
4.7.2 Hibernate中的第二級緩存... 158
4.7.3 Hibernate中的查詢緩存... 163
4.8 使用MyBatis框架進行持久層
開發... 164
4.8.1 MyBatis下載... 164
4.8.2 基于XML映射文件實現數據
的CRUD.. 164
4.8.3 基于XML注解實現數據
的CRUD.. 169
4.8.4 一對一關聯映射... 171
4.8.5 一對多關聯映射... 175
4.8.6 多對多關聯映射... 179
4.8.7 動態SQL. 183
4.8.8 MyBatis調用存儲過程... 191
小結... 192
思考與練習... 192
第5章 使用Spring 4框架進行邏輯層
開發.... 195
5.1 認識Spring 4框架... 195
5.2 了解Spring的核心機制:依賴注入/
控制反轉... 197
5.3 了解Bean的裝配模式... 200
5.3.1 Bean工廠的
ApplicationContext 200
5.3.2 Bean的作用域... 202
5.3.3 Bean的裝配方式... 203
5.3.4 基于Annotation的Bean
裝配... 207
5.4 使用Spring AOP生成商品瀏覽
日志... 209
5.4.1 AOP簡介... 209
5.4.2 基于XML配置文件的AOP
實現... 210
5.4.3 基于@AspectJ注解的AOP
實現... 215
5.5 Spring整合Struts與Hibernate實現
用戶登錄... 217
5.5.1 基于XML配置的S2SH
整合... 218
5.5.2 基于Annotation注解的S2SH
整合... 226
5.6 使用Spring MVC實現表示層的
開發... 230
5.6.1
Spring MVC概述... 230
5.6.2 基于注解的處理器... 231
5.6.3 請求映射方式... 233
5.6.4 綁定控制器類處理方法輸入
參數... 237
5.6.5 控制器類處理方法的返回值
類型... 239
5.6.6 保存模型屬性到
HttpSession. 240
5.6.7 在控制器類的處理方法執行前
執行指定的方法... 241
5.6.8 直接頁面轉發、自定義視圖
與頁面重定向... 241
5.6.9 控制器的類型轉換、格式化
和數據校驗... 243
5.6.10
Spring MVC返回Json
數據... 246
5.6.11
Spring MVC(注解)文件
上傳... 247
5.6.12
Spring MVC的國際化... 248
5.7 Spring整合Spring MVC與Hibernate
實現登錄... 250
5.8 Spring整合Spring MVC與MyBatis
實現登錄... 257
小結... 262
思考與練習... 263
第6章 SSH2整合實現電子商城前臺
功能.... 265
6.1 項目環境搭建... 265
6.2 前臺商品列表顯示... 266
6.3 商品詳細信息查看... 274
6.4 用戶購物車管理... 277
6.5 訂單功能... 285
6.6 前臺頁面瀏覽排行榜... 295
小結... 298
思考與練習... 298
第7章 Spring整合Hibernate與Struts 2
實現產品管理.... 300
7.1 環境搭建... 300
7.2 創建實體類... 301
7.3 創建DAO接口及實現類... 303
7.4 創建Service接口及實現類... 308
7.5 Easy UI和管理員登錄... 308
7.6 產品管理首頁面... 311
7.7 產品列表顯示... 313
7.8 查詢產品... 317
7.9 添加產品... 318
7.10 刪除產品... 320
7.11 修改產品信息... 321
小結... 322
思考與練習... 323
第8章 Spring整合Hibernate與Spring
MVC實現訂單管理.... 324
8.1 環境搭建... 324
8.2 創建實體類... 325
8.3 創建DAO接口及實現類... 328
8.4 創建Service接口及實現類... 333
8.5 訂單管理首頁面... 333
8.6 創建訂單... 335
8.7 查詢訂單... 342
8.8 刪除訂單... 346
8.9 修改訂單/查看明細... 347
小結... 353
思考與練習... 353
第9章 Spring整合MyBatis與Spring
MVC實現用戶和權限管理.... 354
9.1 環境搭建... 354
9.2 創建實體類... 355
9.3 創建DAO接口及相應的SQL映射
文件... 357
9.4 創建Service接口及實現類... 360
9.5 創建攔截器... 360
9.6 管理員登錄... 361
9.7 用戶和權限管理首頁面... 363
9.8 用戶管理模塊... 367
9.8.1 用戶列表顯示功能實現... 367
9.8.2 用戶查詢功能實現... 370
9.8.3 啟用和禁用用戶功能實現... 371
9.9 管理員權限管理模塊... 373
9.9.1 管理員列表顯示功能的
實現... 373
9.9.2 新增管理員功能實現... 374
9.9.3 設置/修改權限功能的實現... 376
小結... 380
思考與練習... 381
第10章 技術開發總結和項目技術
框架.... 382
10.1 Java Web 技術總覽... 382
10.2 電子商城項目技術框架... 386
小結... 388