內容簡介
本書共分為五大部分,涵蓋了JavaEE的主流開發技術。第一部分首先介紹了JavaWeb開發模型及其演化、JavaEE多層架構及其基礎服務。第二部分則對JavaWeb基礎開發技術如JSP、Servlet、EL、JSTL以及MVC進行了闡述。第三部分集中論述基於輕量級SSH(即Struts2+Spring+Hibernate)框架開發的原理和技術,鞏辣臘特別是三者之間的整合旬嚷嘗方法。第四格她部分著重探討了基於經典JavaEE框架(即JSF+EJB+JPA)開發的原理和方法,重點嚷簽設捆在於其架構性理念和規範。最後一部分給出了針對同一項目的三種不同開發技術方案,以期讀者能獲得JavaEE套用分層開發的整體性理解。本書的每個章節都配有拓展參考閱讀文獻,以指導讀者進一步深入學習。
圖書目錄
出版說明
前言
第一部分 Java EE基礎及服務
第1章 Java Web開發模型及其演化
1.1 套用模式演化
1.1.1 單機套用敬剃蜜
1.1.2 C/S套用
1.1.3 B/S套用
1.1.4 雲套用
1.2 Java Web開發模型演化
1.2.1 原促蜜虹始階段
1.2.2 模型階段
1.2.3 框架階段
1.3 Java EE多層架構
1.3.1 概述
1.3.2 表現層
1.3.3 業務層
1.3.4 持久層
1.4 本章小結
第2章 Java EE基礎服務
2.1 概述
2.1.1 Java EE基礎服務架構
2.1.2 Java EE提供的服務
2.2 JNDI(Java命名和目錄服務)
2.2.1 基本原理
2.2.2 JNDI API
2.2.3 套用示例
2.3 RMI(遠程方法調用)
2.3.1 基本原理
2.3.2 RMI API
2.3.3 套用示例
2.4 JDBC(Java資料庫互連)
2.4.1 基本原理
2.4.2 JDBC API
2.4.3 套用示例
2.5 JTA(Java事務API)
2.5.1 基本原理
2.5.2 JTA API
2.5.3 套用示例
2.6 JMS(Java訊息服務)
2.6.1 基本原理
2.6.2 JMS API
2.6.4 套用示例
2.7 本章小結
第二部分 Java Web開發基礎
第3章 Java Web套用概述
3.1 靜態網頁和互動式網頁
3.2 Java Web套用體系結構
3.2.1 HTML
3.2.2 HTTP
3.2.3 JSP和Servlet技術
3.2.4 Java Web套用基本組成
3.2.5 Java Web套用文檔結構
3.3 Java Web運行與開發環境
3.3.1 運行環境
3.3.2 開發環境
3.4 本章小結
第4章 JSP技術
4.1 JSP簡介
4.1.1 JSP特點
4.1.2 JSP工作原理
4.2 第一個JSP程式
4.3 JSP基本語法
4.3.1 腳本元素
4.3.2 指令元素
4.3.3 動作元素
4.3.4 注釋
4.4 JSP內置對象
4.4.1 out對象
4.4.2 request對象
4.4.3 response對象
4.4.4 session對象
4.4.5 application對象
4.4.6 page和pageContext對象
4.4.7 exception對象
4.5 對象範圍
4.6 本章小結
第5章 Servlet技術
5.1 Servlet概述
5.1.1 Servlet工作原理
5.1.2 Servlet生命周期
5.2 編寫第一個Servlet
5.2.1 編寫Servlet
5.2.2 部署
5.2.3 訪問Servlet
5.3 Servlet主要接口及實現類
5.3.1 javax.servlet.Servlet接口
5.3.2 ServletConfig接口
5.3.3 javax.servlet.GenericServlet類
5.3.4 javax.servlet.http.HttpServlet類
5.3.5 HttpServletRequest和
HttpServletResponse
5.4 Servlet與客戶端進鞏己跨酷行通信
5.4.1 request對象
5.4.2 response對象
5.4.3 Servlet上下文
5.4.4 請求轉發
5.4.5 Cookie對象
5.4.6 套用示例
5.5 過濾器
5.5.1 過濾器工作原理
5.5.2 過濾框架及部署
5.5.3 套用示例
5.6 Servlet生命周期事件
5.6.1 套用事件監聽器
5.6.2 監聽器註冊部署
5.6.3 生命周期事件套用
5.7 本章小結
第6章 EL與JSTL
6.1 EL
6.1.1 即時計算和延遲計算
6.1.2 [ ]與.操作符
6.1.3 運算符
6.1.4 EL內置對象
6.2 JSTL
6.2.1 JSTL配置
6.2.2 核心標籤庫
6.2.3 國際化標籤庫
6.2.4 函式標籤庫
6.2.5 其他標籤庫
6.3 本章小結
第7章 基於MVC的開發
7.1 MVC概述
7.1.1 Model
7.1.2 View
7.1.3 Controller
7.1.4 Java Web的MVC實現模式
7.2 MVC開發實例
7.2.1 系統分析及功能設計
7.2.2 MVC模組設計
7.2.3 詳細設計
7.3 系統實現
7.3.1 視圖部分實現
7.3.2 模型部分實現
7.3.3 控制器部分實現
7.3.4 其他部分實現
7.4 系統部署
7.5 本章小結
第三部分 輕量級框架SSH
第8章 Struts 2
8.1 Struts 2的工作原理
8.2 Struts 2配置
8.2.1 web.xml配置
8.2.2 struts.xml配置
8.3 簡單示例
8.3.1 創建工程
8.3.2 業務控制器Action
8.3.3 struts.xml配置
8.3.4 視圖檔案
8.3.5 運行示例
8.4 Action
8.4.1 Action實現
8.4.2 Action配置
8.5 攔截器
8.5.1 Struts 2攔截器原理
8.5.2 Struts 2內建攔截器
8.5.3 自定義攔截器
8.6 OGNL和類型轉換
8.6.1 OGNL概述
8.6.2 OGNL表達式
8.6.3 OGNL融入Struts 2框架
8.6.4 Struts 2內建類型轉換器
8.6.5 自定義類型轉換器
8.7 Struts 2的標籤庫
8.7.1 數據標籤
8.7.2 控制標籤
8.7.3 表單UI標籤
8.7.4 非表單UI標籤
8.8 輸入校驗
8.8.1 Struts 2內建校驗器
8.8.2 自定義校驗器
本章小結
第9章 Hibernate
9.1.1 數據持久化
9.1.2 ORM
9.2 Hibernate簡介
9.2.1 簡介
9.2.2 Hibernate框架與接口
9.3 第一個Hibernate套用
9.3.1 創建資料庫
9.3.2 創建Hibernate項目
9.3.3 創建持久化類
9.3.4 編寫Hibernate映射檔案
9.3.5 編寫Hibernate配置檔案
9.3.6 編寫SessionFactory和DAO
檔案
9.3.7 編寫HTML頁面和jsp檔案
9.3.8 構建、部署並運行程式
9.3.9 基於MyEclipse的Hibernate
反向工程
9.4 實體狀態及持久化操作
9.4.1 瞬時態
9.4.2 持久態
9.4.3 脫管態
9.4.4 移除態
9.5 Hibernate實體映射
9.5.1 Hibernate實體映射概述
9.5.2 Hibernate實體類/數據表映射
9.5.3 Hibernate複合主鍵及嵌入式
主鍵
9.5.4 Hibernate特殊屬性映射
9.6 Hibernate實體關係映射
9.6.1 Hibernate一對一關聯
9.6.2 Hibernate一對多關聯和多對一
關聯
9.6.3 Hibernate多對多關聯
9.6.4 Hibernate繼承關聯
9.7 Hibernate基本數據查詢
9.7.1 Hibernate數據檢索
9.7.2 Query接口
9.7.3 HQL基本語法
9.7.4 HQL返回結果
9.7.5 HQL中的參數綁定
9.7.6 實現一般SQL查詢
9.7.7 命名查詢
9.8 本章小結
第10章 Spring
10.1 Spring 簡介
10.1.1 Spring的發展及特點
10.1.2 Spring的體系結構
10.2 Spring 第一個實例
10.3 Spring IoC容器與Beans
10.3.1 BeanFactory和
ApplicationContext
10.3.2 Bean基本裝配
10.3.3 依賴注入
10.3.4 基於註解的Bean配置
10.4 Spring AOP
10.4.1 AOP基礎
10.4.2 Spring AOP中的Annotation
配置
10.4.3 Spring AOP中的檔案配置
10.5 Spring事務管理與任務調度
10.5.1 Spring中事務基本概念
10.5.2 Spring事務的配置
10.6 Spring集成
10.6.1 Spring整合Struts 2
10.6.2 Spring整合Hibernate
10.7 本章小結
第四部分 經典Java EE框架
第11章 JSF
11.1 JSF概述
11.1.1 工作原理
11.1.2 配置檔案
11.2 簡單示例
11.3 UI組件
11.3.1 概述
11.3.2 HTML組件標籤
11.3.3 核心組件標籤
11.4 驗證器、轉換器和事件
監聽器
11.4.1 驗證器
11.4.2 轉換器
11.4.3 事件監聽器
11.5 本章小結
第12章 EJB
12.1 EJB基本概念
12.1.1 EJB發展歷史及意義
12.1.2 EJB運行伺服器
12.1.3 第一個EJB
12.1.4 EJB3運行環境以及在JBoss
中的部署
12.2 會話Bean
12.2.1 會話Bean概述
12.2.2 無狀態會話Bean
12.2.3 有狀態會話Bean
12.3 依賴注入
12.3.1 EJB3中的依賴注入
12.3.2 資源類型的注入
12.4 訊息驅動Bean
12.4.1 訊息驅動Bean原理
12.4.2 訊息驅動Bean開發
12.5 EJB訪問其他資源
12.5.1 訪問數據源
12.5.2 訪問定時服務
12.5.3 事務處理
12.5.4 攔截器
12.6 本章小結
第13章 JPA
13.1 JPA簡介
13.1.1 簡介
13.1.2 JPA與其他持久化技術的
比較
13.1.3 JPA與EJB 3之間的關係
13.1.4 JPA的主要類和接口
13.2 第一個JPA套用
13.2.1 創建JPA項目
13.2.2 創建基於註解的持久化類
13.2.3 編寫JPA配置檔案
13.2.4 編寫EntityManagerHelper和DAO
檔案
13.2.5 基於MyEclipse的JPA反向
工程
13.3 使用JPA完成實體狀態的
操作
13.3.1 實體的狀態及操作
13.3.2 獲取實體管理器工廠
13.3.3 獲取實體管理器
13.3.4 使用實體管理器
13.3.5 處理事務
13.4 使用JPA完成查詢
13.4.1 使用EntityManager根據主鍵
查詢對象
13.4.2 編寫簡單查詢
13.4.3 創建Query對象
13.4.4 使用命名查詢
13.4.5 處理查詢中的變數
13.4.6 得到查詢結果
13.4.7 使用分頁查詢
13.4.8 訪問查詢結果
13.4.9 使用標準SQL語句
13.5 JPA進階
13.5.1 把查詢的多個值封裝成對象
13.5.2 使用存儲過程
13.5.3 JPA實體生命周期回調方法
13.6 本章小結
第五部分 案例項目開發實踐
第14章 案例項目開發示例
14.1 系統簡介
14.1.1 背景
14.1.2 業務功能需求
14.2 系統分析
14.2.1 分析類
14.2.2 ER圖
14.3 資料庫表結構設計
14.4 基於MVC的Java Web模型
14.4.1 系統設計
14.4.2 系統各層的實現
14.5 基於輕量級SSH框架
14.5.1 系統設計
14.5.2 系統各層的實現
14.6 基於經典Java EE框架
14.6.1 系統設計
14.6.2 系統各層的實現
14.7 本章小結
3.2.4 Java Web套用基本組成
3.2.5 Java Web套用文檔結構
3.3 Java Web運行與開發環境
3.3.1 運行環境
3.3.2 開發環境
3.4 本章小結
第4章 JSP技術
4.1 JSP簡介
4.1.1 JSP特點
4.1.2 JSP工作原理
4.2 第一個JSP程式
4.3 JSP基本語法
4.3.1 腳本元素
4.3.2 指令元素
4.3.3 動作元素
4.3.4 注釋
4.4 JSP內置對象
4.4.1 out對象
4.4.2 request對象
4.4.3 response對象
4.4.4 session對象
4.4.5 application對象
4.4.6 page和pageContext對象
4.4.7 exception對象
4.5 對象範圍
4.6 本章小結
第5章 Servlet技術
5.1 Servlet概述
5.1.1 Servlet工作原理
5.1.2 Servlet生命周期
5.2 編寫第一個Servlet
5.2.1 編寫Servlet
5.2.2 部署
5.2.3 訪問Servlet
5.3 Servlet主要接口及實現類
5.3.1 javax.servlet.Servlet接口
5.3.2 ServletConfig接口
5.3.3 javax.servlet.GenericServlet類
5.3.4 javax.servlet.http.HttpServlet類
5.3.5 HttpServletRequest和
HttpServletResponse
5.4 Servlet與客戶端進行通信
5.4.1 request對象
5.4.2 response對象
5.4.3 Servlet上下文
5.4.4 請求轉發
5.4.5 Cookie對象
5.4.6 套用示例
5.5 過濾器
5.5.1 過濾器工作原理
5.5.2 過濾框架及部署
5.5.3 套用示例
5.6 Servlet生命周期事件
5.6.1 套用事件監聽器
5.6.2 監聽器註冊部署
5.6.3 生命周期事件套用
5.7 本章小結
第6章 EL與JSTL
6.1 EL
6.1.1 即時計算和延遲計算
6.1.2 [ ]與.操作符
6.1.3 運算符
6.1.4 EL內置對象
6.2 JSTL
6.2.1 JSTL配置
6.2.2 核心標籤庫
6.2.3 國際化標籤庫
6.2.4 函式標籤庫
6.2.5 其他標籤庫
6.3 本章小結
第7章 基於MVC的開發
7.1 MVC概述
7.1.1 Model
7.1.2 View
7.1.3 Controller
7.1.4 Java Web的MVC實現模式
7.2 MVC開發實例
7.2.1 系統分析及功能設計
7.2.2 MVC模組設計
7.2.3 詳細設計
7.3 系統實現
7.3.1 視圖部分實現
7.3.2 模型部分實現
7.3.3 控制器部分實現
7.3.4 其他部分實現
7.4 系統部署
7.5 本章小結
第三部分 輕量級框架SSH
第8章 Struts 2
8.1 Struts 2的工作原理
8.2 Struts 2配置
8.2.1 web.xml配置
8.2.2 struts.xml配置
8.3 簡單示例
8.3.1 創建工程
8.3.2 業務控制器Action
8.3.3 struts.xml配置
8.3.4 視圖檔案
8.3.5 運行示例
8.4 Action
8.4.1 Action實現
8.4.2 Action配置
8.5 攔截器
8.5.1 Struts 2攔截器原理
8.5.2 Struts 2內建攔截器
8.5.3 自定義攔截器
8.6 OGNL和類型轉換
8.6.1 OGNL概述
8.6.2 OGNL表達式
8.6.3 OGNL融入Struts 2框架
8.6.4 Struts 2內建類型轉換器
8.6.5 自定義類型轉換器
8.7 Struts 2的標籤庫
8.7.1 數據標籤
8.7.2 控制標籤
8.7.3 表單UI標籤
8.7.4 非表單UI標籤
8.8 輸入校驗
8.8.1 Struts 2內建校驗器
8.8.2 自定義校驗器
本章小結
第9章 Hibernate
9.1.1 數據持久化
9.1.2 ORM
9.2 Hibernate簡介
9.2.1 簡介
9.2.2 Hibernate框架與接口
9.3 第一個Hibernate套用
9.3.1 創建資料庫
9.3.2 創建Hibernate項目
9.3.3 創建持久化類
9.3.4 編寫Hibernate映射檔案
9.3.5 編寫Hibernate配置檔案
9.3.6 編寫SessionFactory和DAO
檔案
9.3.7 編寫HTML頁面和jsp檔案
9.3.8 構建、部署並運行程式
9.3.9 基於MyEclipse的Hibernate
反向工程
9.4 實體狀態及持久化操作
9.4.1 瞬時態
9.4.2 持久態
9.4.3 脫管態
9.4.4 移除態
9.5 Hibernate實體映射
9.5.1 Hibernate實體映射概述
9.5.2 Hibernate實體類/數據表映射
9.5.3 Hibernate複合主鍵及嵌入式
主鍵
9.5.4 Hibernate特殊屬性映射
9.6 Hibernate實體關係映射
9.6.1 Hibernate一對一關聯
9.6.2 Hibernate一對多關聯和多對一
關聯
9.6.3 Hibernate多對多關聯
9.6.4 Hibernate繼承關聯
9.7 Hibernate基本數據查詢
9.7.1 Hibernate數據檢索
9.7.2 Query接口
9.7.3 HQL基本語法
9.7.4 HQL返回結果
9.7.5 HQL中的參數綁定
9.7.6 實現一般SQL查詢
9.7.7 命名查詢
9.8 本章小結
第10章 Spring
10.1 Spring 簡介
10.1.1 Spring的發展及特點
10.1.2 Spring的體系結構
10.2 Spring 第一個實例
10.3 Spring IoC容器與Beans
10.3.1 BeanFactory和
ApplicationContext
10.3.2 Bean基本裝配
10.3.3 依賴注入
10.3.4 基於註解的Bean配置
10.4 Spring AOP
10.4.1 AOP基礎
10.4.2 Spring AOP中的Annotation
配置
10.4.3 Spring AOP中的檔案配置
10.5 Spring事務管理與任務調度
10.5.1 Spring中事務基本概念
10.5.2 Spring事務的配置
10.6 Spring集成
10.6.1 Spring整合Struts 2
10.6.2 Spring整合Hibernate
10.7 本章小結
第四部分 經典Java EE框架
第11章 JSF
11.1 JSF概述
11.1.1 工作原理
11.1.2 配置檔案
11.2 簡單示例
11.3 UI組件
11.3.1 概述
11.3.2 HTML組件標籤
11.3.3 核心組件標籤
11.4 驗證器、轉換器和事件
監聽器
11.4.1 驗證器
11.4.2 轉換器
11.4.3 事件監聽器
11.5 本章小結
第12章 EJB
12.1 EJB基本概念
12.1.1 EJB發展歷史及意義
12.1.2 EJB運行伺服器
12.1.3 第一個EJB
12.1.4 EJB3運行環境以及在JBoss
中的部署
12.2 會話Bean
12.2.1 會話Bean概述
12.2.2 無狀態會話Bean
12.2.3 有狀態會話Bean
12.3 依賴注入
12.3.1 EJB3中的依賴注入
12.3.2 資源類型的注入
12.4 訊息驅動Bean
12.4.1 訊息驅動Bean原理
12.4.2 訊息驅動Bean開發
12.5 EJB訪問其他資源
12.5.1 訪問數據源
12.5.2 訪問定時服務
12.5.3 事務處理
12.5.4 攔截器
12.6 本章小結
第13章 JPA
13.1 JPA簡介
13.1.1 簡介
13.1.2 JPA與其他持久化技術的
比較
13.1.3 JPA與EJB 3之間的關係
13.1.4 JPA的主要類和接口
13.2 第一個JPA套用
13.2.1 創建JPA項目
13.2.2 創建基於註解的持久化類
13.2.3 編寫JPA配置檔案
13.2.4 編寫EntityManagerHelper和DAO
檔案
13.2.5 基於MyEclipse的JPA反向
工程
13.3 使用JPA完成實體狀態的
操作
13.3.1 實體的狀態及操作
13.3.2 獲取實體管理器工廠
13.3.3 獲取實體管理器
13.3.4 使用實體管理器
13.3.5 處理事務
13.4 使用JPA完成查詢
13.4.1 使用EntityManager根據主鍵
查詢對象
13.4.2 編寫簡單查詢
13.4.3 創建Query對象
13.4.4 使用命名查詢
13.4.5 處理查詢中的變數
13.4.6 得到查詢結果
13.4.7 使用分頁查詢
13.4.8 訪問查詢結果
13.4.9 使用標準SQL語句
13.5 JPA進階
13.5.1 把查詢的多個值封裝成對象
13.5.2 使用存儲過程
13.5.3 JPA實體生命周期回調方法