《Java Web 程序設(shè)計教程》介紹使用Java語言開發(fā)Web應(yīng)用的主流技術(shù)。首先,從基本開發(fā)技術(shù)入手,講解了JSP、servlet、SQL以及JDBC的基礎(chǔ)概念及應(yīng)用方法。然后,逐步過渡到框架技術(shù)的講解,包括Struts2框架技術(shù)應(yīng)用、Hibernate框架技術(shù)應(yīng)用、Spring框架技術(shù)應(yīng)用以及3個框架的整合應(yīng)用方式。每章為讀者配備了簡明而又實用的示例,在書的最后通過一個完整的項目開發(fā)案例對所學(xué)技術(shù)進行總結(jié)和應(yīng)用。
《Java Web 程序設(shè)計教程》可作為普通高等院校計算機及相關(guān)專業(yè)課程教材,同時也可作為.Java編程愛好者及開發(fā)人員的參考用書。
《Java Web 程序設(shè)計教程》介紹了Java Web開發(fā)的基礎(chǔ)技術(shù),并重點講解了如何使用Struls 2框架,Hibernale框架以及Spring框架進行整合開發(fā)Java Web應(yīng)用。全書提供了大量的案例習(xí)題,與講解知識點緊密結(jié)合;配備多媒體教學(xué)課件,方便教學(xué);提供所有例題源代碼、習(xí)題答案,方便學(xué)習(xí)。 內(nèi)容講解深入淺出,通俗易懂,實用性強知識體系搭配合理,內(nèi)容翔實而全面案例驅(qū)動開發(fā),注重實踐能力與工程思想的培養(yǎng)。
Java語言以其簡單易學(xué)、適用范圍廣泛等優(yōu)點,成為了近年來最為流行的編程語言之一。尤其在Web應(yīng)用開發(fā)方面,Java更具有得天獨厚的優(yōu)勢。隨著Java語言的推廣和應(yīng)用,各種針對Web開發(fā)的框架技術(shù)也應(yīng)運而生。本書從Java Web應(yīng)用開發(fā)的基礎(chǔ)技術(shù)人手,重點講解了Struts 2,Spring以Hibernate框架在實際開發(fā)中的應(yīng)用技巧。
本書是作者在總結(jié)了多年開發(fā)經(jīng)驗與成果的基礎(chǔ)上編寫的。書中全面、翔實地介紹了Java web應(yīng)用開發(fā)所需的各種知識和技巧。通過本書的學(xué)習(xí),讀者可以快速、全面地掌握使用框架開發(fā)web應(yīng)用程序的方法,并可達到融會貫通、靈活運用的目的。
第1章 Web應(yīng)用開發(fā)簡介
1.1 何為Web應(yīng)用
1.1.1 web的概念及發(fā)展
1.1.2 Web應(yīng)用程序
1.2 使用Java開發(fā)Web應(yīng)用
1.2.1 面向?qū)ο蟮木幊陶Z言
1.2.2 豐富的框架技術(shù)
1.2.3 XML、CSS的應(yīng)用
1.2.4 使用JavaScript與Ajax提升用戶體驗
1.3 多種集成開發(fā)環(huán)境
1.3.1 集成開發(fā)環(huán)境簡介
1.3.2 web應(yīng)用服務(wù)器說明
本章小結(jié)
課后練習(xí)
第2章 JavaEE運行及開發(fā)環(huán)境
2.1 JDK的下載與安裝
2.1.1 JDK的下載與安裝
2.1.2 配置環(huán)境變量
2.2 Tomcat的下載與安裝
2.2.1 下載并安裝Tomct服務(wù)器
2.2.2 基本配置
2.2.3 服務(wù)器頁面介紹
2.3 Eclipse的下載與安裝
2.3.1 Eclipse的下載與安裝
2.3.2 熟悉Eclipse開發(fā)環(huán)境
2.4 項目實戰(zhàn)——第一個JavaEE應(yīng)用:HelloWlorld
2.4.1 開始創(chuàng)建第一個JavaEE應(yīng)用
2.4.2 熟悉HelloWorld框架結(jié)構(gòu)
本章小結(jié)
課后練習(xí)
第3章 JSP和Servlet
3.1 開發(fā)第一個JSP+Servlet應(yīng)用
3.1.1 創(chuàng)建工程
3.1.2 編寫程序
3.1.3 部署應(yīng)用
3.2 認識JSP
3.2.1 JSP的工作原理
3.2.2 JSP注釋方式
3.2 3JSP聲明方式
3.2.4 JSP表達式的應(yīng)用
3.2.5 JSP的腳本段
3.2.6 JSP的編譯指令
3.2.7 JSP的動作指令
3.2.8 JSP的內(nèi)置對象
3.3 認識Servlet
3.3.1 Servlet的開發(fā)
3.3.2 使用Http Servlet
3.3.3 Servlet的生命周期
3.3.4 load-on-startup Servlet
3.4 自定義標(biāo)簽庫
3.5 預(yù)處理用戶請求:Filter
3.6 使用Listener
3.7 項目實戰(zhàn)——用戶登錄
本章小結(jié)
課后練習(xí)
第4章 SQL與JDBC
4.1 SQL
4.1.1 SQL概述
4.1.2 DDL與DML簡介
4.1.3 SQL使用方法
4.2 JDBC
4.2.1 JDBC概述
4.2.2 JDBC驅(qū)動程序
4.2.3 使用JDBC讀取數(shù)據(jù)
4-3項目實戰(zhàn)——存儲圖書信息
本章小結(jié)
課后練習(xí)
第5章 Struts2框架基礎(chǔ)
5.1 MVC框架
5.1.1 Modell與Model2
5.1.2 MVC設(shè)計模式
5.1.3 Struts2框架的MVC架構(gòu)
5.2 Struts2概覽
5.2.1 Struts2的工作流程
5.2.2 Struts2的簡單應(yīng)用
5.3 Struts2基礎(chǔ)
5.3.1 Action詳解
5.3.2 結(jié)果與視圖
5.3.3 struts.xml的配置
5.4 值棧與OGNL表達式
5.5 Struts2的標(biāo)簽庫
5.5.1 控制標(biāo)簽
5.5.2 數(shù)據(jù)標(biāo)簽
5.5.3 表單標(biāo)簽
5.5.4 非表單UI標(biāo)簽
本章小結(jié)
課后練習(xí)
第6章 Struts2高級應(yīng)用
6.1 攔截器
6.1.1 攔截器工作機制
6.1.2 攔截器及攔截器棧的應(yīng)用
6.1.3 自定義攔截器
6.2 類型轉(zhuǎn)換器
6.2.1 Struts2內(nèi)置類型轉(zhuǎn)換器
6.2.2 引用類型的轉(zhuǎn)換方式
6.2.3 特殊對象的類型轉(zhuǎn)換i
6.2.4 類型轉(zhuǎn)換的錯誤處理
6.3 輸入校驗
6.3.1 輸入校驗的必要性
6.3.2 編程方式實現(xiàn)輸入校驗
6.3.3 應(yīng)用Struts2輸人校驗框架
6.3.4 自定義校驗器
6.4 國際化
6.4.1 國際化實現(xiàn)原理
6.4.2 準(zhǔn)備國際化資源文件
6.4.3 調(diào)用國際化資源文件
6.5 上傳和下載
6.5.1 文件上傳的實現(xiàn)原理
6.5.2 Struts2文件上傳實現(xiàn)方式
6.5.3 Struts2文件下載實現(xiàn)方式
本章小結(jié)
課后練習(xí)
第7章 Struts2中應(yīng)用模板語言
7.1 模板語言簡介
7.2 應(yīng)用Velocity
7.2.1 Velocity基礎(chǔ)
7.2.2 Struts2對Velocity的支持
7.3 應(yīng)用FreeMarker
7.3.1 FreeMarker基礎(chǔ)
7.3.2 Struts2整合FreeMarker
7.3.3 使用Struts2標(biāo)簽設(shè)計模板
7.4 FreeMarker與Velocity的比較
本章小結(jié)
課后練習(xí)
第8章 Hibernate框架基礎(chǔ)
8.1 ORM簡介
8.1.1 應(yīng)用ORM的意義
8.1.2 流行的ORM框架
8.2 準(zhǔn)備Hibernate運行環(huán)境
8.2.1 下載與安裝Hibemate
8.2.2 Hibernate發(fā)布包介紹
8.3 認識Hibernate
8.3.1 Hibernate框架結(jié)構(gòu)
8.3.2 Hibernate配置文件
8.3.3 Configuration與SessionFactory
8.3.4 Session類
8.3.5 Hibernate中的關(guān)聯(lián)關(guān)系
8.3.6 Hibernate映射文件
8.3.7 Hibernate工作原理
8.4 項目實戰(zhàn)——新聞內(nèi)容顯示
本章小結(jié)
課后練習(xí)
第9章 Hibernate查詢
9.1 Hibernate的數(shù)據(jù)檢索策略
9.1.1 立即檢索
9.1.2 延遲檢索
9.1.3 預(yù)先檢索
9.1.4 批量檢索
9.2 Hibernate的數(shù)據(jù)查詢方式
9.2.1 HQL方式
9.2.2 QBC方式
9.2.3 原生SQL方式
9.3 Hibernate的關(guān)聯(lián)查詢
9.3.1 一對一關(guān)聯(lián)關(guān)系的使用
9.3.2 一對多、多對一關(guān)聯(lián)關(guān)系的使用
9.3.3 多對多關(guān)聯(lián)關(guān)系的使用
9.4 Hibernate過濾
9.4.1 Session過濾
9.4.2 Filter過濾
9.5 項目實戰(zhàn)——客戶訂單管理
本章小結(jié)
課后練習(xí)
第10章 Hibernate性能優(yōu)化
10.1 Hibernate事務(wù)與并發(fā)
10.1.1 什么是事務(wù)
10.1.2 Hibernate中的事務(wù)處理
10.1.3 在Hibernate中使用JTA事務(wù)
10.1.4 并發(fā)控制
10.2 Hibernate緩存
10.2.1 緩存的工作原理
10.2.2 應(yīng)用一級緩存
10.2.3 應(yīng)用二級緩存
10.2.4 應(yīng)用第三方緩存
10.3 項目實戰(zhàn)——借還圖書
本章小結(jié)
課后練習(xí)
第11章 Spring框架基礎(chǔ)
11.1 Spring框架概述
11.1.1 認識Spring框架
11.1.2 Spring框架特點
11.1.3 Spring框架核心架構(gòu)
11.2 建立Spring開發(fā)環(huán)境
11.2.1 下載Spring框架
11.2.2 Spring發(fā)布包與軟件包
11.2.3 創(chuàng)建Spring應(yīng)用環(huán)境
11.3 Bean的裝配
11.3.1 Bean基本配置
11.3.2 為Bean添加屬性
11.3.3 簡化配置
11.4 理解Spring的核心-IoC
11.4.1 控制反轉(zhuǎn)
11.4.2 依賴注入的3種方式
11.5 BeanFactory與ApplicationContext
11.5.1 認識BeanFactory
11.5.2 使用ApplicationContext
11.6 項目實戰(zhàn)-Spring問候程序
本章小結(jié)
課后練習(xí)
第12章 Spring AOP
12.1 AOP基礎(chǔ)
12.1.1 AOP與OOP的比較
12.1.2 AOP的核心概念
12.1.3 Java動態(tài)代理與AOP
12.1.4 SpringAOP簡介
12.2 使用Spring的通知
12.2.1 BeforeAdvice
12.2.2 AfterReturningAdvice
12.2.3 MethodInterceptor
12.2.4 ThrowAdvice
12.3 使用Spring的切入點
12.3.1 靜態(tài)切入點
12.3.2 動態(tài)切人點
12.4 SpringAOP的代理工廠
12.4.1 選擇合適的代理
12.4.2 ProxyFactory
12.4.3 ProxyFactoryBean
12.5 項目實戰(zhàn)——輸出日志
本章小結(jié)
課后練習(xí)
第13章 Spnng與JavaEE持久化數(shù)據(jù)訪問
13.1 Spring對DAO模式的支持
13.1.1 統(tǒng)一的數(shù)據(jù)訪問異常
13.1.2 通用的數(shù)據(jù)訪問模板及抽象支持類
13.2 Sping的JDBC
13.2.1 為什么需要JdbcTemplate.....
13.2.2 通過.JdbcDaoSupport使用JdbcTeplate
13.2.3 JdbcTemplate提供的常用數(shù)據(jù)操作方法
13.3 Spring中的事務(wù)處理
13.3.1 Spring事務(wù)處理概述
13.3.2 編程式事務(wù)處理
13.3.3 聲明式事務(wù)處理
13.3.4 標(biāo)注式事務(wù)處理
13.4 項目實戰(zhàn)——公司人事管理
本章小結(jié)
課后練習(xí)
第14章 Spring與Struts2、Hbemate框架的整合基礎(chǔ)
14.1 Spring與Struts2的整合方式
14.1.1 Struts2應(yīng)用的擴展方式
14.1.2 Spring插件的應(yīng)用
14.2 Spnng和Hibernate的整合
14.2.1 Spnng對Hibemnate的支持
14.2.2 管理SessionFactory
14.2.3 Hibernate的DAO實現(xiàn)
14.2.4 使用HibemateTemplate
14.2.5 管理Hiemme事務(wù)
14.3 項目實戰(zhàn)——學(xué)生成績查詢系統(tǒng)
本章小結(jié)
課后練習(xí)
第15章 圖書館管理系統(tǒng)
15.1 系統(tǒng)功能解析
15.2 系統(tǒng)數(shù)據(jù)庫設(shè)計
15.2.1 數(shù)據(jù)庫分析
15.2.2 數(shù)據(jù)表關(guān)聯(lián)關(guān)系分析
15.3 系統(tǒng)框架搭建
15.3.1 創(chuàng)建工程
15.3.2 工程目錄結(jié)構(gòu)
15.4 系統(tǒng)代碼實現(xiàn)
15.4.1 數(shù)據(jù)庫連接的實現(xiàn)
15.4.2 工具類的實現(xiàn)
15.4.3 管理員登錄與退出實現(xiàn)
15.4.4 系統(tǒng)管理實現(xiàn)
15.4.5 圖書管理實現(xiàn)
15.4.6 讀者管理實現(xiàn)
15.4.7 借還管理實現(xiàn)
15.4.8 前臺功能實現(xiàn)
本章小結(jié)
資源傳遞給用戶的應(yīng)用程序,如Apache服務(wù)器。
客戶端:物理設(shè)備方面指的是客戶所使用的本地計算機,如上網(wǎng)時使用的個人計算機。軟件方面指的是能接收并顯示服務(wù)器上傳遞過來的信息資源的應(yīng)用程序,如Intemet Explorer發(fā)展到今天,Web共經(jīng)歷了兩個階段:Web 1.0和Web 2.0,其中Web 1.0被稱為,Imemet第一代,指的是2003年以前的Internet模式。在Web 1.0時代,Intemet采用的是技術(shù)創(chuàng)新主導(dǎo)模式,比較著名的網(wǎng)站有早期的新浪、搜狐等。而Web 2.0則是以Intemet作為平臺,利用集體智慧,通過數(shù)據(jù)庫的支持完成超越單一設(shè)備的軟件及網(wǎng)絡(luò)應(yīng)用,它將軟件發(fā)布周期作為一個循環(huán),提升了用戶的體驗,比較著名的例子有博客、播客、維基、社區(qū)、分享服務(wù)等。Web 2.0以用戶為靈魂,它允許多人參與,以可讀可寫的模式成為了。Intemet新的發(fā)展趨勢。
針對Web 2.0有人又提出了Web 3.0,不過對Web 3.0的爭議非常大,如將Web 3.0描述為一條最終通向人工智能的網(wǎng)絡(luò)進化的道路或者構(gòu)思成將整個網(wǎng)絡(luò)轉(zhuǎn)化為一系列的3D空間。不管Web 3.0最終將向何處發(fā)展,但不可否認的是,從Web誕生至今,它不僅改變著人們聯(lián)系、交流、獲取知識的方式,而且也在改變著商業(yè)的運行模式,它已經(jīng)成為人們生活、工作中非常重要的一部分。