圖書簡介
本書詳細地介紹了基於Java的Web編程最新技術,主要內容包括: Java Web技術概述,Servlet技術模型和Servlet容器模型,JSP的各種元素、生命周期、作用域對象、組件重用以及表達式語言的使用等,自定義標籤和標準標籤庫,JDBC以及連線池和DAO模型的使用,Web監聽器和過濾器以及安全性等問題。最後介紹了AJAX技術、Hibernate框架和Struts 2框架基礎。
本書較全面地體現了套用Java技術開發Web套用的發展特性,涉及當前套用廣泛的開發規範和最流行的開發框架。本書結構清晰,實例豐富,注重理論學習和實際套用的充分結合,每章提供了一定數量的習題,供讀者複習參考。
本書可作為高等學校計算機及相關專業Web編程技術課程教材,也可供從事Java Web套用開發的技術人員學習參考。
目錄
第1章Java Web技術概述
1.1Internet與全球資訊網
1.1.1主機和IP位址
1.1.2域名和DNS
1.1.3全球資訊網概述
1.1.4伺服器和瀏覽器
1.2Web常用技術
1.2.1HTTP概述
1.2.2URL和URI
1.2.3HTML和XML概述
1.2.4CSS概述
1.2.5JavaScript
1.3伺服器資源
1.3.1主動資源與被動資源
1.3.2靜態文檔和動態文檔
1.3.3伺服器端動態Web文檔技術
1.3.4客戶端動態Web文檔技術
1.4Tomcat伺服器
1.4.1Tomcat下載與安裝
1.4.2Tomcat的安裝目錄
1.4.3測試Tomcat
1.4.4配置Tomcat的服務連線埠
1.4.5Tomcat的啟動和停止
1.5Servlet與JSP入門
1.5.1Servlet
1.5.2Web容器
1.5.3JSP頁面
1.6MVC設計模式
1.6.1Model 1體系結構
1.6.2Model 2體系結構
小結
習題
第2章Servlet技術模型
2.1Servlet API
2.1.1javax.servlet包
2.1.2javax.servlet.http包
2.2Servlet生命周期
2.2.1載入和實例化Servlet
2.2.2初始化Servlet
2.2.3為客戶提供服務
2.2.4銷毀和卸載Servlet
2.3分析請求
2.3.1HTTP請求結構
2.3.2傳送HTTP請求
2.3.3處理HTTP請求
2.3.4分析請求
2.3.5請求轉發
2.3.6使用請求對象存儲數據
2.3.7實例: 一個簡單的考試系統
2.3.8檔案上傳
2.4傳送回響
2.4.1HTTP回響結構
2.4.2輸出流與內容類型
2.4.3設定回響頭
2.4.4回響重定向
2.4.5傳送狀態碼和錯誤訊息
2.5Web應用程式及結構
2.5.1Web應用程式
2.5.2套用伺服器
2.5.3Web應用程式的結構
2.6部署描述檔案
2.6.1DD檔案的定義
2.6.2<servlet >元素
2.6.3<servletmapping >元素
2.6.4<welcomefilelist>元素
2.7@WebServlet和@WebInitParam註解
2.8ServletConfig接口
小結
習題
第3章Servlet容器模型
3.1ServletContext接口
3.1.1得到ServletContext引用
3.1.2獲取應用程式的初始化參數
3.1.3通過ServletContext對象獲得資源
3.1.4登錄日誌
3.1.5使用RequestDispatcher實現請求轉發
3.1.6使用ServletContext對象存儲數據
3.1.7檢索Servlet容器的信息
3.2會話管理
3.2.1理解狀態與會話
3.2.2會話管理機制
3.2.3HttpSession API
3.2.4使用HttpSession對象
3.2.5會話逾時與失效
3.3Cookie及其套用
3.3.1Cookie API
3.3.2向客戶端傳送Cookie
3.3.3從客戶端讀取Cookie
3.3.4Cookie的安全問題
3.3.5實例: 用Cookie實現自動登錄
小結
習題
第4章JSP技術模型
4.1JSP語法概述
4.1.1JSP腳本元素
4.1.2JSP指令
4.1.3JSP動作
4.1.4表達式語言
4.1.5JSP注釋
4.2JSP頁面生命周期
4.2.1JSP頁面也是Servlet
4.2.2JSP生命周期階段
4.2.3JSP生命周期方法示例
4.2.4理解頁面轉換過程
4.2.5理解轉換單元
4.3理解page指令屬性
4.3.1import屬性
4.3.2contentType和pageEncoding屬性
4.3.3session屬性
4.3.4errorPage與isErrorPage屬性
4.3.5在DD中配置錯誤頁面
4.3.6language與extends屬性
4.3.7buffer與autoFlush屬性
4.3.8info屬性
4.4JSP腳本元素
4.4.1變數的聲明及順序
4.4.2使用條件和循環語句
4.4.3請求時屬性表達式的使用
4.5JSP隱含變數
4.5.1request與response變數
4.5.2out變數
4.5.3application變數
4.5.4session變數
4.5.5pageContext變數
4.5.6page變數
4.5.7config變數
4.5.8exception變數
4.6作用域對象
4.6.1套用作用域
4.6.2會話作用域
4.6.3請求作用域
4.6.4頁面作用域
4.7JSP組件包含
4.7.1靜態包含: include指令
4.7.2動態包含: include動作
4.7.3使用<jsp:forward>動作
4.7.4實例: 使用包含設計頁面布局
4.8JavaBeans
4.8.1JavaBeans規範
4.8.2使用<jsp:useBean>動作
4.8.3使用<jsp:setProperty>動作
4.8.4使用<jsp:getProperty>動作
4.8.5JavaBeans套用示例
4.8.6實現MVC模式的一般步驟
小結
習題
第5章表達式語言
5.1理解表達式語言
5.1.1表達式語言的調用
5.1.2表達式語言的功能
5.1.3表達式語言與JSP表達式的區別
5.2使用EL運算符
5.2.1算術運算符
5.2.2關係與邏輯運算符
5.2.3條件運算符
5.2.4empty運算符
5.2.5屬性與集合元素訪問運算符
5.3使用EL訪問數據
5.3.1訪問作用域變數
5.3.2訪問JavaBeans屬性
5.3.3訪問集合元素
5.3.4訪問EL的隱含變數
小結
習題
第6章JSP標籤技術
6.1自定義標籤的開發
6.1.1標籤擴展API
6.1.2自定義標籤的開發步驟
6.1.3SimpleTag接口及其生命周期
6.1.4SimpleTagSupport類
6.2理解TLD檔案
6.2.1<taglib>元素
6.2.2<uri>元素
6.2.3<tag>元素
6.2.4<attribute>元素
6.2.5<bodycontent>元素
6.3幾種類型標籤的開發
6.3.1空標籤的開發
6.3.2帶屬性標籤的開發
6.3.3帶標籤體的標籤
6.3.4疊代標籤
6.3.5在標籤中使用EL
6.3.6使用動態屬性
6.3.7編寫協作標籤
6.4JSP標準標籤庫
6.4.1JSTL概述
6.4.2JSTL核心標籤庫
6.4.3通用目的標籤
6.4.4條件控制標籤
6.4.5循環控制標籤
6.4.6URL相關的標籤
小結
習題
第7章JDBC資料庫訪問
7.1JDBC技術概述
7.1.1資料庫訪問的兩層和三層模型
7.1.2JDBC驅動程式
7.1.3安裝JDBC驅動程式
7.2傳統的資料庫連線方法
7.2.1載入驅動程式
7.2.2建立連線對象
7.2.3創建語句對象
7.2.4獲得SQL語句的執行結果
7.2.5關閉建立的對象
7.2.6簡單的套用示例
7.3JDBC API介紹
7.3.1Connection接口
7.3.2Statement接口
7.3.3ResultSet接口
7.3.4可滾動與可更新的ResultSet
7.4預處理語句
7.4.1創建PreparedStatement對象
7.4.2使用PreparedStatement對象
7.5連線池與數據源
7.5.1連線池與數據源介紹
7.5.2配置數據源
7.6DAO設計模式
7.6.1設計傳輸對象
7.6.2設計DAO對象
7.6.3使用DAO對象
小結
習題
第8章Servlet高級套用
8.1Web監聽器
8.1.1監聽ServletContext事件
8.1.2監聽請求事件
8.1.3監聽會話事件
8.1.4事件監聽器的註冊
8.2Web過濾器
8.2.1什麼是過濾器
8.2.2過濾器API
8.2.3一個簡單的過濾器
8.2.4@WebFilter註解
8.2.5在DD中配置過濾器
8.3Servlet的多執行緒問題
8.4Servlet的異步處理
8.4.1概述
8.4.2異步調用Servlet的開發
8.4.3實現AsyncListener接口
小結
習題
第9章Web安全性入門
9.1Web安全性措施
9.1.1理解驗證機制
9.1.2驗證的類型
9.1.3基本驗證的過程
9.1.4聲明式安全與編程式安全
9.2安全域模型
9.2.1安全域概述
9.2.2定義角色與用戶
9.3定義安全約束
9.3.1安全約束定義
9.3.2安全驗證示例
9.4編程式的安全
小結
習題
第10章AJAX技術基礎
10.1Web 2.0與AJAX技術概述
10.1.1什麼是AJAX
10.1.2AJAX相關技術簡介
10.2XMLHttpRequest對象
10.2.1創建XMLHttpRequest對象
10.2.2XMLHttpRequest的屬性
10.2.3XMLHttpRequest的方法
10.2.4一個簡單的示例
10.2.5AJAX的互動模式
10.2.6使用innerHTML屬性創建動態內容
10.3DOM和JavaScript
10.3.1什麼是DOM
10.3.2DOM與JavaScript
10.3.3使用DOM動態編輯頁面
10.3.4傳送請求參數
10.4AJAX的常用套用
10.4.1表單數據驗證
10.4.2動態載入列表框
10.4.3創建工具提示
10.4.4動態更新Web頁面
小結
習題
第11章Hibernate框架基礎
11.1ORM與Hibernate
11.1.1數據持久化與ORM
11.1.2Hibernate軟體包簡介
11.2第一個Hibernate程式
11.2.1準備資料庫表
11.2.2定義持久化類
11.2.3定義映射檔案
11.2.4編寫配置檔案
11.2.5編寫測試程式
11.2.6Hibernate的自動建表技術
11.2.7HibernateUtil輔助類
11.2.8測試類的開發
11.3Hibernate框架結構
11.3.1Hibernate的體系結構
11.3.2理解持久化對象
11.3.3Hibernate的核心組件
11.3.4持久化對象的狀態
11.4Hibernate核心API
11.4.1Configuration類
11.4.2SessionFactory接口
11.4.3Session接口
11.4.4Transaction接口
11.4.5Query接口
11.5映射檔案詳解
11.6配置檔案詳解
11.6.1hibernate.properties
11.6.2hibernate.cfg.xml
11.7關聯映射
11.7.1實體關聯類型
11.7.2單向關聯和雙向關聯
11.7.3關聯方向與查詢
11.7.4一對多關聯映射
11.7.5一對一關聯映射
11.7.6多對多關聯映射
11.8組件屬性映射
11.9繼承映射
11.9.1所有類映射成一張表
11.9.2每個子類映射成一張表
11.9.3每個具體類映射成一張表
11.10Hibernate數據查詢
11.10.1HQL查詢概述
11.10.2查詢結果處理
11.10.3HQL的from子句
11.10.4HQL的select子句
11.10.5HQL的聚集函式
11.10.6HQL的where子句
11.10.7HQL的order by子句
11.10.8HQL的group by子句
11.10.9帶參數的查詢
11.10.10關聯和連線
11.11其他查詢技術
11.11.1條件查詢
11.11.2本地SQL查詢
11.11.3命名查詢
小結
習題
第12章Struts 2框架基礎
12.1Struts 2框架概述
12.1.1Struts 2框架的組成
12.1.2Struts 2開發環境的構建
12.1.3Struts 2套用的開發步驟
12.1.4一個簡單的應用程式
12.1.5動作類
12.1.6配置檔案
12.1.7模型驅動和屬性驅動
12.2註冊/登錄系統
12.2.1定義持久化類
12.2.2持久層實現
12.2.3定義Action動作類
12.2.4創建結果視圖
12.2.5修改struts.xml配置檔案
12.2.6運行應用程式
12.3OGNL
12.3.1ValueStack棧
12.3.2讀取Object Stack中對象的屬性
12.3.3讀取Stack Context中對象的屬性
12.3.4使用OGNL訪問數組元素
12.3.5使用OGNL訪問List類型的屬性
12.3.6使用OGNL訪問Map類型的屬性
12.4Struts 2常用標籤
12.4.1常用數據標籤
12.4.2控制標籤
12.4.3表單UI標籤
12.4.4模板與主題
12.5用戶輸入校驗
12.5.1使用Struts 2校驗框架
12.5.2使用客戶端校驗
12.5.3編程實現校驗
12.5.4使用Java註解校驗
12.6Struts 2的國際化
12.6.1國際化
12.6.2屬性檔案
12.6.3屬性檔案的級別
12.6.4Action的國際化
12.6.5JSP頁面國際化
12.6.6實例: Action屬性檔案套用
12.6.7實例: 全局屬性檔案套用
12.7用Tiles實現頁面布局
12.7.1安裝所需的工具和庫
12.7.2在web.xml中配置Tiles
12.7.3創建模板頁面
12.7.4創建titles.xml定義檔案
12.7.5創建LoginAction類
12.7.6創建struts.xml檔案
12.7.7創建JSP頁面
12.7.8運行應用程式
小結
習題
參考文獻