圖書信息
書名:精通Struts2作 者:(澳)拉夫利;李進華譯
出版社:人民郵電出版社
出版時間:2009-4-1
ISBN:9787115204295
開本:16開
定價:49.00元
作者簡介
IALRoughley著名Java技術專家,ApacheStruts項目管理委員會成員,FromDown&Around公司創始人,著名技術網站IntoQJava領域的編輯。他在軟體架構、開發和過程改進方面都有豐富的經驗。08版圖書信息
作者:陳雲芳 編著出版社:人民郵電出版社
出版時間:2008-7-1
字數:803000
頁數:216
開本:16開
ISBN:9787115178770
分類:圖書>>計算機/網路>>網路與數據通信>>網路配置與管理
定價:¥65.00
編輯推薦
內容覆蓋了Struts2基礎、Struts2框架核心和Struts2高級,特性,流行框架整合開發等知識,三大綜合案例開發演示,幫助讀者提高項目開發水平,網路商店系統(Struts2+Hibernate+Velocity),網路檔案管理系統(Struts2+Hibemate+freemarker),網上購書系統(Struts2+Hibernate+Ajax)。內容簡介
本書由淺入深、循序漸進地介紹了使用Struts2框架進行Web套用開發的基本原理和方法。全書共分為4篇,第一篇Struts2快速入門,主要介紹了基本的Web開發技術,Struts2的基礎知識,並通過簡單套用實例,講解了Struts2的框架結構。第二篇Struts2框架核心,包括Action、interceptor、Result、多視圖和數據持久化支持等方面的知識。第三篇Struts2高級特性,介紹了數據驗證、類型轉換和國際化等方面的內容。第四篇Struts2綜合項目實踐,介紹了3個綜合實例(網路商店系統、網路檔案管理系統、網路購書系統)的開發過程,每個實例均按照需求分析、項目設計、代碼開發、程式測試及項目部署等實際開發流程編寫,力求使讀者在學習理論的同時,能夠進一步通過現有的程式實例加深理解,提升實戰能力。
隨書附贈光碟上有本書全部已經調試通過的程式原始碼。
本書重點突出,理論與實踐並重,適合於具有一定Java基礎,進行Web套用開發的程式設計師閱讀,也可作為相關培訓機構的教材,以及高等院校相關專業師生的參考用書。
圖書目錄
第1篇 Struts2快速入門第1章 Web套用開發概覽
1.1 Web套用與Web開發框架
1.1.1 Web套用開發歷程
1.1.2 為什麼需要Web框架
1.2 MVC模式和Struts
1.2.1 什麼是MVC模式
1.2.2 MVC模式的Web框架映射
1.2.3 Struts2對MVC模式的改進
1.3 Struts2框架概覽
1.3.1 Struts2框架的演變
1.3.2 Struts2的特性
1.3.3 與其他Web框架的比較
1.4 小結
第2章 第一個Struts2套用
2.1 Struts2開發環境配置
2.1.1 JDK1.5.10和Tomcat的安裝與配置
2.1.2 MyEclipse的安裝和配置
2.1.3 Struts2的安裝
2.2 創建配置檔案
2.2.1 配置web.xml檔案
2.2.2 配置Struts2的xml檔案
2.2.3 配置Struts2的properties檔案
2.3 第一個Action
2.3.1 創建helloworld.action
2.3.2 在struts.xml中配置Action
2.3.3 創建視圖hello.jsp
2.3.4 測試Action
2.4 體驗Struts2更高級功能
2.4.1 處理輸入
2.4.2 執行結果
2.4.3 攔截器
2.5 小結
第2篇 Struts2框架核心
第3章 Action
3.1 Action簡介
3.1.1 返回類型
3.1.2 execute()方法
3.2 Action接口
3.3 ActionSupport基類
3.4 Action實例
3.4.1 實現Action接口的實例
3.4.2 實現ActionSupport基類的實例
3.5 在Action中實現基本校驗
3.5.1 使用Action的execute()方法
3.5.2 使用ActionSupport的validate()方法
3.5.3 使用注釋實現校驗
3.6 ActionContext
3.7 小結
第4章 Interceptor
4.1 Interceotor基礎
4.1.1 理解Interceptor
4.1.2 Interceptor何時調用
4.1.3 Interceptor接口
4.1.4 Interceptor相關類
4.2 使用預定義的Interceptor
4.2.1 預定義Interceptor類
4.2.2 LoggingInterceptor示例
4.3 使用自定義的Interceptor
4.3.1 自定義Interceptor的配置
4.3.2 實現自己的Interceptor
4.4 Interceptor套用實例
4.4.1 execAndWait攔截器源碼分析
4.4.2 項目概述
4.4.3 Action實現檔案
4.4.4 頁面檔案
4.4.5 配置檔案
4.4.6 運行
4.5 小結
第5章 Result
5.1 自定義Result
5.1.1 實現自定義Result
5.1.2 配置自己的Result
5.1.3 運行測試Result
5.2 常用的Result
5.2.1 Dispatcher
5.2.2 Redirect
5.2.3 Chain
5.3 其他的Result
5.4 小結
第6章 標籤
6.1 標籤介紹
6.2 自定義標籤
6.2.1 標籤的實現
6.2.2 標籤的配置
6.2.3 運行
6.3 Struts2標籤概覽
6.3.1 標籤簡介
6.3.2 使用標籤的準備
6.4 非UI標籤
6.4.1 數據標籤
6.4.2 控制標籤
6.4.3 其他標籤
6.5 UI標籤
6.5.1 通用屬性
6.5.2 簡單UI標籤
6.5.3 高級UI標籤
6.6 小結
第7章 表達式語言OGNL
7.1 OGNL的基本特性
7.1.1 常量的聲明
7.1.2 方法調用
7.1.3 變數引用
7.2 操作集合
7.2.1 操作列表Lists
7.2.2 操作映射Maps
7.2.3 運算元組Array
7.2.4 集合操作
7.3 OGNL的高級特性
7.3.1 類型轉換
7.3.2 與值棧的聯繫
7.3.3 lamuda表達式
7.3.4 Java和OGNL的比較
7.4 在JSP中使用OGNL
7.4.1 項目概述
7.4.2 工程代碼編寫
7.4.3 運行
7.5 小結
第8章 多視圖
8.1 Velocity
8.1.1 Velocity簡介
8.1.2 語法
8.1.3 Velocity實例分析
8.2 FreeMarker
8.2.1 FreeMarker簡介
8.2.2 語法
8.2.3 FreeMarker實例分析
8.2.4 FreeMarker和Velocity的比較
8.3 JasperReports
8.3.1 JasperReports介紹
8.3.2 JasperReports實例分析
8.4 小結
第9章 數據持久化——使用Hibernate
9.1 數據持久化與Hibernate基礎
9.1.1 數據持久化基礎
9.1.2 Hibernate基礎
9.2 Hibernate簡單套用
9.3 Hibernate核心
9.3.1 Hibernate的核心接口
9.3.2 Hibernate的配置檔案
9.3.3 Hibernate的對象關係映射
9.3.4 Hibernate的檢索方式
9.4 Hibernate實例
9.5 小結
第3篇 Struts2高級特性
第10章 校驗框架
10.1 使用Struts2自帶的校驗器
10.1.1 配置攔截器
10.1.2 配置校驗器
10.1.3 自帶校驗器實例
10.2 使用自定義校驗器
10.2.1 創建自定義校驗器
10.2.2 自定義校驗器的註冊
10.2.3 自定義校驗器實例
10.3 小結
第11章 類型轉換
11.1 為什麼需要類型轉換
11.1.1 沒有類型轉換的實例
11.1.2 類型轉換帶來的好處
11.2 Struts2自帶的轉換器
11.2.1 自帶轉換器的數據類型
11.2.2 轉換器的源碼分析
11.3 自定義轉換器
11.3.1 編寫轉換器類
11.3.2 配置
11.4 高級類型轉換
11.4.1 空值屬性處理
11.4.2 類型轉換錯誤處理
11.5 小結
第12章 國際化
12.1 國際化基礎
12.2 Struts2與國際化
12.2.1 Struts2對國際化的支持
12.2.2 資源包相關
12.2.3 國際化信息的獲取
12.3 Struts2國際化實現
12.3.1 初始頁面的國際化
12.3.2 Action的國際化
12.3.3 校驗的國際化
12.4 國際化實例
12.4.1 項目配置與開發
12.4.2 結果測試
12.5 小結
第13章 Struts2調試
13.1 MyEclipse中的Java程式調試
13.1.1 調試配置
13.1.2 調試視圖
13.1.3 控制程式執行
13.2 調試Struts2程式
13.2.1 調試入門
13.2.2 連線Struts2的原始碼
13.3 Struts2調試套用
13.3.1 實例的概述
13.3.2 實例工程的源檔案
13.3.3 調試工程
13.4 小結
第14章 Struts2原理探究
14.1 控制反轉(IOC)
14.1.1 什麼是控制反轉
14.1.2 控制反轉的設計方式
14.1.3 Struts2中的控制反轉
14.2 源碼探究
14.2.1 Struts2啟動
14.2.2 Action處理過程
14.2.3 Interceptor工作機制
14.2.4 ActionContext
14.3 小結
第15章 Struts2與其他網路框架整合
15.1 與sitemesh整合
15.1.1 SiteMesh簡介
15.1.2 SiteMesh的安裝
15.1.3 SiteMesh套用實例
15.2 Quartz作業調度
15.2.1 Quartz簡介
15.2.2 作業調度簡介
15.2.3 Quartz套用實例
15.3 acegi-Security用戶管理
15.3.1 Acegi-Security簡介
15.3.2 Acegi認證過程
15.3.3 保護Web應用程式
15.4 小結
第16章 Ajax與Struts
16.1 Ajax入門
16.1.1 Ajax發展過程
16.1.2 Ajax魅力所在
16.2 Ajax核心
16.2.1 使用XMLHttpRequest對象
16.2.2 傳送請求與處理回響
16.2.3 實現基本的Ajax技術
16.3 Struts2與Ajax框架的整合
16.3.1 Dojo框架
16.3.2 DWR框架
16.3.3 使用JSON外掛程式
16.4 Struts2的Ajax標籤
16.5 小結
第17章 Struts2測試
17.1 軟體測試與junit基礎
17.1.1 軟體測試基礎
17.1.2 JUnit基礎
17.2 JUnit的使用
17.2.1 JUnit的安裝
17.2.2 創建測試類
17.2.3 創建被測試類
17.2.4 運行測試
17.3 在Eclipse中使用JUnit測試Action
17.3.1 創建Struts2項目
17.3.2 創建測試類
17.3.3 運行測試
17.4 JUnit高級
17.4.1 類級別的fixture
17.4.2 限時測試
17.4.3 異常測試
17.4.4 忽略測試
17.4.5 測試運行器
17.4.6 測試套件
17.4.7 參數化測試
17.5 小結
第18章 Spring整合
18.1 Spring初步
18.1.1 Spring概述
18.1.2 Spring準備
18.1.3 入門實例
18.2 Spring基礎特性
18.2.1 依賴注入
18.2.2 Spring封裝機制
18.3 Spring高級特性
18.3.1 SpringMVC
18.3.2 數據持久層
18.4 小結
第4篇 Struts2綜合項目實戰
第19章 網路商店實例編程(Struts2+Hibernate+Velocity)
19.1 項目概述
19.1.1 網路商店概況
19.1.2 網路商店的需求分析
19.1.3 網路商店的業務建模
19.1.4 疊代式開發介紹
19.1.5 項目功能模組分割
19.2 疊代一遊客瀏覽商品
19.2.1 本階段疊代的目標
19.2.2 本階段頁面概述
19.2.3 商品的數據模型和資料庫設計
19.2.4 實現步驟
19.3 疊代二用戶管理
19.3.1 本階段疊代的目標
19.3.2 本階段頁面概述
19.3.3 用戶數據模型和資料庫設計
19.3.4 實現步驟
19.4 疊代三購物車管理
19.4.1 本階段的疊代目標
19.4.2 本階段頁面概述
19.4.3 購物車的功能需求和設計實現
19.4.4 實現步驟
19.5 疊代四後台管理員功能
19.5.1 本階段的疊代目標
19.5.2 本階段頁面概述
19.5.3 實現步驟
19.6 小結
第20章 網路檔案管理系統(Struts2+Hibernate+FreeMarker)
20.1 項目概述
20.1.1 網路檔案管理系統概況
20.1.2 網路檔案管理系統需求分析
20.1.3 網路檔案管理系統業務建模
20.1.4 項目功能模組分割
20.2 疊代一實現上傳、下載、刪除檔案
20.2.1 本階段疊代的目標
20.2.2 本階段頁面概述
20.2.3 檔案的數據模型
20.2.4 實現步驟
20.3 疊代二添加用戶管理
20.3.1 本階段疊代的目標
20.3.2 本階段頁面概述
20.3.3 用戶以及用戶空間的數據模型
20.3.4 實現步驟
20.4 疊代三添加訊息處理,備忘錄管理
20.4.1 本階段疊代的目標
20.4.2 本階段頁面概述
20.4.3 訊息和備忘錄的數據模型
20.4.4 實現步驟
20.5 疊代四添加管理員功能
20.5.1 本階段疊代的目標
20.5.2 本階段頁面概述
20.5.3 管理員的數據模型
20.5.4 實現步驟
20.6 小結
第21章 基於Struts2和Ajax的網上購書系統(Struts2+Hibernate+Ajax+FreeMarker)
21.1 項目概述
21.1.1 購書系統概況
21.1.2 購書系統需求分析
21.1.3 購書系統業務建模
21.1.4 項目功能模組分割
21.2 疊代一用戶登錄,書籍瀏覽
21.2.1 本階段疊代目標
21.2.2 本階段頁面概述
21.2.3 本階段數據模型
21.2.4 實現步驟
21.3 疊代二用戶購書
21.3.1 本階段疊代目標
21.3.2 本階段頁面概述
21.3.3 實現步驟
21.4 疊代三管理員登錄,用戶信息查看
21.4.1 本階段疊代目標
21.4.2 本階段頁面概述
21.4.3 本階段數據模型
21.4.4 實現步驟
21.5 疊代四管理員添加書籍以及添加用戶
21.5.1 本階段疊代目標
21.5.2 本階段頁面概述
21.5.3 實現步驟
21.6 小結
圖書章節
第1章 Web套用開發概覽
本章從Web開發的基礎講起,將Web開發的來龍去脈展現給各位讀者。同時讀者還將了解Web套用中採用MVC模式的根本原因以及MVC模式在Web開發框架中的發展現狀,Web套用開發的各種開源框架及其比較,Struts2高級特性介紹。幾種流行的開源框架和Struts2的比較,明確Struts2的優缺點,使Web開發套用更具有針對性。
1.1Web套用與Web開發框架
1.1.1Web套用開發歷程
Java技術是目前流行的Web開發語言,特別是基於J2EE平台的Javaweb開發模式已經被廣泛使用,用戶接觸的很多動態網站都是採用了Java技術開發的。而Javaweb開發技術的發展是和Internet、瀏覽器的發展密不可分的。
Internet是一個遵循一定協定自由發展的國際網際網路,它利用覆蓋全球的通信系統使各類計算機網路及個人計算機聯通,從而實現智慧型化的信息交流和資源共享。
Internet早已從最初學術科研網路變成了一個擁有眾多商業用戶、政府部門、機構團體和個人的綜合的計算機信息網路。在發展規模上,目前Internet已經是世界上規模最大、發展最快的計算機網際網路。TCP/IP協定簇是目前Imemet主流網路協定,它可提供任意互聯的網路間的通信,幾乎所用的網路作業系統都支持TCP/IP協定簇。在TCP/IP協定簇中,Web服務以其使用的方便性占據了TCP/IP套用的絕大部分。Web服務所採用的HTTP位於套用層,如同TCP/IP成為事實上的標準Imemet網路協定一樣,HTTP所支持的Web套用成為Intemct的最主要套用有一定的歷史機遇和偶然性,而這種偶然性在很大程度上與瀏覽器的發展密不可分,瀏覽器的發展在一定程度上也決定了web技術的發展。