內容簡介
本書介紹基於Java的Web編程技術,主要內容包括: Java Web技術概述; Servlet核心技術; JSP技術基礎、頁面生命周期、作用域對象、
MVC設計模式; 會話管理、檔案的上傳和下載; JDBC以及數據源和DAO設計模式; 表達式語言; JSTL和自定義標籤; Web監聽器和過濾器; Web安全性基礎; AJAX技術套用; Struts 2、Hibernate 5和Spring 5輕量級Java EE框架技術及整合開發。
本書全面地體現了Java Web編程技術的發展特性,注重理論學習和實際套用的充分結合。本書提供電子課件、源程式代碼、教學大綱及部分章節的教學視頻。每章提供了一定數量的思考與練習題,供讀者複習參考。本書可作為高等學校計算機及相關專業Web編程技術、JSP程式設計及Java EE開發等課程教材,也可供從事Java Web套用開發技術人員參考。
圖書目錄
第1章Java Web技術概述
1.1Internet與全球資訊網
1.1.1主機和IP位址
1.1.2域名和DNS
1.1.3全球資訊網
1.1.4伺服器和瀏覽器
1.1.5HTTP與URL
1.2Web前端技術
1.2.1HTML與XML
1.2.2CSS
1.2.3JavaScript
1.3伺服器資源
1.3.1靜態資源與動態資源
1.3.2靜態文檔和動態文檔
1.3.3伺服器端動態文檔技術
1.4Tomcat伺服器
1.4.1Tomcat的下載與安裝
1.4.2Tomcat的安裝
1.4.3Tomcat的啟動和停止
1.4.4測試Tomcat
1.4.5修改Tomcat的服務連線埠
1.4.6Web應用程式及結構
1.5Eclipse集成開發環境
1.5.1Eclipse的下載與安裝
1.5.2在Eclipse中配置Tomcat伺服器
1.5.3配置Eclipse字元編碼
1.5.4修改JSP字元編碼和模板
1.6創建動態Web項目
1.6.1動態Web項目的建立
1.6.2開發Servlet
1.6.3開發JSP頁面
1.6.4Web項目的導出和部署
本章小結
思考與練習
第2章Servlet核心技術
2.1Servlet API
2.1.1Servlet接口
2.1.2GenericServlet類
2.1.3HttpServlet類
2.2Servlet生命周期
2.2.1載入和實例化Servlet
2.2.2初始化Servlet
2.2.3為客戶提供服務
2.2.4銷毀和卸載Servlet
2.3處理請求
2.3.1HTTP請求結構
2.3.3處理HTTP請求
2.3.4檢索請求參數
2.3.5請求轉發
2.3.6使用請求對象存儲數據
2.3.7檢索客戶端有關信息
2.3.8檢索請求頭信息
2.4表單數據處理
2.4.1常用表單控制項元素
2.4.2表單頁面的創建
2.4.3表單數據處理
2.5傳送回響
2.5.1HTTP回響結構
2.5.2輸出流與內容類型
2.5.3回響重定向
2.5.4設定回響頭
2.5.5傳送狀態碼
2.6.1servlet 元素
2.6.2servletmapping 元素
2.6.3welcomefilelist元素
2.7@WebServlet和@WebInitParam註解
2.8ServletConfig
2.9ServletContext
2.9.1得到ServletContext引用
2.9.2獲取應用程式的初始化參數
2.9.3使用ServletContext對象存儲數據
2.9.4使用RequestDispatcher實現請求轉發
2.9.5通過ServletContext對象獲得資源
2.9.6登錄日誌
2.9.7檢索Servlet容器的信息
本章小結
思考與練習
第3章JSP技術基礎
3.1JSP語法概述
3.1.2JSP指令
3.1.3JSP動作
3.1.4表達式語言
3.1.5JSP注釋
3.2JSP頁面生命周期
3.2.1JSP頁面實現類
3.2.2JSP頁面執行過程
3.2.3JSP生命周期方法示例
3.2.4理解頁面轉換過程
3.2.5理解轉換單元
3.3.1變數的聲明及順序
3.3.2使用條件和循環語句
3.3.3請求時屬性表達式
3.4JSP隱含變數
3.4.1request與response變數
3.4.2out變數
3.4.3application變數
3.4.4session變數
3.4.5exception變數
3.4.6config變數
3.4.7pageContext變數
3.4.8page變數
3.5.1import屬性
3.5.2contentType和pageEncoding屬性
3.5.3session屬性
3.5.4errorPage與isErrorPage屬性
3.5.5language與extends屬性
3.5.6buffer與autoFlush屬性
3.5.7info屬性
3.6JSP組件包含
3.6.1靜態包含: include指令
3.6.2動態包含: include動作
3.6.3使用jsp:forward動作
3.6.4實例: 使用包含設計頁面布局
3.7作用域對象
3.7.1套用作用域
3.7.2會話作用域
3.7.3請求作用域
3.7.4頁面作用域
3.8JavaBeans
3.8.1JavaBeans規範
3.8.2使用jsp:useBean動作
3.8.3使用jsp:setProperty動作
3.8.4使用jsp:getProperty動作
3.8.5實例: JavaBeans套用
3.9.1模型1介紹
3.9.2模型2介紹
3.10錯誤處理
3.10.1聲明式錯誤處理
3.10.2使用Servlet和JSP頁面處理錯誤
3.10.3編程式錯誤處理
本章小結
思考與練習
第4章會話與檔案管理
4.1會話管理
4.1.1理解狀態與會話
4.1.2會話管理機制
4.1.3HttpSession API
4.1.4使用HttpSession對象
4.1.5會話逾時與失效
4.2使用會話實現購物車
4.2.1模型類設計
4.2.2購物車類設計
4.2.3上下文監聽器設計
4.2.4視圖設計
4.2.5控制器的設計
4.3Cookie及其套用
4.3.1Cookie API
4.3.2向客戶端傳送Cookie
4.3.3從客戶端讀取Cookie
4.3.4Cookie的安全問題
4.3.5實例: 用Cookie實現自動登錄
4.4.1URL重寫
4.4.2隱藏表單域
4.5檔案上傳
4.5.1客戶端編程
4.5.2伺服器端編程
4.6檔案下載
本章小結
思考與練習
第5章JDBC訪問資料庫
5.1.1MySQL的下載與安裝
5.1.3使用Navicat運算元據庫
5.2JDBC API
5.2.1JDBC訪問資料庫
5.2.3Statement接口
5.2.4ResultSet接口
5.2.5預處理語句PreparedStatement
5.3資料庫連線步驟
5.3.1載入驅動程式
5.3.2建立連線對象
5.3.3創建語句對象
5.3.4執行SQL語句並處理結果
5.3.5關閉建立的對象
5.3.6實例: Servlet訪問資料庫
5.4使用數據源
5.4.1數據源概述
5.4.2配置數據源
5.4.3在應用程式中使用數據源
5.5DAO設計模式
5.5.1設計實體類
5.5.2設計DAO對象
5.5.3使用DAO對象
本章小結
思考與練習
第6章表達式語言
6.1理解表達式語言
6.1.1表達式語言的語法
6.1.2表達式語言的功能
6.1.3表達式語言與JSP表達式的區別
6.2EL運算符
6.2.4empty運算符
6.2.5屬性與集合元素訪問運算符
6.3使用EL訪問數據
6.3.1訪問作用域變數
6.3.2訪問JavaBeans屬性
6.3.3訪問集合元素
6.4EL隱含變數
6.4.1pageContext變數
6.4.2param和paramValues變數
6.4.3initParam變數
6.4.4pageScope、requestScope、sessionScope和applicationScope變數
6.4.5header和headerValues變數
6.4.6cookie變數
本章小結
思考與練習
第7章JSTL與自定義標籤
7.1JSTL
7.1.1通用目的標籤
7.1.2條件控制標籤
7.1.3循環控制標籤
7.1.4URL相關的標籤
7.2自定義標籤
7.2.1標籤擴展API
7.2.2自定義標籤的開發步驟
7.2.3SimpleTag接口及其生命周期
7.2.4SimpleTagSupport類
7.3理解TLD檔案
7.3.2uri元素
7.3.3tag元素
7.3.4attribute元素
7.3.5bodycontent元素
7.4幾種類型標籤的開發
7.4.1空標籤的開發
7.4.2帶屬性標籤的開發
7.4.3帶標籤體的標籤
7.4.4疊代標籤
7.4.5在標籤中使用EL
7.4.6使用動態屬性
7.4.7編寫協作標籤
本章小結
思考與練習
第8章Java Web高級套用
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在web.xml中配置過濾器
8.2.6實例: 用過濾器實現水印效果
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編程式的安全
9.4.1Servlet的安全API
9.4.2安全註解類型
本章小結
思考與練習
第10章AJAX技術基礎
10.1AJAX技術概述
10.1.1AJAX的定義
10.1.2AJAX相關技術簡介
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.1DOM的概念
10.3.2DOM與JavaScript
10.3.3使用DOM動態編輯頁面
10.3.4傳送請求參數
10.4AJAX的常用套用
10.4.1表單數據驗證
10.4.2動態載入列表框
10.4.3創建工具提示
本章小結
思考與練習
第11章Struts 2框架基礎
11.1Struts 2框架概述
11.1.1Struts 2框架的組成
11.1.2Struts 2開發環境的構建
11.1.3Struts 2套用的開發步驟
11.1.4一個簡單的應用程式
11.1.5動作類
11.1.6配置檔案
11.1.7模型驅動和屬性驅動
11.2OGNL
11.2.1ValueStack棧
11.2.2讀取Object Stack中對象的屬性
11.2.3讀取Stack Context中對象的屬性
11.2.4使用OGNL訪問數組元素
11.2.5使用OGNL訪問List類型的屬性
11.2.6使用OGNL訪問Map類型的屬性
11.3Struts 2常用標籤
11.3.1常用數據標籤
11.3.2控制標籤
11.3.3表單UI標籤
11.3.4模板與主題
11.4用戶輸入校驗
11.4.1使用Struts 2校驗框架
11.4.2使用客戶端校驗
11.4.3編程實現校驗
11.4.4使用Java註解校驗
11.5Struts 2的國際化
11.5.1國際化(i18n)
11.5.2屬性檔案
11.5.3屬性檔案的級別
11.5.4Action的國際化
11.5.5JSP頁面國際化
11.5.6實例: 全局屬性檔案套用
本 章小結
思考與練習
第12章Hibernate框架基礎
12.1ORM與Hibernate
12.1.2Hibernate軟體包簡介
12.2一個簡單的Hibernate套用
12.2.1編寫配置檔案
12.2.2準備資料庫表
12.2.3定義持久化類
12.2.4定義映射檔案
12.2.5編寫測試程式
12.2.6Hibernate的自動建表技術
12.2.7HibernateUtil輔助類
12.2.8測試類的開發
12.3Hibernate框架結構
12.3.1Hibernate的體系結構
12.3.2理解持久化對象
12.3.3Hibernate的核心組件
12.3.4持久化對象的狀態
12.4Hibernate核心API
12.4.1Configuration類
12.4.2SessionFactory接口
12.4.3Session接口
12.4.4Transaction接口
12.4.5Query接口
12.5配置檔案詳解
12.5.1hibernate.properties
12.5.2hibernate.cfg.xml
12.6映射檔案詳解
12.7關聯映射
12.7.1實體關聯類型
12.7.2單向關聯和雙向關聯
12.7.3關聯方向與查詢
12.7.4一對多關聯映射
12.7.5一對一關聯映射
12.7.6多對多關聯映射
12.8組件屬性映射
12.9繼承映射
12.9.1所有類映射成一張表
12.9.2每個子類映射成一張表
12.9.3每個具體類映射成一張表
12.10Hibernate數據查詢
12.10.1HQL查詢概述
12.10.2查詢結果處理
12.10.3HQL的from子句
12.10.4HQL的select子句
12.10.5HQL的聚集函式
12.10.6HQL的where子句
12.10.7HQL的order by子句
12.10.8HQL的group by子句
12.10.9帶參數的查詢
12.10.10關聯和連線
12.11其他查詢技術
12.11.1條件查詢
12.11.2本地SQL查詢
12.11.3命名查詢
12.12實例: 用戶註冊/登錄系統
12.12.1定義持久化類
12.12.2持久層實現
12.12.3定義Action動作類
12.12.4創建結果視圖
12.12.5修改struts.xml配置檔案
12.12.6運行應用程式
本章小結
思考與練習
13.1Spring框架概述
13.1.1Spring框架概述
13.1.2Spring框架模組
13.1.3Spring5.0的新特徵
13.1.4Spring的下載與安裝
13.2Spring IoC容器
13.2.1Spring容器概述
13.2.2ApplicationContext及其工作原理
13.3依賴注入
13.3.1理解依賴注入
13.3.2依賴注入的實現方式
13.4Spring JDBC開發
13.4.1Spring對JDBC支持概述
13.4.2配置數據源
13.4.3使用JDBC模板運算元據庫
13.4.4JdbcTemplate類的常用方法
13.4.5構建不依賴於Spring的Hibernate代碼
13.5Spring整合Struts 2和Hibernate 5
13.5.1配置自動啟動Spring容器
13.5.2Spring整合Struts 2
13.5.3Spring整合Hibernate 5
13.6基於SSH會員管理系統
13.6.1構建SSH開發環境
13.6.2資料庫層的實現
13.6.3Hibernate持久層設計
13.6.4DAO層設計
13.6.5業務邏輯層設計
13.6.6會員註冊功能實現
13.6.7會員登錄功能實現
13.6.8查詢所有會員功能實現
13.6.9刪除會員功能實現
13.6.10修改會員功能實現
本章小結
思考與練習
參考文獻"