《21世紀高等職業教育計算機系列規劃教材:Java EE項目應用開發·基于Struts 2,Spring,Hibernate》包括基于Java EE核心的MVC開發基礎;基于Java EE開發的核心技術和Java EE高級Web應用開發專業項目——權限管理系統三部分內容。第一部分介紹基于B/S的Web應用開發模型、Java EE體系結構、Java EE開發環境搭建、基于MVC的常用Web開發模式、典型的MVC框架Struts,其中通過樣例開發的講解用于掌握MVC開發基礎,并通過習題和實訓應用內容用于強化基本MVC開發能力。第二部分系統介紹了Struts 2應用、Hibernate應用、Spring應用及它們之間的整合應用,對這些核心框架技術及整合應用都提供樣例開發實踐,可以讓讀者清晰地了解它們之間的應用方式,并且利用習題和實訓應用的訓練,可以強化讀者對這些核心框架技術的應用能力。第三部分詳細地介紹了一個真實工程應用項目——XX信息管理系統之權限管理子系統的分析、設計、開發實現過程。
《21世紀高等職業教育計算機系列規劃教材:Java EE項目應用開發·基于Struts 2,Spring,Hibernate》可作為高職高專相關專業課程教材和教學參考書,也可供從事Java EE應用系統開發的用戶學習和參考之用。
Java EE技術從最初提出構建企業級應用,經過多年的發展日臻成熟,目前已經成為電子商務應用最佳解決方案之一,得到行業的廣泛認可和應用。為了適應形勢發展需要,我國許多高校(特別是專門培養學生實踐技能的高職高專院校)開設了Java EE課程,并且已經構成了一個系列。但目前講解Java EE的書主要分成兩類:一類是純粹面向企業應用開發的高級應用而編寫的,對Java EE技術基礎講解不夠;另一類是純粹的Java EE基礎講解,而沒有把Java EE技術應用到真實案例。這兩類書籍并不能很好地適應學生學習的需要。
作者學校從2005年起開始與IBM教育學院合作開設軟件技術(Java EE應用開發方向),從最開始直接使用IBM教育學院提供的培訓類教程,到后面逐步結合工程應用積累的經驗所形成的講義,經過幾年的教學總結和研究思考,我們發現,現有教材+講義的方式已經不適合專業學生能力的提升,于是決定根據多年教學經驗和Java EE工程應用實際,編寫這本Java EE項目應用開發。
Java EE技術包含很多內容,本書從基于Java EE核心的MVC開發基礎入手,掌握基本的Web應用開發技術,接著分別介紹基于Java EE開發的核心框架技術Struts 2、Spring、Hibernate以及它們的相互整合應用,每一種核心框架技術都從基礎的例子著手,一步一步引導讀者學習和應用這些技術,并最后通過一個真實工程應用項目提升學生利用SSH技術進行工程應用開發實踐能力。
本書主要包含基于Java EE核心的MVC開發基礎、基于Java EE開發的核心技術、Java EE高級Web應用開發專業項目三部分,涵蓋基礎、核心技術和工程應用的全過程。基礎部分介紹基于B/S的Web應用開發模型、Java EE體系結構、Java EE開發環境搭建、基于MVC的常用Web開發模式、典型的MVC框架Struts。核心框架技術部分系統介紹Struts2應用、Hibernate應用、Spring應用及它們之間的整合應用。工程應用部分詳細介紹了一個真實工程應用項目——XX信息管理系統之權限管理子系統,利用SSH技術,結合軟件開發生命周期,系統地展現了權限管理系統的分析、設計、詳細實現的完整過程,從而讓讀者體會到整合框架的妙處,深刻理解SSH框架的詳細應用。
本書在核心技術內容選取上以基礎、實用、夠用為原則,項目實踐按照需求分析、項目設計、代碼迭代、軟件測試及項目部署等實際開發流程編寫,注重培養讀者的Java EE工程應用能力。本書在編寫上立足于高職高專,語言淺顯易懂,對核心技術說明均采用工程應用項目中實用的程序分析問題。
本書可作為高職高專相關專業課程教材和教學參考書,也可供從事Java EE應用系統開發的用戶學習和參考。
本書由四川托普信息技術職業學院劉勇軍副教授和四川電力職業技術學院王電鋼博士擔任主編,四川托普信息技術職業學院孫璐、羅國濤擔任副主編,陳虹君、黃琨、杜毅等老師參與編寫工作,另外四川托普信息技術職業學院軟件研究所部分老師和學生幫助完成了項目組織,代碼調試等基礎工作。其中劉勇軍負責編寫第三部分中的第12、13章,王電鋼負責編寫第一部分中的第1章和第二部分中的第3章,孫璐負責編寫第二部分中的第9、10章,羅國濤負責編寫第二部分中的第2、4章,陳虹君負責編寫第二部分中的第5、6章,黃琨負責編寫第二部分中的第7、8章,杜毅負責編寫第二部分中的第11章。本書的編寫過程是一個不斷解決困難的過程,有時舉步維艱,有時進展順暢。幸好有編寫團隊朋友們的鼓勵和支持,沒有大家的不遺余力,兢兢業業的努力,本書不可能成形,在此對所有參與編寫工作的同仁表示由衷的感謝。
為了方便教師教學,本書配有電子教學課件,請有此需要的教師登錄華信教育資源網免費注冊后進行下載,有問題時請在網站留言板留言或與電子工業出版社聯系,也可直接與作者聯系
由于編者水平有限和時間倉促,書中難免存在疏漏之處,歡迎廣大讀者批評指正。
第一部分 基于Java EE核心的MVC開發基礎
第1章 Web應用構架及Java EE
1.1 Web應用架構
1.1.1 Web應用模型
1.1.2 HTTP請求/響應模型
1.1.3 Web應用發展
1.2 Java EE簡介
1.2.1 Java EE體系結構
1.2.2 Java EE組件及容器
1.2.3 Java EE打包與部署
1.3 MVC設計模式
1.3.1 MVC設計模式
1.3.2 Java EE與MVC
1.3.3 Web開發模式
1.4 Java EE應用開發環境
1.4.1 JDK的安裝配置
1.4.2 Tomcat的安裝配置
1.4.3 MyEclipse的安裝配置
1.5 JSP Model2開發模式應用樣例
1.5.1 電子商務網站說明
1.5.2 JSP Model2應用:在線購物的B2C電子商務網站-用戶注冊登錄應用
1.6 典型MVC框架Struts及其應用
1.6.1 Struts框架
1.6.2 Struts框架應用:電子商務網站-購物車應用
課后習題
實訓應用
第二部分 基于Java EE開發的核心技術
第2章 Struts 2快速入門
2.1 Struts 2產生的原因
2.1.1 Struts 1框架簡介
2.1.2 WebWork框架簡介
2.1.3 Struts 2框架簡介
2.2 Struts 2工作流程
2.3 Struts 2應用樣例
2.4 Struts 2框架詳解
2.4.1 struts.xml
2.4.2 Action類詳細講解
2.4.3 web.xml
課后習題
實訓應用
第3章 Struts 2標簽庫
3.1 控制標簽
3.1.1 <s:if > /<s:elseif > /<s:else>標簽
3.1.2 <s:iterator>標簽
3.1.3 <s:append>標簽
3.1.4 <s:sort>標簽
3.1.5 <s:merge>標簽
3.1.6 <s:generator>標簽
3.1.7 <s:subset>標簽
3.2 數據標簽
3.2.1 <s:action>標簽
3.2.2 <s:property>標簽
3.2.3 <s:param>標簽
3.2.4 <s:bean>標簽
3.2.5 <s:date>標簽
3.2.6 <s :set>標簽
3.2.7 <s:url>標簽
3.2.8 <s:include>標簽
3.2.9 <s:i18n>標簽
3.2.10 <s:push>標簽
3.2.11 <s:debug>標簽
3.3 表單標簽
3.3.1 表單標簽通用屬性
3.3.2 <s:ckeckboxlist>標簽
3.3.3 <s:combobox>標簽
3.3.4 <s:select>標簽
3.3.5 <s:radio>標簽
3.3.6 <s:optgroup>標簽
3.3.7 <s:doubleselect>標簽
3.3.8 <s:updownselect>標簽
3.3.9 <s:optiontransferselect>標簽
3.3.10 <s:token>標簽
3.4 非表單標簽
3.4.1 <s:actionerror>和<s:actionmessage>標簽
3.4.2 <s:fielderror>標簽
3.5 Ajax標簽
3.5.1 <s:head>標簽
3.5.2 <s:datetimepicker>標簽
3.5.3 <s:a>和<s:submit>標簽
3.5.4 <s:tree>和<s:treenode>標簽
3.6 OGNL表達式
3.6.1 OGNL表達式概念
3.6.2 Struts 2的OGNL
3.6.3 OGNL的集合操作
3.6.4 #、%和$在OGNL中的使用
3.6.5 OGNL實例
課后習題
實訓應用
第4章 Struts 2國際化
4.1 Struts 2國際化
4.1.1 Struts 2國際化實現原理
4.1.2 國際化資源文件配置
4.1.3 國際化資源訪問
4.2 Struts 2國際化工程應用樣例
課后習題
實訓應用
第5章 Struts 2轉換器
5.1 Struts 2類型轉換原理
5.2 Struts 2內置類型轉換器
5.3 使用類型轉換
5.4 配置自定義類型轉換器屬性文件
5.5 類型轉換的錯誤處理
課后習題
實訓應用
第6章 Struts 2校驗器
6.1 輸入校驗概述
6.2 編程實現Struts 2輸入校驗
6.3 Struts 2校驗框架
課后習題
實訓應用
第7章 Struts 2攔截器
7.1 攔截器實現原理
7.2 攔截器配置
7.3 使用自定義攔截器
7.4 攔截器使用案例
課后習題
實訓應用
第8章 Struts 2文件上傳下載
8.1 文件上傳原理
8.2 使用框架實現文件上傳
8.2.1 Common-FileUpload框架
8.2.2 Common-FileUpload框架上傳文件應用樣例
8.2.3 COS框架
8.2.4 COS框架上傳文件工程應用樣例
8.3 Struts 2文件上傳
8.3.1 Struts 2文件上傳原理
8.3.2 Struts 2單個文件上傳應用樣例
8.3.3 Struts 2多個文件上傳應用樣例
8.3.4 Struts 2攔截器過濾上傳及工程應用樣例
8.4 Struts 2文件下載
課后習題
實訓應用
第9章 Struts 2整合Spring
9.1 Spring簡介
9.1.1 Spring架構
9.1.2 Spring簡單應用
9.2 Spring核心
9.2.1 Spring依賴注入
9.2.2 Spring容器
9.2.3 Spring中AOP
9.3 Struts 2與Spring的整合
9.3.1 Struts 2與Spring整合的各種方式的探討與比較
9.3.2 Struts 2與Spring整合工程應用樣例
課后習題
實訓應用
第10章 Struts 2整合Hibernate
10.1 Hibernate簡介
10.1.1 ORM
10.1.2 Hibernate工作流程
10.1.3 Hibernate 核心組件
10.1.4 Hibernate簡單應用
10.2 Hibernate核心
10.2.1 Hibernate映射
10.2.2 Hibernate對象操作
10.2.3 HQL
10.2.4 Hibernate事務處理
10.3 Struts 2與Hibernate整合工程應用樣例
課后習題
實訓應用
第11章 Struts 2、Spring、Hibernate整合應用樣例
11.1 樣例分析
11.1.1 SSH的分層架構設計
11.1.2 Spring和Hibernate的整合
11.1.3 Spring對Hibernate的支持
11.2 整合應用
11.2.1 項目創建
11.2.2 Hibernate持久層
11.2.3 DAO層
11.2.4 Service層
11.2.5 Action層
11.2.6 業務功能實現
課后習題
實訓應用
第三部分 Java EE高級Web應用開發專業項目--權限管理系統
第12章 項目案例研究
12.1 系統需求確定
12.1.1 系統功能說明
12.1.2 業務功能分析
12.1.3 用例分析
12.2 系統設計
12.2.1 系統架構設計
12.2.2 系統公共組件設計
12.2.3 系統業務設計
12.3 數據庫設計
12.3.1 系統實體
12.3.2 系統表關系圖及數據表
實訓應用
第13章 權限管理子系統開發實現
13.1 工程搭建
13.1.1 創建Struts 2應用
13.1.2 添加Hibernate應用
13.1.3 添加Spring應用
……