出版時間:2008-9 出版社:清華大學 作者:張陽//劉冰月//李緒成 頁數(shù):298
Tag標簽:無
前言
隨著Internet的發(fā)展,企業(yè)級應用系統(tǒng)中基于B/S架構的Web應用系統(tǒng)與日俱增。目前,Web應用的兩大主流開發(fā)體系是: Sun的J2EE體系和Microsoft的NET體系。在J2EE規(guī)范中,JSP和Servlet是Web項目開發(fā)的主要技術。 本書作為“Java Web程序設計(JSP+Servlet)”的后續(xù)實踐課程的教材,重點講解一個Java Web開發(fā)框架的搭建和一個實際 Web應用系統(tǒng)的設計與實現(xiàn)。遵照Servlet 2.4和JSP 2.0規(guī)范,采用MVC設計模式,全面地介紹了Java Web開發(fā)中的實用技術,從基礎準備→Web開發(fā)框架搭建→實際項目分析→數(shù)據(jù)庫建?!贛VC的設計與實現(xiàn)→Java Web開發(fā)專題→前端控制器模式→S2SH框架,一步步地引導讀者完成Java Web應用系統(tǒng)的分析、設計與實現(xiàn),最終提高讀者Web項目開發(fā)的實踐動手能力?! ?. 關于本書的特色 本書所講解的Web項目來自實際的需求,讀者易于理解。項目規(guī)模適中,拉近了與實際項目開發(fā)的距離。遵照Servlet 2.4和JSP 2.0規(guī)范,完全采用MVC設計模式,讀者學習之后比較容易理解和掌握流行的Web開發(fā)框架。本書提供的Web開發(fā)框架簡單易學,能夠方便讀者重用到其他Web項目的開發(fā)中。書中介紹了數(shù)據(jù)庫建模和數(shù)據(jù)庫設計測試等實用概念,能夠方便讀者學習之后進行設計實踐。通過前端控制器設計實例與S2SH框架的搭建實例,讀者可以進一步理解和掌握MVC架構模式與流行的Web開發(fā)框架。 本書設計思路簡單實用,文檔詳盡,實踐步驟清晰。在網(wǎng)上提供了書中的全部源代碼和相關的文檔。 幾乎每章的結束部分都有編者設計的思考題、練習和實驗。其中,實驗是較難的編程練習,方便讀者進行進階練習以及教師作為課程實驗提供給學生。 2. 關于本書的組織結構 本書精要地介紹了Web框架的開發(fā)基礎。著重講解了一個實用Web框架的搭建和一個實際的Web應用的開發(fā)。介紹了數(shù)據(jù)驗證、數(shù)據(jù)轉換、國際化和日志處理等Web開發(fā)專題。并對前端控制器和S2SH框架進行了詳細的分析和實現(xiàn)。全書共分為如下12章?! 〉?章是Web開發(fā)概述。介紹Web應用開發(fā)的背景、相關技術、Web應用的運行和開發(fā)環(huán)境以及Web開發(fā)的前沿知識?! 〉?章介紹Web應用運行環(huán)境和開發(fā)環(huán)境的搭建,環(huán)境包括JDK 6.0、Tomcat 5.5,MyEclipse 6.0和MySQL 5.0?! 〉?章是框架基礎——Servlet與JSP技術回顧?;仡橶eb應用的文檔結構,Servlet和JSP的運行原理等重要的基本概念。講解在MyEclipse中開發(fā)Web應用、Servlet和JSP的過程。列舉了常用的Servlet API、JSP的指令和動作。說明了JSP 2.0中的EL以及JSTL的常用語法。 第4章是框架基礎——MVC分層設計與實現(xiàn)。介紹了Web中的MVC架構模式,舉例說明了MVC分層設計與實現(xiàn),總結了MVC開發(fā)的關鍵問題。 第5章是框架基礎——數(shù)據(jù)庫技術。包括MySQL常用命令,常用的SQL語句, JDBC技術及數(shù)據(jù)庫連接池?! 〉?章是WebFrame框架。提出了一種簡單實用的Web開發(fā)框架——WebFrame,對該框架的各個層次的組成、功能進行了詳細的描述,并從頭至尾完整地搭建了該框架。 第7章是Tea Web應用概述。包括系統(tǒng)概述和靜態(tài)界面的演示與說明。 第8章是Tea Web應用的數(shù)據(jù)庫設計。介紹了使用PowerDesigner建模工具進行概念建模和物理建模。建立了Tea Web應用的概念模型和物理模型,進行了數(shù)據(jù)庫設計的正確性驗證,給出了主要業(yè)務的SQL語句?! 〉?章是Tea Web應用的MVC設計與實現(xiàn)。基于第6章搭建的WebFrame框架進行了二次開發(fā)?! 〉?0章是Web應用開發(fā)調(diào)試。分類介紹了開發(fā)過程中經(jīng)常出現(xiàn)的錯誤,介紹了在Eclipse環(huán)境中的調(diào)試方法?! 〉?1章是Web應用開發(fā)專題。包括數(shù)據(jù)驗證、數(shù)據(jù)轉換、國際化和日志處理?! 〉?2章簡單介紹了設計模式和架構模式。說明了J2EE中的分層架構模式。針對WebFrame框架的不足,完成了前端控制器的設計與實現(xiàn)。應用流行框架組合Struts 2+Spring+Hibernate,搭建了S2SH框架實例。
內(nèi)容概要
本書是關于Java Web開發(fā)的實踐教程。本書第1~5章介紹了Web框架開發(fā)基礎,包括集成開發(fā)環(huán)境Eclipse中Web應用的創(chuàng)建,Servlet和JSP的編寫,常用的Servlet API、JSTL標簽庫和EL表達式語言,MVC模式,MySQL數(shù)據(jù)庫的使用,JDBC API和連接池技術等基礎知識。第6章重點講解了一個基于MVC的實用Web開發(fā)框架的搭建。第7~9章先對一個實際的Web項目進行了需求分析,然后使用PowerDesigner工具建立數(shù)據(jù)模型,采用MVC模式進行設計并給出了基于前面介紹的框架的實現(xiàn)。第10~11章介紹了Web應用的開發(fā)專題,包括Web開發(fā)的調(diào)試技能、數(shù)據(jù)驗證與轉換、國際化和日志處理等。第12章介紹了J2EE中的架構模式。對前端控制器進行了詳細的分析和實現(xiàn)。搭建了基于流行框架組合Struts2+Spring+Hibernate的S2SH框架。 本書設計思路簡單實用,文檔詳盡,實踐步驟清晰,不僅可以作為計算機相關專業(yè)本科生和專科生的Java Web課程實踐的教材,同時,也適合作為Java Web開發(fā)的自學教材或培訓教材。
書籍目錄
第1章 Java Web應用概述 1.1 Web應用概述 1.1.1 什么是Web應用 1.1.2 Web應用是如何運行的 1.1.3 Web應用的發(fā)展歷史 1.2 Java Web應用開發(fā)技術 1.2.1 Java Web應用的核心技術 1.2.2 面向?qū)ο蟪绦蛟O計思想 1.2.3 MVC設計模式 1.2.4 框架結構 1.2.5 XML語言 1.2.6 HTML、CSS和JavaScript 1.3 集成開發(fā)環(huán)境和運行環(huán)境 1.3.1 集成開發(fā)環(huán)境 1.3.2 應用服務器 1.4 Web開發(fā)前沿 1.4.1 Web 2.0 1.4.2 Ajax 小結 思考題第2章 搭建運行環(huán)境和開發(fā)環(huán)境 2.1 Web應用運行環(huán)境及開發(fā)環(huán)境概述 2.2 JDK的安裝 2.3 Tomcat的安裝 2.3.1 安裝 2.3.2 測試 2.4 集成開發(fā)環(huán)境的安裝和配置 2.4.1 安裝 2.4.2 啟動 2.4.3 配置 2.4.4 測試 2.4.5 Eclipse常用功能 2.5 MySQL數(shù)據(jù)庫的安裝 小結 思考題第3章 框架基礎——Servlet與JSP技術回顧 3.1 創(chuàng)建Web應用 3.1.1 Web應用文檔結構 3.1.2 創(chuàng)建一個Web工程 3.1.3 Web應用配置或部署 3.2 Servlet基礎 3.2.1 什么是Servlet 3.2.2 Servlet的主要方法 3.2.3 Servlet的運行原理 3.2.4 在MyEclipse中開發(fā)Servlet 3.2.5 開發(fā)Servlet的基本流程目錄 Java Web開發(fā)實踐教程——從設計到實現(xiàn) 3.3 JSP基礎 3.3.1 JSP運行原理 3.3.2 編寫簡單的JSP 3.4 Servlet常用的API 3.5 JSP常用技術 3.5.1 EL簡介 3.5.2 JSP常用指令和動作 3.5.3 JSTL簡介 小結 思考題 練習 實驗第4章 框架基礎——MVC分層設計與實現(xiàn) 4.1 MVC模式簡介 4.1.1 MVC分層思想 4.1.2 MVC模型特點 4.1.3 MVC模型缺點 4.2 第一個MVC設計實例——小計算器 4.2.1 小計算器的功能說明 4.2.2 小計算器功能的MVC分層設計 4.3 第一個MVC分層實現(xiàn)——小計算器 4.3.1 創(chuàng)建小計算器Web應用 4.3.2 小計算器視圖層的實現(xiàn) 4.3.3 小計算器模型層的實現(xiàn) 4.3.4 小計算器控制層的實現(xiàn) 4.3.5 小計算器的訪問測試 4.3.6 小計算器的改進 4.3.7 路徑問題 4.4 MVC各層的特點 4.4.1 模型層 4.4.2 視圖層 4.4.3 控制層 4.4.4 MVC各層傳值 4.5 如何實現(xiàn)MVC模式 小結 思考題 練習 實驗第5章 框架基礎——數(shù)據(jù)庫技術 5.1 MySQL數(shù)據(jù)庫及常用的SQL語句 5.1.1 MySQL數(shù)據(jù)庫的常用語法 5.1.2 常用的SQL語法 5.1.3 創(chuàng)建測試數(shù)據(jù)庫 5.2 數(shù)據(jù)庫驅(qū)動 5.3 JDBC API 5.3.1 JDBC接口介紹 5.3.2 JDBC訪問過程 5.3.3 JDBC訪問實例 5.4 數(shù)據(jù)源和連接池 5.4.1 配置數(shù)據(jù)源 5.4.2 使用連接池訪問數(shù)據(jù)庫 5.4.3 以連接池方式訪問數(shù)據(jù)庫的實例 小結 思考題 練習 實驗第6章 WebFrame框架 6.1 WebFrame框架簡介 6.1.1 WebFrame框架的特點 6.1.2 WebFrame的文檔結構 6.1.3 搭建WebFrame應用 6.2 登錄功能 6.2.1 登錄功能說明 6.2.2 登錄功能MVC設計 6.2.3 登錄功能MVC分層實現(xiàn) 6.3 session驗證過濾器 6.3.1 Servlet過濾器簡介 6.3.2 創(chuàng)建Servlet過濾器 6.3.3 配置過濾器 6.3.4 過濾器驗證 6.4 統(tǒng)一信息提示功能 6.4.1 統(tǒng)一信息提示頁 6.4.2 統(tǒng)一信息提示控制 6.4.3 統(tǒng)一信息提示功能的使用 6.5 文件上傳、下載工具類UploadUtil 6.5.1 jspSmartUpload組件 6.5.2 commons?fileupload組件 6.5.3 上傳下載工具類UploadUtil 6.5.4 創(chuàng)建tea.util.UploadUtil 6.5.5 UploadUtil的使用 6.6 數(shù)據(jù)庫訪問封裝 6.6.1 BaseService 6.6.2 BaseService的創(chuàng)建和使用 6.7 分頁處理 6.7.1 分頁思想 6.7.2 pageList.jsp 6.7.3 BaseService中方法getPage的封裝 6.7.4 分頁處理功能的使用要點 6.8 流行的Web應用開發(fā)框架 6.8.1 Struts 6.8.2 WebWork 6.8.3 SpringMVC 6.8.4 JSF 6.8.5 Tapestry 小結 思考題 練習 實驗第7章 Tea Web應用概述 7.1 Tea Web應用簡介 7.2 Tea Web應用作業(yè)管理子系統(tǒng)的靜態(tài)頁面演示 7.2.1 教師布置作業(yè) 7.2.2 學生完成作業(yè) 7.2.3 教師批改作業(yè) 7.2.4 學生查看作業(yè)情況 7.3 靜態(tài)頁面說明文檔撰寫規(guī)范 7.4 靜態(tài)頁面說明文檔撰寫實例 小結 思考題 實驗第8章 Tea Web應用數(shù)據(jù)庫設計 8.1 概念數(shù)據(jù)模型、物理數(shù)據(jù)模型與PowerDesigner 8.1.1 概念數(shù)據(jù)模型和物理數(shù)據(jù)模型 8.1.2 PowerDesigner簡介 8.2 Tea Web應用作業(yè)子系統(tǒng)數(shù)據(jù)庫設計實例 8.2.1 作業(yè)子系統(tǒng)的數(shù)據(jù)需求分析 8.2.2 作業(yè)子系統(tǒng)的數(shù)據(jù)建模分析 8.2.3 作業(yè)子系統(tǒng)的物理數(shù)據(jù)模型 8.2.4 作業(yè)子系統(tǒng)的數(shù)據(jù)表匯總 8.3 Tea Web應用作業(yè)子系統(tǒng)數(shù)據(jù)建模操作流程 8.3.1 安裝和使用PowerDesigner環(huán)境 8.3.2 創(chuàng)建概念數(shù)據(jù)模型 8.3.3 建立物理數(shù)據(jù)模型 8.3.4 生成創(chuàng)建數(shù)據(jù)表的SQL腳本 8.3.5 創(chuàng)建數(shù)據(jù)庫、數(shù)據(jù)表 8.4 數(shù)據(jù)庫設計正確性驗證 8.4.1 基本插入驗證 8.4.2 主業(yè)務驗證 小結 思考題 練習 實驗第9章 Tea Web應用MVC設計與實現(xiàn) 9.1 MVC設計文檔撰寫規(guī)范 9.2 MVC設計文檔實例——布置作業(yè)模塊 9.2.1 課程列表功能 9.2.2 布置作業(yè)整體信息 9.2.3 布置作業(yè)詳細信息 9.2.4 調(diào)用流程與參數(shù)傳遞 9.3 Tea Web應用框架的搭建 9.4 布置作業(yè)模塊的實現(xiàn) 9.4.1 課程列表 9.4.2 分頁顯示的實現(xiàn) 9.4.3 布置作業(yè)整體信息 9.4.4 布置作業(yè)詳細信息 9.5 完成作業(yè)模塊的設計與實現(xiàn)的要點 9.5.1 完成作業(yè)詳細設計 9.5.2 完成作業(yè)實現(xiàn)要點 小結 思考題 練習 實驗第10章 Web應用開發(fā)調(diào)試 10.1 錯誤類型 10.1.1 編譯錯誤 10.1.2 運行時錯誤 10.1.3 邏輯錯誤 10.1.4 特殊錯誤 10.2 常見編譯錯誤 10.2.1 Java文件中的常見編譯錯誤 10.2.2 JSP文件中的常見編譯錯誤 10.3 特殊類型的錯誤 10.3.1 該頁無法顯示 10.3.2 找不到文件 10.3.3 文件修改后不起作用 10.4 運行期錯誤和邏輯錯誤的調(diào)試 10.5 在集成開發(fā)環(huán)境Eclipse中的調(diào)試 10.5.1 設置斷點 10.5.2 單步跟蹤 10.5.3 查看變量或者對象的狀態(tài) 10.5.4 改變變量的值 10.5.5 終止程序運行 10.5.6 切換視圖 10.5.7 刪除斷點 小結 思考題 實驗第11章 Web應用開發(fā)專題 11.1 數(shù)據(jù)驗證 11.1.1 非空驗證 11.1.2 字符串長度驗證 11.1.3 整數(shù)驗證 11.1.4 浮點數(shù)驗證 11.1.5 判斷字符串是不是由數(shù)字組成的 11.1.6 數(shù)字范圍驗證 11.1.7 日期驗證 11.1.8 Email格式驗證 11.1.9 郵政編碼驗證 11.2 數(shù)據(jù)轉換 11.2.1 基本數(shù)據(jù)類型與封裝類型之間的轉換 11.2.2 String與基本數(shù)據(jù)類型之間的轉換 11.2.3 String與日期之間的轉換 11.3 國際化 11.3.1 編寫資源文件 11.3.2 添加語言選擇功能 11.3.3 調(diào)用資源文件 11.4 日志處理 11.4.1 獲取日志的實現(xiàn) 11.4.2 配置 11.4.3 初始化 11.4.4 調(diào)用 11.4.5 擴展知識 小結 思考題第12章 Web應用設計模式與框架 12.1 設計模式和架構模式 12.2 J2EE中的層架構模式 12.3 J2EE模式簡介 12.4 AdvancedMVC前端控制器實例 12.4.1 前端控制器模式設計實例 12.4.2 前端控制器模式部分的實現(xiàn) 12.4.3 前端控制器模式登錄功能的實現(xiàn) 12.4.4 前端控制器模式Web應用流程 12.5 S2SH框架搭建實例 12.5.1 Struts 2+Spring+Hibernate 12.5.2 S2SH開發(fā)準備工作 12.5.3 整合Struts 2部分 12.5.4 整合Spring部分 12.5.5 整合Hibernate部分 12.5.6 基于S2SH的開發(fā)實例 小結 思考題 練習 實驗參考文獻
章節(jié)摘錄
第1章 Java Web應用概述 1.1 Web應用概述 1.1.2 Web應用是如何運行的 多數(shù)讀者都上過網(wǎng),應該對上網(wǎng)的過程比較熟悉,上網(wǎng)的一般過程如下?! 。?)打開瀏覽器。(2)輸入某個網(wǎng)址?! 。?)等待(可能會持續(xù)一段時間)?! 。?)瀏覽器顯示要訪問的信息。 然后讀者可以在網(wǎng)頁上繼續(xù)進行其他操作,可能的操作如下: 在網(wǎng)頁上單擊超鏈接訪問希望訪問的內(nèi)容,等待瀏覽器中內(nèi)容的再次更新?! ≡诰W(wǎng)頁上輸入一些信息,然后單擊按鈕,等待瀏覽器中內(nèi)容的再次更新?! 〔还苁窃诘刂窓谳斎氲刂?,還是單擊超鏈接或者單擊按鈕,都需要等待瀏覽器中內(nèi)容的更新。等待瀏覽器內(nèi)容更新的過程,實際上是瀏覽器訪問Web應用的過程。這個過程如下?! 。?)瀏覽器根據(jù)用戶輸入的地址找到相應的服務器,不同的網(wǎng)站對應不同的服務器。這個服務器可以接收瀏覽器發(fā)送的請求,通常稱為Web服務器。 ?。?)Web服務器把這個請求交給相應的文件管理器,這個文件管理器也是一個服務器,通常稱為應用服務器。 ?。?)應用服務器接收到請求之后,查找相應的文件,加載并執(zhí)行這個文件。執(zhí)行的結果通常是HTML文檔?! 。?)應用服務器執(zhí)行完相應的文件之后,把執(zhí)行的結果返回給Web服務器,Web服務器再把這個結果返回給瀏覽器。 ?。?)瀏覽器解析HTML文檔,然后把解析后的網(wǎng)頁顯示給用戶?! ?.1.3 Web應用的發(fā)展歷史 隨著Internet技術的廣泛應用,Web技術已經(jīng)廣泛應用于Internet上,但早期的Web應用全部是靜態(tài)的HTML頁面,用于將一些文本信息呈現(xiàn)給瀏覽者,但這些信息是固定寫在HTML頁面里的,該頁面不具備與用戶交互的能力,沒有動態(tài)顯示的功能。 很自然地,人們希望Web應用里應該包含一些能動態(tài)執(zhí)行的頁面,最早的CGI(通用網(wǎng)關接口)技術滿足了該要求,CGI技術使得Web應用可以與客戶端瀏覽器交互,不再需要使用靜態(tài)的HTML頁面。CGI技術可以從數(shù)據(jù)庫讀取信息,將這些信息呈現(xiàn)給用戶;還可以獲取用戶的請求參數(shù),并將這些參數(shù)保存到數(shù)據(jù)庫里?! GI技術開啟了動態(tài)Web應用的時代,給了這種技術無限的可能性。但CGI技術存在很多缺點,其中最大的缺點就是開發(fā)動態(tài)Web應用難度非常大,而且在性能等各方面也存在限制?! 〉?997年時,隨著Java語言的廣泛使用,Servlet技術迅速成為動態(tài)web應用的主要開發(fā)技術。相比傳統(tǒng)的CGI應用而言,Servlet具有以下優(yōu)勢。
編輯推薦
本書作為“Java Web程序設計”的后續(xù)實踐課程的教材(理論課教材將隨后出版),重點講解了一個Java Web開發(fā)框架的搭建和一個實際Web應用系統(tǒng)的設計與實現(xiàn)?! ”緯髡伦詈筇峁┚幷咴O計的思考題、練習和實驗。其中實驗部分是較難的編程練習,方便讀者進行進階練習以及教師作為課程實驗提供給學生?! ”緯呐涮踪Y料包括程序、配置文檔和PPT課件,可從清華大學出版社網(wǎng)站Http://www.tup.tsinghua.edu.cn上下載。
圖書封面
圖書標簽Tags
無
評論、評分、閱讀與下載