輕量級Java EE企業套用實戰:Struts 2+Spring 3+Hibernate整合開發

輕量級Java EE企業套用實戰:Struts 2+Spring 3+Hibernate整合開發

《輕量級Java EE企業套用實戰:Struts 2+Spring 3+Hibernate整合開發》是2008年電子工業出版社出版的圖書,作者是李剛。《輕量級JavaEE企業套用實戰》一書於2008年由電子工業出版社出版發行,該書是《輕量級J2EE企業套用實戰》的第二版,同時還融合了《整合Struts+Hibernate+Spring套用開發詳解》理論部分。實際上,該書凝結了前兩本書的精華部分。該書介紹了Java EE領域的三個開源框架:Struts 2、Spring和Hibernate。其中Struts 2升級到2.1.2,Spring升級到2.5.5,Hibernate升級到3.2.6。該書保留《輕量級J2EE企業套用實戰》里關於Tomcat、 Jetty的介紹,新增了關於Ant、CVS的內容。

基本介紹

  • 書名:輕量級Java EE企業套用實戰:Struts 2+Spring 3+Hibernate整合開發
  • 作者:李剛
  • 頁數:820頁
  • 出版社:電子工業出版社
  • 出版時間:2008-11-1
  • 開本:16開
  • 分類:圖書>>計算機/程式設計>>J2EE
  • 估價:89.00元
宣傳語,內容簡介,作者簡介,前言,目錄,

宣傳語

《瘋狂Java講義》作者李剛作品,暢銷書《輕量級J2EE企業套用實戰》第二版。
看得懂,學得會,做得出!

內容簡介

本書內容主要包括三部分,第一部分介紹Java EE開發的基礎知識,包括如何搭建開發環境。第二部分詳細講解了Struts 2.1、Spring 2.5和Hibernate 3.2三個框架用法,介紹三個框架時,通過Eclipse IDE的使用來上手,一步步帶領讀者深入三個框架的核心。這部分內容是筆者講授“瘋狂Java實訓”的培訓講義,既包含了筆者多年開發經歷的領悟,也融入了豐富的授課經驗。第三部分示範開發了一個包含7個表,表之間具有複雜的關聯映射、繼承映射等關係,且業務也相對複雜的工作流案例,讓讀者理論聯繫實際,將三個框架真正運用到實際開發中去。該案例採用目前最流行、最規範的Java EE架構,整個套用分為領域對象層、DAO層、業務邏輯層、MVC層和視圖層,各層之間分層清晰,層與層之間以松耦合的方法組織在一起。
閱讀本書之前,建議先認真閱讀筆者所著的《瘋狂Java講義》一書。本書適合於有較好的 Java編程基礎,或有初步JSP、Servlet基礎的讀者閱讀。尤其適合於對Struts 2、Spring、Hibernate了解不夠深入,或對Struts 2+ Spring+Hibernate整合開發不太熟悉的開發人員閱讀。

作者簡介

李剛,從事8年的JavaEE套用開發。曾任LITEON公司的J2EE技術主管,負責該公司的企業信息平台的構架設計。曾任廣州電信、廣東龍泉科技等公司的技術培訓導師。2007年3月26日的《電腦報》專訪人物。現任新東方IT培訓廣州中心軟體教學總監,曾兼任廣東技術師範學院計算機科學系的兼職副教授。培訓的學生已在華為、立信、普信、網易、電信盈科、中企動力等公司就職。國內知名的高端IT技術作家,已出版《瘋狂Java講義》、《Spring2.0寶典》、《基於J2EE的Ajak寶典》、《輕量級J2EE企業套用實戰》、《Struts2權威指南》、《RubyOnRails敏捷開發最佳實踐》等著作。

前言

經過多年實踐證明,J2EE(Java 2 Enterprise Edition)的確是最優秀的企業信息化開發平台。由於J2EE的名稱容易引起誤解,Sun將J2EE更名為Java EE,如今,Java EE平台已經成為電信、金融、電子商務、保險、證券等各行業的大型套用系統的首選開發平台。
在實際的Java EE平台中,使用Struts 2+Spring+Hibernate進行整合開發是最為流行的開發平台,這種開發平台也被稱為輕量級Java EE企業套用平台。與經典的、以EJB為核心的Java EE套用相比,輕量級Java EE套用簡化了經典Java EE套用的難度,在保留經典Java EE套用架構、高度可擴展性、高度可維護性的基礎上,降低了Java EE套用的開發、部署成本。
本書融合《輕量級J2EE企業套用實戰》、《整合 Struts+Hibernate+Spring套用開發詳解》兩本書的理論部分,並將Struts 2升級到Struts 2.1.2,Spring升級到2.5.5,Hibernate升級到3.2.6。新增了Struts 2、Spring和Hibernate三個框架的“零配置”特性的內容,並重點介紹了Spring 2.x的AOP支持,詳細介紹了Spring 2.x中Scheme配置所支持的util、aop、tx等命名空間。由於Spring 2.x的AOP需要AspectJ支持,所以本書還簡要講解了AspectJ的相關內容。
本書內容主要包括三部分,第一部分介紹Java EE開發的基礎知識,包括如何搭建開發環境。第二部分詳細講解了Struts 2.1、Spring 2.5和Hibernate 3.2三個框架用法,介紹三個框架時,通過Eclipse IDE的使用來上手,一步步帶領讀者深入三個框架的核心。這部分內容是筆者講授“瘋狂Java實訓”的培訓講義,既包含了筆者多年開發經歷的領悟,也融入了豐富的授課經驗。第三部分示範開發了一個包含7個表,表之間具有複雜的關聯映射、繼承映射等關係,且業務也相對複雜的工作流案例,讓讀者理論聯繫實際,將三個框架真正運用到實際開發中去。該案例採用目前最流行、最規範的Java EE架構,整個套用分為領域對象層、DAO層、業務邏輯層、MVC層和視圖層,各層之間分層清晰,層與層之間以松耦合的方法組織在一起。
本書創作感言
到現在為止,筆者已出版了不少軟體開發技術的圖書,比如Spring、Ajax、Struts 2和Ruby On Rails等,筆者所一直致力於軟體開發技術的最前沿寫作,這正是筆者寫書的目的:傳播知識,希望能將國際流行的、實用的軟體開發技術帶給國內讀者。
筆者現階段主要從事軟體開發培訓,而且一直堅持一線授課工作,因為這份工作既是激發筆者創作的直接原因,也給筆者的創作帶來巨大的幫助。在長達2年多的授課生涯中,筆者接觸了大量大學畢業生,以及一些做了2~3年開發、但工資依然不高的程式設計師,筆者對他們的彷徨、苦痛感同身受,因為筆者曾經也經歷過學習技術的苦痛:當我們面臨一個又一個無法解決的技術難題時,那種巨大挫敗感、壓抑感,那種夜不能寐、徹夜思索的經歷,只有真正的程式設計師才懂——筆者完全可以體會,因為這些經歷就是筆者的過往。
有感於此,所以筆者創作圖書時主要關心如下幾點:
讀者是否可以看懂、理解各知識點的講解?是否可以運用這些知識解決實際開發問題?
書中的案例是否可以運行?這些案例是否採用實際開發的套用架構?
讀者是否可參考本書來開發實際項目?讀完本書後是否能獲得實用的軟體開發技巧?
筆者相信這些也是真正的讀者所關心的,所以筆者儘量使用簡短的語句、通俗的說法來介紹那些所謂的“深奧知識”。實際上,筆者一種感覺:當真正達到融會貫通的境界後,再去看那些所謂的“深奧知識”時會產生一種“不過如此”的感覺。比如筆者上課介紹 HashSet的存取時,筆者告訴學生:實際上就像你媽媽教你“不同的東西放在不同的位置”,這樣才能最快地找到它,你可以把你媽媽的那套存取規則理解為 Hash算法。他們感嘆:原來如此簡單,可惜以前從來沒有人這樣跟我講過。
很多看似深奧的知識,可能只是因為你看了一些翻譯得過於生僻的專業術語,或者是因為你看了一段過於晦澀的講解,更甚至於只是你的畏難心理作祟。拋開這些障眼的浮雲,你會發現:編程領域的許多知識和日常生活中的常識有極高的相似性。
由於這個緣故,有人評價筆者的書過於簡單,主要針對初學者——那么,筆者願意把簡單作為其創作特色,筆者不願故作高深,寧願以簡單方式來解決實際問題。筆者希望讀者認真看完一本書後,實際開發問題得到了解決,並切實學會一種實用的開發技術,而不是空洞的吹噓理論。
有時候忍不住想:中國傳統的風水理論、玄學理論、中醫理論,也許未必真的那么深奧,是不是曾經被人為地複雜化,人為地高深化了,所以導致這些知識沒有更好地流傳開來?如果我們用通俗、易懂的的方式來傳播它們,也許不是今天這個局面。
本書有什麼特點
本書保持了《輕量級J2EE企業套用實戰》一書簡單、實用的優勢,同樣堅持讓案例說話、以案例來介紹知識點的風格。本書最後同樣示範開發了企業工作流案例,希望讀者通過該案例真正步入實際企業開發的殿堂。
本書依然保留了《輕量級J2EE企業套用實戰》第一版的三個特色:
1.經驗豐富,針對性強
筆者既擔任過軟體開發的技術經理,也擔任過軟體公司的培訓導師,還從事過職業培訓的專職講師。這些經驗影響了筆者寫書的目的,不是一本學院派的理論讀物,而是一本實際的開發指南。
2.內容實際,實用性強
本書所介紹的Java EE套用範例,採用了目前企業流行的開發架構,絕對嚴格遵守Java EE開發規範,而不是將各種技術雜亂地糅合在一起號稱Java EE。讀者參考本書的架構,完全可以身臨其境地感受企業實際開發。
3.高屋建瓴,啟發性強
本書介紹的幾種架構模式,幾乎是時下最全面的Java EE架構模式。這些架構模式可以直接提升讀者對系統架構設計的把握。
與《輕量級J2EE企業套用實戰》第一版相比,程式中關鍵代碼以粗體字標出,可以讓讀者更迅速地找到這些程式的關鍵點。書中代碼的注釋更加詳細,幾乎每兩行代碼就有一行注釋,這些注釋也添加在光碟的原始碼中,並且給出了書中代碼和光碟原始碼的對應關係,儘量降低讀者閱讀光碟源碼的難度。
本書寫給誰看
如果你已經掌握Java SE內容,或已經學完了《瘋狂Java講義》一書,那你非常適合閱讀此書。
如果你已有初步的JSP、Servlet基礎,甚至對Struts 2、Spring 2.5、Hibernate 3.2有所了解,但希望掌握它們在實際開發中的套用,本書也將非常適合你。
如果你對Java的掌握還不熟練,則建議遵從學習規律,循序漸進,暫時不要購買、閱讀此書。
2008年8月20日

目錄

第1篇 基礎知識
第1章 Java EE套用和開發環境
1.1 Java EE套用概述
1.1.1 Java EE套用的分層模型
1.1.2 Java EE套用的組件
1.1.3 Java EE套用結構和優勢
1.1.4 常用的Java EE伺服器
1.2 輕量級Java EE套用相關技術
1.2.1 JSP、Servlet和JavaBean及替代技術
1.2.2 Struts 2.1及替代技術
1.2.3 Hibernate 3.2及替代技術
1.2.4 Spring 2.5及替代技術
1.3 Tomcat的下載和安裝
1.3.1 安裝Tomcat伺服器
1.3.2 配置Tomcat的服務連線埠
1.3.3 進入控制台
1.3.4 部署Web套用
1.3.5 配置Tomcat的數據源
1.4 Jetty的下載和安裝
1.4.1 Jetty的下載和安裝
1.4.2 Jetty的基本配置
1.4.3 部署Web套用
1.4.4 配置JNDI綁定
1.5 Eclipse的安裝和使用
1.5.1 Eclipse的下載和安裝
1.5.2 線上安裝Eclipse外掛程式
1.5.3 手動安裝Eclipse外掛程式
1.5.4安裝MyEclipse外掛程式
1.5.5 使用Eclipse開發Java EE套用
1.5.6 導入Eclipse項目
1.5.7 導入非Eclipse項目
1.6 Ant的安裝和使用
1.6.1 Ant的下載和安裝
1.6.2 使用Ant工具
1.6.3 定義生成檔案
1.6.4 Ant的任務(task)
1.7 使用CVS進行協作開發
1.7.1 安裝CVS伺服器
1.7.2 配置CVS資源庫
1.7.3 安裝CVS客戶端
1.7.4 發布項目到伺服器
1.7.5 從伺服器下載項目
1.7.6 同步(Update)本地檔案
1.7.7 提交(Commit)修改
1.7.8 添加檔案和目錄
1.7.9 刪除檔案和目錄
1.7.10 查看檔案的版本變革
1.7.11 提取檔案以前版本的內容
1.7.12 從以前版本重新開始
1.7.13 創建標籤
1.7.14 創建分支
1.7.15 沿著分支開發
1.7.16 使用Eclipse作為CVS客戶端
1.8 本章小結
第2章 JSP相關技術詳解
2.1 Web套用和web.xml檔案
2.1.1 構建Web套用
2.1.2 配置描述符web.xml
2.2 JSP的基本原理
2.3 JSP注釋
2.4 JSP聲明
2.5 輸出JSP表達式
2.6 JSP腳本
2.7 JSP的3個編譯指令
2.7.1 page指令
2.7.2 include指令
2.8 JSP的7個動作指令
2.8.1 forward指令
2.8.2 include指令
2.8.3 useBean、setProperty、getProperty指令
2.8.4 plugin指令
2.8.5 param指令
2.9 JSP腳本中的9個內置對象
2.9.1 application對象
2.9.2 config對象
2.9.3 exception對象
2.9.4 out對象
2.9.5 pageContext對象
2.9.6 request對象
2.9.7 response對象
2.9.8 session對象
2.10 Servlet介紹
2.10.1 Servlet的開發
2.10.2 Servlet的配置
2.10.3 Servlet的生命周期
2.10.4 load-on-startup Servlet
2.10.5 訪問Servlet的配置參數
2.10.6 使用Servlet作為控制器
2.11 JSP2的自定義標籤
2.11.1 開發自定義標籤類
2.11.2 建立TLD檔案
2.11.3 使用標籤庫
2.11.4 帶屬性的標籤
2.11.5 帶標籤體的標籤
2.12 Filter介紹
2.12.1 創建Filter類
2.12.2 配置Filter
2.13 Listener介紹
2.13.1 創建Listener類
2.13.2 配置Listener
2.14 JSP 2特性
2.14.1 配置JSP屬性
2.14.2 表達式語言
2.14.3 Tag File支持
2.15 本章小結
第2篇 整合開發
第3章 Struts 2的基本用法
3.1 MVC思想概述
3.1.1 傳統Model 1和Model 2
3.1.2 MVC思想及其優勢
3.2 Struts 2的下載和安裝
3.2.1 為Web套用增加Struts 2支持
3.2.2 在Eclipse中使用Struts 2
3.2.3 增加登錄處理
3.3 Struts 2的流程
3.3.1 Struts 2套用的開發步驟
3.3.2 Struts 2的流程
3.4 Struts 2的常規配置
3.4.1 常量配置
3.4.2 包含其他配置檔案
3.5 實現Action
3.5.1 Action接口和ActionSupport基類
3.5.2 Action訪問Servlet API
3.5.3 Action直接訪問Servlet API
3.6 配置Action
3.6.1 包和命名空間
3.6.2 Action的基本配置
3.6.3 使用Action的動態方法調用
3.6.4 指定method屬性及使用通配符
3.6.5 配置默認Action
3.7 配置處理結果
3.7.1 理解處理結果
3.7.2 配置結果
3.7.3 Struts 2支持的結果類型
3.7.4 plainText結果類型
3.7.5 redirect結果類型
3.7.6 redirect-action結果類型
3.7.7 動態結果
3.7.8 Action屬性值決定物理視圖資源
3.7.9 全局結果
3.8 Struts 2的“零配置”支持
3.8.1 自動搜尋Action
3.8.2 使用Annotation指定命名空間、父包和結果映射
3.9 配置Struts 2的異常處理
3.9.1 Struts 2的異常處理機制
3.9.2 聲明式異常捕捉
3.9.3 輸出異常信息
3.10 使用Struts 2的國際化
3.10.1 Struts 2中載入全局資源檔案
3.10.2 訪問國際化訊息
3.10.3 輸出帶占位符的國際化訊息
3.10.4 載入資源檔案的方式
3.10.5 載入資源檔案的順序
3.11 使用Struts 2的標籤庫
3.11.1 Struts 2標籤庫概述
3.11.2 使用Struts 2標籤
3.11.3 Struts 2的OGNL表達式語言
3.11.4 OGNL中的集合操作
3.11.5 Lambda(λ)表達式
3.11.6 控制標籤
3.11.7 數據標籤
3.11.8 主題和模板
3.11.9 自定義主題
3.11.10 表單標籤
3.11.11 非表單標籤
3.12 本章小結
第4章 深入使用Struts
4.1 詳解Struts 2的攔截器機制
4.1.1 攔截器在Struts 2中的作用
4.1.2 Struts 2內建的攔截器
4.1.3 配置攔截器
4.1.4 使用攔截器
4.1.5 配置默認攔截器
4.1.6 實現攔截器類
4.1.7 使用攔截器
4.1.8 攔截方法的攔截器
4.1.9 攔截器的執行順序
4.1.10 攔截結果的監聽器
4.1.11 覆蓋攔截器棧里特定攔截器的參數
4.1.12 使用攔截器完成許可權控制
4.2 詳解Struts 2的類型轉換
4.2.1 Struts 2內建的類型轉換器
4.2.2 基於OGNL的類型轉換
4.2.3 指定集合元素的類型
4.2.4 自定義類型轉換器
4.2.5 註冊類型轉換器
4.2.6 簡化的自定義類型轉換器
4.2.7 處理Set集合
4.2.8 類型轉換中的錯誤處理
4.3 使用Struts 2的輸入校驗
4.3.1 編寫校驗規則檔案
4.3.2 國際化提示信息
4.3.3 使用客戶端校驗
4.3.4 欄位校驗器配置風格
4.3.5 非欄位校驗器配置風格
4.3.6 短路校驗器
4.3.7 校驗檔案的搜尋規則
4.3.8 校驗順序和短路
4.3.9 內建校驗器
4.3.10 基於Annotation的輸入校驗
4.3.11 手動完成輸入校驗
4.4 使用Struts 2的Ajax支持
4.4.1 JSON的基本知識
4.4.2 安裝Struts 2的JSON外掛程式
4.4.3 實現Action邏輯
4.4.4 實現JSP頁面
4.5 使用Struts 2控制檔案上傳
4.5.1 檔案上傳的準備
4.5.2 Struts 2的檔案上傳
4.5.3 實現檔案上傳的Action
4.5.4 配置檔案上傳的Action
4.5.5 手動實現檔案過濾
4.5.6 攔截器實現檔案過濾
4.5.7 輸出錯誤提示
4.5.8 檔案上傳的常量配置
4.6 使用Struts 2控制檔案下載
4.6.1 實現檔案下載的Action
4.6.2 配置Action
4.6.3 下載前的授權控制
4.7 本章小結
第5章 Hibernate基本用法
5.1 ORM和Hibernate
5.1.1 對象/關係資料庫映射(ORM)
5.1.2 基本映射方式
5.1.3 流行的ORM框架簡介
5.1.4 Hibernate概述
5.2 Hibernate入門
5.2.1 Hibernate下載和安裝
5.2.2 Hibernate的資料庫操作
5.2.3 在Eclipse中使用Hibernate
5.3 Hibernate的體系結構
5.4 深入Hibernate的配置檔案
5.4.1 創建Configuration對象
5.4.2 hibernate.properties檔案與hibernate.cfg.xml檔案
5.4.3 JDBC連線屬性
5.4.4 資料庫方言
5.4.5 JNDI數據源的連線屬性
5.4.6 Hibernate事務屬性
5.4.7 二級快取相關屬性
5.4.8外連線抓取屬性
5.4.9 其他常用的配置屬性
5.5 深入理解持久化對象
5.5.1 持久化類的要求
5.5.2 持久化對象的狀態
5.5.3 改變持久化對象狀態的方法
5.6 深入Hibernate的映射檔案
5.6.1 映射檔案結構
5.6.2 映射主鍵
5.6.3 映射普通屬性
5.6.4 映射集合屬性
5.6.5 集合屬性的性能分析
5.6.6 有序集合映射
5.6.7 映射資料庫對象
5.7 映射組件屬性
5.7.1 組件屬性為集合
5.7.2 集合屬性的元素為組件
5.7.3 組件作為Map的索引
5.7.4 組件作為複合主鍵
5.7.5 多列作為聯合主鍵
5.8 使用注釋
5.9 本章小結
第6章 深入使用Hibernate
6.1 Hibernate的關聯映射
6.1.1 單向N-1關聯
6.1.2 單向1-1關聯
6.1.3 單向1-N關聯
6.1.4 單向N-N關聯
6.1.5 雙向1-N關聯
6.1.6 雙向N-N關聯
6.1.7 雙向1-1關聯
6.1.8 組件屬性包含的關聯實體
6.1.9 傳播性持久化
6.2 繼承映射
6.2.1 採用subclass元素的繼承映射
6.2.2 採用joined-subclass元素的繼承映射
6.2.3 採用union-subclass元素的繼承映射
6.3 Hibernate的批量處理
6.3.1 批量插入
6.3.2 批量更新
6.3.3 DML風格的批量更新/刪除
6.4 使用HQL查詢
6.4.1 HQL查詢
6.4.2 HQL查詢的from子句
6.4.3 關聯和連線
6.4.4 HQL查詢的select子句
6.4.5 HQL查詢的聚集函式
6.4.6 多態查詢
6.4.7 HQL查詢的where子句
6.4.8 表達式
6.4.9 order by子句
6.4.10 group by子句
6.4.11 子查詢
6.4.12 命名查詢
6.5 條件查詢
6.5.1 關聯和動態關聯
6.5.2 投影、聚合和分組
6.5.3 離線查詢和子查詢
6.6 SQL查詢
6.6.1 標量查詢
6.6.2 實體查詢
6.6.3 處理關聯和繼承
6.6.4 命名SQL查詢
6.6.5 調用存儲過程
6.6.6 使用定製SQL
6.7 數據過濾
6.8 事務控制
6.8.1 事務的概念
6.8.2 Hibernate的事務
6.8.3 事務和Session
6.8.4上下文相關的Session
6.9 事件機制
6.9.1 攔截器
6.9.2 事件系統
6.10 本章小結
第7章 Spring的基本用法
7.1 Spring的起源和背景
7.2 Spring的下載和安裝
7.2.1 在應用程式中使用Spring
7.2.2 在Web套用中使用Spring
7.2.3 在Eclipse中開發Spring套用
7.3 Spring的核心機制:依賴注入
7.3.1 理解依賴注入
7.3.2 設值注入
7.3.3 構造注入
7.3.4 兩種注入方式的對比
7.4 Spring容器和被管理的Bean
7.4.1 Spring容器
7.4.2 使用ApplicationContext
7.4.3 ApplicationContext的國際化支持
7.4.4 ApplicationContext的事件機制
7.4.5 Bean的基本定義
7.4.6容器中Bean的作用域
7.4.7 Spring的Bean和JavaBean
7.4.8 獲得容器的引用
7.5 Bean實例的創建方式及對應配置
7.5.1 使用構造器創建Bean實例
7.5.2 使用靜態工廠方法創建Bean
7.5.3 調用實例工廠方法創建Bean
7.6 深入理解容器中的Bean
7.6.1 使用抽象Bean
7.6.2 使用子Bean
7.6.3 Bean繼承與Java繼承的區別
7.6.4 定製生命周期行為
7.6.5 協調作用域不同步的Bean
7.6.6 容器中的工廠Bean
7.6.7 獲得Bean本身的id
7.7 深入理解依賴關係配置
7.7.1 配置依賴
7.7.2 設定普通屬性值
7.7.3 配置合作者Bean
7.7.4 組合屬性名稱
7.7.5 注入嵌套Bean
7.7.6 注入集合值
7.7.7 注入其他Bean的屬性值
7.7.8 注入Field值
7.7.9 注入方法返回值
7.7.10 強制初始化Bean
7.7.11 自動裝配
7.7.12 依賴檢查
7.8 基於XML Schema的簡化配置方式
7.8.1 使用p名稱空間配置屬性
7.8.2 使用util Schema
7.9 本章小結
第8章 深入使用Spring
8.1 兩種後處理器
8.1.1 Bean後處理器
8.1.2 Bean後處理器的用處
8.1.3 容器後處理器
8.1.4 屬性占位符配置器
8.1.5 重寫占位符配置器
8.2 Spring的“零配置”支持
8.2.1 搜尋Bean類
8.2.2 指定Bean的作用域
8.2.3 使用@Resource配置依賴
8.2.4 自動裝配和精確裝配
8.3 資源訪問
8.3.1 Resource實現類
8.3.2 ResourceLoader接口和ResourceLoaderAware接口
8.3.3 使用Resource作為屬性
8.3.4 在ApplicationContext中使用資源
8.4 Spring的AOP
8.4.1 為什麼需要AOP
8.4.2 使用AspectJ實現AOP
8.4.3 AOP的基本概念
8.4.4 Spring的 AOP支持
8.4.5基於Annotation的“零配置”方式
8.4.6基於XML配置檔案的管理方式
8.5 Spring的事務
8.5.1 Spring支持的事務策略
8.5.2 使用TransactionProxyFactoryBean創建事務代理
8.5.3 Spring 2.X的事務配置策略
8.6 Spring整合Struts 2
8.6.1啟動Spring容器
8.6.2 MVC框架與Spring整合的思考
8.6.3 讓Spring管理控制器
8.6.4 使用自動裝配
8.7 Spring整合Hibernate
8.7.1 Spring提供的DAO支持
8.7.2 管理Hibernate的SessionFactory
8.7.3 使用HibernateTemplate
8.7.4 使用HibernateCallBack
8.7.5 實現DAO組件
8.7.6 使用IoC容器組裝各種組件
8.7.7 使用聲明式事務
8.8 本章小結
第3篇 套用實踐
第9章 企業套用開發的思考與策略
9.1 企業套用開發面臨的挑戰
9.1.1 可擴展性、可伸縮性
9.1.2 快捷、可控的開發
9.1.3 穩定性、高效性
9.1.4 花費最小化,利益最大化
9.2 如何面對挑戰
9.2.1 使用建模工具
9.2.2 利用優秀的框架
9.2.3 選擇性地擴展
9.2.4 使用代碼生成器
9.3 常見設計模式精講
9.3.1 單例模式
9.3.2 簡單工廠
9.3.3 工廠方法和抽象工廠
9.3.4 代理模式
9.3.5 命令模式
9.3.6 策略模式
9.3.7 門面模式
9.3.8 橋接模式
9.3.9 觀察者模式
9.4 常見的架構設計策略
9.4.1 貧血模型
9.4.2 領域對象模型
9.4.3 合併業務邏輯對象與DAO對象
9.4.4 合併業務邏輯對象和Domain Object
9.4.5 拋棄業務邏輯層
9.5 本章小結
第10章 簡單工作流系統
10.1 項目背景及系統結構
10.1.1 套用背景
10.1.2 系統功能介紹
10.1.3 相關技術介紹
10.1.4 系統結構
10.1.5 系統的功能模組
10.2 Hibernate持久層
10.2.1 設計持久化對象(PO)
10.2.2 創建持久化類
10.2.3 映射持久化類
10.3 實現DAO層
10.3.1 DAO組件的定義
10.3.2 實現DAO組件
10.3.3 部署DAO層
10.4 實現Service層
10.4.1 業務邏輯組件的設計
10.4.2 實現業務邏輯組件
10.4.3 事務管理
10.4.4 部署業務邏輯組件
10.5 實現任務的自動調度
10.5.1 使用Quartz
10.5.2 在Spring中使用Quartz
10.6 實現系統Web層
10.6.1 Struts 2和Spring的整合
10.6.2 控制器的處理順序
10.6.3 員工登錄
10.6.4 進入打卡
10.6.5 處理打卡
10.6.6 進入申請
10.6.7 提交申請
10.6.8 使用攔截器完成許可權管理
10.7 本章小結

相關詞條

熱門詞條

聯絡我們