零基礎學Struts

零基礎學Struts

本書由淺入深、循序漸進地介紹了Struts2框架的知識點。重點介紹了Struts2的類型轉換、輸入校驗、攔截器、國際化、標籤庫以及Struts2的Ajax支持。最後通過兩個實際案例來演示如何將Struts運用到實際項目開發中。本書面向所有進行JavaWeb開發的初學者或者對Struts2框架感興趣的讀者,同時也可用作高校相關專業師生和社會培訓班的教材。

基本信息

內容簡介

Struts2框架繼承了Struts和WebWork兩個框架的易用性,其功能相比Struts和WebWork要更加強大。Struts2從誕生至今,以其功能的強大性和易用性吸引了大量JavaWeb開發人員的眼球。目前大量原有的Struts和WebWork開發項目也都轉入使用Struts2框架開發。由於Struts2框架誕生至今時間非常得短,因此國內介紹Struts2框架的書寥寥無幾。《零基礎學Struts》旨在幫助讀者能更快、更好地掌握這門技術,並運用到實際項目開發中。相比其他介紹Struts2框架的書籍來說,《零基礎學Struts》更加細緻、更加全面。

序言

Struts框架是全世界第一個MVC框架,發展至今有多年的歷史,一直備受開發人員熱捧、但是隨著時間的流逝,Struts框架暴露出許多的缺陷,這些缺陷一直困撓著大量的開發人員,許多開發人員不得不選擇其他MVC框架。所幸的是,Struts2框架橫空問世了。Struts2框架整合了兩個非常優秀的MVC框架:Struts和WebWork。

Struts2框架繼承了Struts和WebWork兩個框架的易用性,其功能相比Struts和WebWork來說要更加強大。Struts2框架利用了WebWork的攔截器機制,從而使Struts2具有高度可擴展性。Struts2的開發團隊由原有的Struts和WebWork兩個團隊組成,大大加強了Struts2開發團隊力量。Struts2從誕生至今以其功能的強大性和易用性吸引了大量JavaWeb開發人員的眼球。目前大量原有的Struts和WebWork開發項目也都轉入使用Struts2框架開發。相信隨著Struts2的發展,Struts2最終將取代Struts框架成為開發人員的首選MVC開發框架。

本書重點介紹了Struts2框架的核心部分以及Struts2框架與其他框架的整合。核心部分介紹了Struts2的類型轉換、輸入校驗、攔截器、國際化、標籤庫以及Struts2的Ajax支持。書中通過實例來講解知識點,使讀者學習起來不會枯燥,更容易理解。同時本書介紹了Struts2框架與其他框架的整合功能,如整合報表工具JasperReports、統計圖表工具jfreechart持久層框架Hibernate以及spring框架等。本書深入淺出,內容豐富,既可以作為初學者的入門指南,也可以作為開發人員的案頭參考書。

本書特點

1、實例經典,內容豐富

每個知識點都通過一個配套的案例展開講述。最後還提供了幾個開發常用的系統模組,如登錄系統、用戶管理系統。

2、取材廣泛,內容充實

筆者在講解每一個知識點時都會考慮如何組織實例代碼。這些實例代碼大部分都足在項目中常用的。這些實例都能將該知識點很好地組織起來並運用到實際項目中。

3、講解通俗,步驟詳細

本書通過對話形式展開論述,講解通俗易懂。讀者只要按照開發步驟來編寫程式,就能很快地掌握Struts2框架的使用。

4、專業知識,抓住主線

本書對於Struts2的類型轉換、輸入校驗、攔截器、國際化、標籤庫等重點內容採用了大量的案例進行講述。

5、讀者服務,線上交流

讀者可以登錄融智科技的讀者交流論壇(www、rzchina、net),並在該論壇提出學習中遇到的困難,及對本書的意見和建議。筆者將在第一時間為讀者作出解答。

本書內容

第1章以一個登錄案例為例,介紹了使用Model1模式和Model2模式開發的區別。介紹了如何使用MVC設計模式來改寫登錄案例,以及MVC設計模式的優點。介紹了常用的MVC框架,其中詳細地介紹了Struts1框架。通過下載和安裝Struts1框架,並完成基於Struts1框架的登錄案例。也介紹了如何在Eclipse中新建Web項目。整合Tomcat伺服器以及通過Eclipse的外掛程式來為Web套用添加Struts1框架支持。並詳細介紹如何在Eclipse中添加ActionForm、Action以及部署項目。

目錄

寫給未來的程式設計師

前言

第一篇從JSP到Struts2

第1章Struts2前奏

1.1MVC思想概述

1.1.1簡單的登錄案例

1.1.2測試案例

1.1.3Model1和Model2

1.1.4使用MVC設計模式改進代碼

1.1.5測試MVC改進代碼

1.2MVC框架介紹

1.2.1常用的MVC框架

1.2.2Struts1框架簡介

1.2.3下載並安裝Struts1框架

1.2.4基於Struts1框架實現登錄案例

1.3在Eclipse中開發Struts1

1.3.1新建Web項目

1.3.2整合Tomcat伺服器

1.3.3為項目添加Struts1支持

1.3.4添加ActionForm

1.3.5添加Action

1.3.6部署Struts1項目

1.4小結

第2章Struts2基礎

2.1Struts2概述

2.1.1Struts1的缺陷

2.1.2Struts2簡介

2.2構建第一個Struts2套用

2.2.1下載並安裝Struts2框架

2.2.2基於Struts2框架實現登錄案例

2.2.3程式執行流程

2.3在Eclipse中開發Struts2

2.3.1為項目添加Struts2支持

2.3.2添加控制器Action

2.3.3添加並配置Struts.xml

2.3.4增加視圖資源並部署Web套用

2.4改進控制器

2.4.1實現Action接口

2.4.2配置Action

2.5完成輸入校驗

2.5.1使用Struts2標籤庫簡化表單

2.5.2繼承ActionSupport完成輸入校驗

2.6程式國際化

2.6.1輸出中文的校驗錯誤信息

2.6.2國際化資源檔案

2.6.3載入資源檔案

2.6.4輸出國際化信息

2.6.5輸出國際化的校驗錯誤信息

2.7小結

第二篇Struts2模組開發

第3章類型轉換

3.1類型轉換的介紹

3.1.1類型轉換的意義

3.1.2簡單的類型轉換示例

3.2Struts2內建的類型轉換器

3.2.1內建轉換器介紹

3.2.2基本數據類型轉換器

3.2.3基本數據類型的封裝類轉換器

3.2.4數組類型轉換器

3.2.5集合類型轉換器

3.3OGNL表達式語言

3.3.1簡單介紹OGNL以及如何下載OGNL原始碼

3.3.2在Eclipse中查看OGNL類檔案

3.4自定義類型轉換器

3.4.1項目需求

3.4.2實現自定義類型轉換器

3.4.3註冊自定義類型轉換器

3.4.4新建顯示頁測試程式

……

3.5局部類型轉換器和全局類型轉換器

3.6實現集合類型轉換器

3.7類型轉換中錯誤處理

3.8小結

第4章Struts2輸入校驗

4.1輸入校驗的意義

4.2客戶端校驗

4.3伺服器端校驗

4.4動態方法調用以及校驗動態方法

4.5小結

第5章Struts2校驗框架

5.1Struts2校驗框架初探

5.2校驗器風格

5.3內建校驗器

5.4使用校驗框架完成輸入校驗

5.5小結

第6章Struts2攔截器

6.1學前必備知識

6.2攔截器介紹以及實現原理

6.3Struts2自定義攔截器

6.4深入攔截器

6.5Struts2內建攔截器

6.6使用攔截器完成許可權控制

6.7小結

第三篇Struts2高級套用

第7章檔案上傳和下載

7.1使用上傳框架實現檔案上傳

7.2基於Struts2完成檔案上傳

7.3檔案上傳高級配置

7.4Struts2實現上傳多個檔案

7.5檔案下載

7.6小結

第8章Struts2國際化

8.1國際化實現原理

8.2JSP頁面國際化..

8.3Action中訪問國際化資源檔案

8.4實現用戶自行選擇語言環境

8.5小結

第9章Struts2標籤庫

9.1初涉Struts2標籤庫

9.2邏輯控制標籤

9.3數據訪問標籤

9.4UI標籤

9.5小結

第10章Struts2與Ajax

10.1Ajax簡介

10.2傳統Web套用與Ajax套用對比

10.3Struts2整合Ajax開發

10.4Struts2整合JSON開發

10.5小結

第四篇Struts2整合套用

第11章Struts2整合JFreeChart開發

11.1初涉JFreeChart

11.2JFreeChart進階

11.3JFreeChart生成柱狀圖

11.4JFreeChart的常用統計圖表

11.5在網頁中生成和顯示圖表

11.6Struts2整合開發

11.7小結

第12章Struts2整合JasperReports開發

12.1初涉JasperReports

12.2使用iReport設計報表

12.3導出PDF檔案報表

12.4帶查詢報表

12.5帶參數的報表

12.6整合Struts2和JasperReports開發報表

12.7小結

第13章Struts2整合Hibernate開發

13.1初涉Hibernate

13.2Hibernate開發入門

13.3Struts2整合Hibernate開發

13.4小結

第14章Struts2整合Spring開發

14.1初探Spring

14.2Spring的依賴注入

14.3Spring的自動裝配

14.4整合Struts2和Spring框架

14.5整合Spring完成登錄案例

14.6整合Spring完成產品管理案例

14.7小結

第五篇Struts2案例開發

第15章整合開發註冊登錄系統

15.1系統分析

15.2Hibernate持久層設計

15.3DAO層設計

15.4業務邏輯層設計

15.5完成用戶註冊模組

15.6完成用戶登錄模組

15.7小結

第16章整合開發用戶管理系統

16.1系統分析

16.2Hibernate持久層設計

16.3DAO層設計

16.4業務邏輯層設計

16.5完成查看所有用戶信息模組

16.6完成查看用戶詳細信息模組

16.7完成添加用戶模組

16.8完成刪除用戶模組

16.9完成更新用戶模組

16.10小結

書摘

第一篇 從JSP到Struts 2

第2章 Struts 2基礎

Struts 2是Struts 1的換代產品,不過它已經和Struts 1沒有太大的聯繫了。Struts 2吸收了大量WebWork的設計思想,同時也吸收了部分Struts 1的特點。Struts 2的目標是使得以前基於Struts 1和WebWork開發的開發人員能夠平穩地過度到基於Struts 2框架來開發。

2.1 Struts 2概述

2.1.1 Struts1P的缺陷

Struts 1框架是一個非常流行的框架,同樣也是現在的MVC主流框架,但是Struts 1框架存在著一些問題。框架的流行和框架中存在的問題是不會有必然的聯繫的。就拿MFC來說,MFC存在許多問題,比如代碼過於龐大、格式固定等。但是,一直到現在還是有很多程式仍然使用它來開發。這是為什麼呢?是因為大量的開發人員已經習慣了這種開發模式,短時間內無法轉到其他的開發平台上。不過隨著時間和技術的發展,這種技術的運用會越來越少,最終會被新出現的技術淘汰的。

Struts 1也是因為出現的年代比較早,所以隨著時間的發展,存在的問題也越來越明顯。Struts 1存在的問題大致可分為5類。

(1)代碼與Servlet API耦合度高,難於測試。

Struts 1中的業務邏輯控制器Action與Servlet API耦合度高,難於測試。所謂耦合度,是指模組之間聯繫的緊密程度。耦合度高是指模組之間的緊密程度高,而耦合度低是指模組之間的緊密程度低。在Struts 1的業務邏輯控制器Action中充斥著大量的Servlet API,使得業務邏輯控制器Action與Servlet API耦合度高。下面是一段Struts l的Action代碼。

相關詞條

相關搜尋

熱門詞條

聯絡我們