官术网_书友最值得收藏!

前言

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

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

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

本書特點

1. 實例經典,內容豐富

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

2. 取材廣泛,內容充實

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

3. 講解通俗,步驟詳細

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

4. 專業知識,抓住主線

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

5. 讀者服務,在線交流

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

本書內容

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

第2章介紹了Struts 1存在的問題,并介紹了Struts 2的起源。詳細介紹了如何下載及安裝Struts 2框架,并通過實例介紹了如何創建基于Struts 2的項目。還介紹了如何通過Eclipse來為項目添加Struts 2支持以及如何添加控制器以及struts.xml。簡單介紹了如何完成輸入校驗和程序國際化,這部分的知識將在后面的章節中進行詳細的介紹并說明,這里只是給讀者一個感性的認識。

第3章詳細地介紹了為什么要進行類型轉換以及如何進行類型轉換。介紹了如何通過OGNL的DefaultTypeConverter類和Struts的StrutsTypeConverter類進行類型轉換。詳細介紹了局部類型轉換和全局類型轉換的使用方法以及類型轉換錯誤信息的處理和國際化類型轉換和數據校驗是緊密結合的,下一章將結合類型轉換來講解數據校驗,因此一定要弄懂類型轉換的基礎知識。

第4章介紹了什么是輸入校驗,為什么要進行輸入校驗。介紹了輸入校驗的兩種實現方式:一種是客戶端校驗;另一種是服務器端校驗。詳細介紹了如何通過JavaScript代碼來實現客戶端校驗。同樣對于服務器端校驗展開了詳細的介紹和說明。介紹了如何通過addActionError()方法和addFieldError()方法來添加校驗錯誤提示信息。最后介紹了如何實現動態方法調用以及如何校驗動態方法。本章的輸入校驗都是通過手動編寫校驗代碼來實現的,在下一章將介紹如何通過Struts 2提供的校驗框架來完成校驗。

第5章介紹了使用Struts 2校驗框架的好處以及編寫校驗規則文件的方法。詳細介紹了近年來各種校驗器的配置風格。介紹了Struts 2中有哪些內建校驗器,以及這些校驗器分別實現哪些校驗功能。也介紹了如何運用這些內建校驗器來完成輸入校驗。同時還介紹了如何添加客戶端校驗以及實現國際化。最后介紹了如何實現校驗短路、校驗規則和文件搜索規則。

第6章介紹了代理模式以及動態代理模式,為學習攔截器打下牢固基礎。然后介紹了什么是攔截器,以及攔截器的實現原理。重點介紹了如何定義一個攔截器類,配置攔截器以及使用攔截器。還介紹了攔截器的深入知識,如傳遞參數、配置攔截器棧、攔截器執行順序、方法過濾、攔截結果監聽器。簡單介紹了Struts 2中內建的攔截器,以及這些攔截器的配置。本章最后通過一個案例來演示如何通過攔截器來實現權限控制。

第7章介紹了如何下載并安裝Common-FileUpload框架以及COS框架,如何分別通過這兩個框架實現文件上傳。重點介紹了如何基于Struts 2完成文件下載,并介紹了一些常用的配置,如配置文件保存目錄、實現文件過濾、輸出錯誤提示。還介紹了如何使用數組和List實現上傳多個文件。本章還介紹了如何通過Struts 2的文件下載支持來實現文件下載,并通過結合攔截器實現了下載權限控制。

第8章介紹了國際化實現原理,分別介紹了資源文件的命名規則、Java所有支持的國家與地區名、語言名及其代碼。并介紹了如何完成Java程序的國際化,以及如何通過參數為占位符賦值。詳細介紹了JSP頁面國際化的兩種訪問資源文件方式,以及加載資源文件順序。還介紹了Action中訪問國際化資源的3種方式,以及這3類資源文件加載的順序。本章最后通過一個用戶自行選擇語言環境的示例,分別介紹了如何通過Action以及Struts 2的i18n攔截器來設置當前默認語言環境。

第9章介紹了使用標簽的優勢,以及如何使用Struts 2的標簽庫和Struts 2標簽分類。本章還介紹了基本OGNL表達式,為后面標簽的使用打下基礎。本章詳細介紹了Struts 2中常用的邏輯控制標簽、數據訪問標簽以及UI標簽。對于每個標簽的使用都配置了大量的示例來講解。

第10章介紹了什么是Ajax,以及Ajax應用相對于傳統Web應用的優勢,并介紹了Ajax的技術組成。通過實例演示了如何使用傳統Web應用實現用戶登錄以及使用Ajax技術實現用戶登錄,從而體現Ajax技術的優勢所在。本章還介紹了如何基于DWR開發Ajax應用,以及在Struts 2中通過整合DWR來完成Ajax表單輸入校驗。最后還介紹了如何在Struts 2中使用JSON插件來完成Ajax交互。

第11章介紹了如何通過JFreeChart生成各種統計圖表,如餅圖、柱狀圖、折線圖、面積圖以及層疊區域圖等。并介紹了如何設置圖表中的屬性以達到需要的效果。同時還介紹了如何在網頁中生成和統計圖表。最后介紹了如何整合Struts 2以及JFreeChart,并通過實例介紹了如何在Struts 2應用中生成統計圖表并顯示出來。

第12章介紹了JasperReports和iReport的下載和安裝,以及如何手動地設計報表和編譯、填充、導出不同格式的報表。重點介紹了使用iReport設計報表,其中介紹了如何導出PDF文件格式的報表以及解決其中文無法顯示問題。簡單介紹了動態報表,如帶查詢的報表、帶參數的報表。最后介紹了如何在Struts 2中整合JasperReports來生成報表。

第13章介紹了什么是ORM,以及Hibernate框架的優勢。通過實例介紹了如何配置Hibernate配置文件以及映射文件,并詳細介紹了如何通過Hibernate實現數據的新增、刪除修改、查詢操作。本章重點介紹了Struts 2整合Hibernate開發,詳細分析了整合策略,并通過分層的思想來完成應用開發。通過Struts 2的Action調用業務邏輯組件,而業務邏輯組件調用DAO組件,DAO組件中封裝了Hibernate持久化訪問數據庫操作,從而大大降低了組件之間的耦合度。

第14章介紹了Spring框架的優勢,以及Spring的IoC應用。本章還介紹了Spring的依賴注入,分別介紹了通過Set方法注入依賴和使用構造方法注入依賴等。本章還介紹了Spring的自動裝配,并通過示例來演示不同類型的自動裝配。本章重點介紹了Struts 2整合Spring開發,通過登錄案例演示了Struts 2和Spring的整合。最后通過整合Struts 2、Hibernate以及Spring框架完成了產品管理應用開發。

第15章介紹了通過基于Struts 2、Spring和Hibernate框架來開發注冊登錄系統。在開發系統中,充分地利用J2EE分層的思想。通過Struts 2框架負責與用戶進行交互,并通過業務邏輯組件完成業務邏輯判斷。通過Struts 2整合Spring,從而為Struts 2中的Action注入業務邏輯組件。同時整合Hibernate框架進行持久化訪問操作。本系統中還使用了Struts 2的JSON插件來完成Ajax交互,從而實現異步的檢測用戶名是否占用。本系統還使用了圖形驗證碼,從而防止惡意用戶的侵入,增強系統的安全性。

第16章重點介紹了通過基于Struts 2、Spring和Hibernate框架來開發用戶管理系統。在開發系統中,充分地利用J2EE分層的思想。通過Struts 2框架負責與用戶進行交互,并通過業務邏輯組件完成業務邏輯判斷。通過Struts 2整合Spring,從而為Struts 2中的Action注入業務邏輯組件。同時整合Hibernate框架進行持久化訪問操作。通過用戶管理系統可以查看所有的用戶信息,并對注冊用戶進行刪除以及更新、添加等其他操作。

本書適合的讀者

本書面向所有進行Java Web開發的初學者或者由Struts框架轉向Struts 2框架開發的讀者。本書力求以全面的知識及豐富的實例來指導讀者透徹學習Struts 2框架技術。

如果您是開發Java Web應用的初學者,建議按照本書的先后順序來學習;如果您已經有了足夠的開發經驗,只是對Struts 2的某些技術感興趣,可以選擇閱讀相關章節,把本書作為隨時供翻閱的參考資料。

本書的作者

本書主要由卜炟編著,其他參與編著和資料整理的人員有馮華君、劉博、劉燕、葉青、張軍、張立娟、張藝、彭濤、徐磊、戎偉、朱毅、李佳、李玉涵、楊利潤、楊春嬌、武鵬、潘中強、王丹、王寧、王西莉、石淑珍、程彩紅、邵毅、鄭丹丹、鄭海平、顧旭光。

編者

主站蜘蛛池模板: 呼伦贝尔市| 和林格尔县| 三河市| 秦皇岛市| 河北区| 瑞昌市| 图木舒克市| 武夷山市| 阿克陶县| 白银市| 全南县| 合山市| 类乌齐县| 阿鲁科尔沁旗| 紫云| 晋江市| 新郑市| 驻马店市| 元阳县| 屯门区| 小金县| 神池县| 黄浦区| 四子王旗| 乌什县| 青海省| 三穗县| 永春县| 专栏| 榆中县| 桃江县| 中阳县| 台中市| 连江县| 马公市| 马鞍山市| 江源县| 民勤县| 卢氏县| 中超| 依安县|