TOP
紅利積點抵現金,消費購書更貼心
輕量級Java EE企業應用實戰:Struts2+Spring+Hibernate整合開發(簡體書)
滿額折

輕量級Java EE企業應用實戰:Struts2+Spring+Hibernate整合開發(簡體書)

商品資訊

人民幣定價:89 元
定價
:NT$ 534 元
優惠價
87465
絕版無法訂購
商品簡介
作者簡介
目次

商品簡介

本書是《輕量級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.1、Spring 2.5和Hibernate 3.2三個框架用法,介紹三個框架時,通過Eclipse IDE的使用來上手,一步步帶領讀者深入三個框架的核心。這部分內容是筆者講授“瘋狂Java實訓”的培訓講義,既包含了筆者多年開發經歷的領悟,也融入了豐富的授課經驗。第三部分示范開發了一個包含7個表,表之間具有復雜的關聯映射、繼承映射等關系,且業務也相對復雜的工作流案例,讓讀者理論聯系實際,將三個框架真正運用到實際開發中去。該案例采用目前最流行、最規范的Java EE架構,整個應用分為領域對象層、DAO層、業務邏輯層、MVC層和視圖層,各層之間分層清晰,層與層之間以松耦合的方法組織在一起。 本書不再介紹Struts 1.x相關內容,如果讀者希望獲取《輕量級J2EE企業應用實戰》第一版中關于Struts 1.x的知識,請登錄http://www.crazyit.org下載。當讀者閱讀此書遇到技術難題時,也可登錄http: //www.crazyit.org發帖,筆者將會及時予以解答。 閱讀本書之前,建議先認真閱讀筆者所著的《瘋狂Java講義》一書。本書適合于有較好的 Java編程基礎,或有初步JSP、Servlet基礎的讀者閱讀。尤其適合于對Struts 2、Spring、Hibernate了解不夠深入,或對Struts 2+ Spring+Hibernate整合開發不太熟悉的開發人員閱讀。

作者簡介

李剛:從事8年多的企業級應用開發。 曾任廣州電信、廣東龍泉科技等公司的技術培訓導師。 2007年3月26日的《電腦報》專訪人物。 現任新東方廣州中心軟件教學總監,并曾任廣東技術師范學院計算機科學系的兼職副教授。 培訓的學生已在華為、立信、普信、中企動力、京華網絡等公司就職。 現已出版《基于J2EE的Ajax寶典》、《輕量級J2EE企業應用實戰》、《Struts 2權威指南》等專著。

目次

第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 本章小結

購物須知

大陸出版品因裝訂品質及貨運條件與台灣出版品落差甚大,除封面破損、內頁脫落等較嚴重的狀態,其餘商品將正常出貨。

特別提醒:部分書籍附贈之內容(如音頻mp3或影片dvd等)已無實體光碟提供,需以QR CODE 連結至當地網站註冊“並通過驗證程序”,方可下載使用。

無現貨庫存之簡體書,將向海外調貨:
海外有庫存之書籍,等候約45個工作天;
海外無庫存之書籍,平均作業時間約60個工作天,然不保證確定可調到貨,尚請見諒。

為了保護您的權益,「三民網路書店」提供會員七日商品鑑賞期(收到商品為起始日)。

若要辦理退貨,請在商品鑑賞期內寄回,且商品必須是全新狀態與完整包裝(商品、附件、發票、隨貨贈品等)否則恕不接受退貨。

優惠價:87 465
絕版無法訂購

暢銷榜

客服中心

收藏

會員專區