關(guān)于我們
書單推薦
新書推薦
|
JavaEE程序設(shè)計與應(yīng)用開發(fā)
本書共20章可分為6部分, 包括JavaEE開發(fā)環(huán)境配置、JDBC開發(fā)、Web開發(fā)、輕量級框架開發(fā)、重量級框架開發(fā)和其他內(nèi)容。本書提供了所有實(shí)例的源代碼以及開發(fā)過程中用到的軟件, 供讀者學(xué)習(xí)和參考。
本書開發(fā)環(huán)境:JDK 1.8+MyEclipse 2016+Tomcat v9.0 /Weblogic12c
本書教學(xué)內(nèi)容:Java EE環(huán)境配置、JDBC開發(fā)、Web開發(fā)、輕量級框架開發(fā)、重量級框架開發(fā)
Java EE技術(shù)是比較流行的軟件開發(fā)體系架構(gòu),是企業(yè)級應(yīng)用開發(fā)的重要可選技術(shù)標(biāo)準(zhǔn),在軟件開發(fā)領(lǐng)域占有一席之地。本書針對Java EE技術(shù)標(biāo)準(zhǔn)編程進(jìn)行了詳細(xì)的講解,以簡單、通俗易懂的案例,逐步引領(lǐng)讀者從基礎(chǔ)到各個知識點(diǎn)進(jìn)行學(xué)習(xí)。本書涵蓋了Java EE開發(fā)環(huán)境配置、JDBC開發(fā)、Web開發(fā)、輕量級框架開發(fā)、重量級框架開發(fā)和其他內(nèi)容等。每章后面都有上機(jī)習(xí)題,用于對該章內(nèi)容進(jìn)行總結(jié)演練。
作者長期從事教學(xué)工作,積累了豐富的經(jīng)驗(yàn),其中的“實(shí)戰(zhàn)教學(xué)法”也取得了很好的效果。本書的特點(diǎn)如下。 。1)實(shí)戰(zhàn)性。所有內(nèi)容都用案例引入,通俗易懂。 。2)流行性。書中講解的都是Java EE開發(fā)過程中最流行的方法、框架和模式等,緊扣學(xué)生的就業(yè)。 。3)適合教學(xué)。書中每一個章節(jié)安排適當(dāng),并且確定了建議的課時,教師可以根據(jù)情況選用,也可以進(jìn)行適當(dāng)增減。 1.本書知識體系 學(xué)習(xí)Java EE應(yīng)用開發(fā)最好能有Java面向?qū)ο缶幊痰幕A(chǔ)以及HTML和JavaScript入門的知識。本書知識體系結(jié)構(gòu)如下。遵循循序漸進(jìn)的原則。 2.章節(jié)內(nèi)容介紹 全書可分為6部分,第1部分為入門部分,包括一章。 第1章為Java EE介紹和環(huán)境配置,建議2學(xué)時。本章首先介紹Java EE的基本理論,然后對本書將要使用的軟件安裝進(jìn)行介紹。 第2部分為JDBC編程部分,包括一章。 第2章為JDBC,建議4學(xué)時。本章基于JDBC技術(shù),講解對數(shù)據(jù)庫的增、刪、改、查操作,并講解對數(shù)據(jù)庫的各種連接方法,最后闡述了連接池技術(shù)。 第3部分為Web開發(fā)部分,包括七章。 第3章為JSP基礎(chǔ)編程,建議4學(xué)時。本章首先學(xué)習(xí)B/S結(jié)構(gòu)的主要特點(diǎn),接著建立簡單的Web項目,并了解Web項目的結(jié)構(gòu);然后學(xué)習(xí)編寫JSP頁面、使用注釋、編寫表達(dá)式、程序段、聲明的方法以及常見的指令;最后學(xué)習(xí)表單。 第4章為JSP內(nèi)置對象,建議4學(xué)時。本章將重點(diǎn)學(xué)習(xí)JSP中的內(nèi)置對象out、request、response、session和application。 第5章為JSP和JavaBean,建議2學(xué)時。本章首先學(xué)習(xí)JavaBean的概念和編寫,特別對屬性的編寫重點(diǎn)進(jìn)行強(qiáng)調(diào);然后學(xué)習(xí)在JSP中使用JavaBean以及JavaBean的范圍;最后學(xué)習(xí)DAO和VO的應(yīng)用。 第6章為Servlet基礎(chǔ)編程,建議2學(xué)時。本章將介紹Servelt的作用,如何創(chuàng)建一個Servlet,Servlet的生命周期,在Servlet中如何使用JSP頁面中常用的內(nèi)置對象等內(nèi)容。 第7章為Servlet高級編程,建議2學(xué)時。本章將學(xué)習(xí)Web容器中Servlet經(jīng)常使用的高級功能,主要包括在Servlet內(nèi)實(shí)現(xiàn)跳轉(zhuǎn)、ServletContext的高級功能、過濾器和異常處理等。 第8章為EL&JSTL,建議2學(xué)時。本章首先學(xué)習(xí)EL在JSP中常用的功能,然后討論JSTL,介紹JSTL標(biāo)簽庫中的常用標(biāo)簽。 第9章為Ajax,建議2學(xué)時。本章將學(xué)習(xí)Ajax的基礎(chǔ)知識,首先通過一些實(shí)際的案例,學(xué)習(xí)Ajax技術(shù)的必要性,了解Ajax技術(shù)的原理,接下來將學(xué)習(xí)Ajax技術(shù)的基礎(chǔ)API編程。 第4部分為輕量級框架開發(fā),包括七章。 第10章為MVC和Struts基本原理,建議2學(xué)時。本章首先講解MVC思想,然后基于MVC思想的Struts框架,闡述其基本原理,并舉例說明Struts框架下用例的開發(fā)方法。 第11章為Struts標(biāo)簽和錯誤處理,建議4學(xué)時。本章介紹Struts標(biāo)簽庫常用的標(biāo)簽、資源文件和錯誤處理。 第12章為Struts 2基礎(chǔ)開發(fā),建議2學(xué)時。本章講解Struts 2的基本原理,并使用Struts 2來實(shí)現(xiàn)簡單的案例。 第13章為Hibernate基礎(chǔ)編程,建議2學(xué)時。本章介紹Hibernate的作用,創(chuàng)建一個基于Hibernate框架的程序,講解Hibernate的配置以及如何使用Hibernate對數(shù)據(jù)進(jìn)行增、 刪、改、查。 第14章為Hibernate高級編程,建議2學(xué)時。本章分析了Hibernate內(nèi)部的API,然后講解批量查詢的兩種方法,接下來對主鍵生成策略和復(fù)合主鍵進(jìn)行講解,最后講解動態(tài)實(shí)體模型。 第15章為Spring基礎(chǔ)編程,建議2學(xué)時。本章介紹Spring的作用,創(chuàng)建一個基于 Spring框架的程序,講解Spring的配置。 第16章為Struts、Spring、Hibernate的整合,建議2學(xué)時。本章用一個案例講解這三種框架之間的整合。 第5部分為重量級框架開發(fā),包括兩章。 第17章為EJB 3.2:會話Bean,建議2學(xué)時。本章介紹EJB的作用,創(chuàng)建一個基于EJB的程序,講解EJB的配置以及會話Bean的使用。 第18章為EJB 3.2:實(shí)體Bean,建議2學(xué)時。本章介紹實(shí)體Bean的作用,創(chuàng)建一個基于實(shí)體Bean框架的程序,講解如何使用實(shí)體Bean對數(shù)據(jù)進(jìn)行增、刪、改、查以及實(shí)體Bean的其他問題。 第6部分為其他內(nèi)容,包括兩章。 第19章為log4j&Ant,建議2學(xué)時。本章首先講解log4j的作用,然后講解其配置文件的編寫,以及日志的級別操作,還講解了如何利用Ant來進(jìn)行項目的部署。 第20章為DOM和SAX,建議選學(xué)或者2學(xué)時。本章學(xué)習(xí)兩個靈活、快捷的XML解析器:DOM和SAX,它們功能強(qiáng)大,而且十分易用。 本書為學(xué)校教學(xué)量身定做,可供高校Java EE應(yīng)用開發(fā)相關(guān)課程使用,也可供有Java SE基礎(chǔ)但沒有Java EE應(yīng)用開發(fā)基礎(chǔ)的程序員作為入門用書,更可以為社會Java技術(shù)培訓(xùn)班作為教材使用,還可為缺乏項目實(shí)戰(zhàn)經(jīng)驗(yàn)的程序員快速積累項目開發(fā)經(jīng)驗(yàn)。 本書提供了全書所有實(shí)例的源代碼,供讀者學(xué)習(xí)參考使用,所有程序均經(jīng)過了作者精心的調(diào)試。 由于時間倉促和作者的水平有限,書中的疏漏和不妥之處在所難免,敬請讀者批評 指正。 有關(guān)本書的意見反饋和咨詢,讀者可在清華大學(xué)出版社網(wǎng)站相關(guān)板塊中與作者進(jìn)行 交流。 本書配套光盤中的內(nèi)容,讀者也可以在清華大學(xué)出版社網(wǎng)站相關(guān)版面中下載。 郭克華 2017年1月
第1部分 入門
第1章 Java EE介紹和環(huán)境配置 3 1.1 Java EE簡介 3 1.1.1 Java技術(shù)系列的三個版本 3 1.1.2 Java EE的特點(diǎn) 4 1.1.3 Java EE的技術(shù)結(jié)構(gòu) 6 1.2 JDK安裝 7 1.3 服務(wù)器安裝 10 1.3.1 安裝Tomcat 10 1.3.2 安裝WebLogic 12 14 1.4 IDE安裝 20 1.4.1 IDE的作用 20 1.4.2 安裝MyEclipse 21 1.4.3 綁定MyEclipse和Tomcat 22 1.4.4 綁定MyEclipse和WebLogic 25 小結(jié) 27 上機(jī)習(xí)題 28 第2部分 JDBC編程 第2章 JDBC 31 2.1 JDBC簡介 31 2.2 建立ODBC數(shù)據(jù)源 32 2.3 JDBC操作 33 2.3.1 添加數(shù)據(jù) 34 2.3.2 刪除數(shù)據(jù) 35 2.3.3 修改數(shù)據(jù) 36 2.3.4 查詢數(shù)據(jù) 36 2.4 使用PreparedStatement和CallableStatement 38 2.5 事務(wù) 41 2.6 使用廠商驅(qū)動進(jìn)行數(shù)據(jù)庫連接 42 2.7 使用連接池訪問數(shù)據(jù)庫 44 小結(jié) 48 上機(jī)習(xí)題 48 第3部分 Web開發(fā) 第3章 JSP基礎(chǔ)編程 51 3.1 B/S結(jié)構(gòu) 51 3.2 建立Web項目 53 3.2.1 目錄結(jié)構(gòu) 53 3.2.2 部署 55 3.3 注釋 57 3.4 JSP表達(dá)式、程序段和聲明 58 3.5 URL傳值 60 3.6 JSP指令和動作 62 3.6.1 JSP指令 62 3.6.2 JSP動作 66 3.7 表單開發(fā) 67 3.7.1 單一表單元素數(shù)據(jù)的獲取 68 3.7.2 捆綁表單元素數(shù)據(jù)的獲取 72 3.8 隱藏表單 73 3.9 中文亂碼問題 76 小結(jié) 77 上機(jī)習(xí)題 77 第4章 JSP內(nèi)置對象 78 4.1 認(rèn)識JSP內(nèi)置對象 78 4.2 out對象 78 4.3 request對象 79 4.4 response對象 81 4.4.1 利用response對象進(jìn)行重定向 81 4.4.2 利用response設(shè)置HTTP頭 85 4.5 Cookie操作 85 4.6 利用session開發(fā)購物車 89 4.6.1 購物車需求 89 4.6.2 如何用session開發(fā)購物車 91 4.7 session其他API 93 4.7.1 session的其他操作 93 4.7.2 sessionId 96 4.7.3 利用session保存登錄信息 97 4.8 application對象 97 小結(jié) 99 上機(jī)習(xí)題 99 第5章 JSP和JavaBean 101 5.1 認(rèn)識JavaBean 101 5.1.1 編寫JavaBean 102 5.1.2 特殊JavaBean屬性 103 5.2 在JSP中使用JavaBean 104 5.3 JavaBean的范圍 107 5.4 DAO和VO 110 5.4.1 為什么需要DAO和VO 110 5.4.2 編寫DAO和VO 110 5.4.3 在JSP中使用DAO和VO 111 小結(jié) 112 上機(jī)習(xí)題 113 第6章 Servlet基礎(chǔ)編程 114 6.1 認(rèn)識Servlet 114 6.2 編寫Servlet 114 6.2.1 建立Servlet 114 6.2.2 Servlet運(yùn)行機(jī)制 117 6.3 Servlet生命周期 118 6.4 Servlet與JSP內(nèi)置對象 119 6.5 設(shè)置歡迎頁面 120 6.6 在Servlet中讀取參數(shù) 122 6.6.1 設(shè)置參數(shù) 122 6.6.2 獲取參數(shù) 123 小結(jié) 124 上機(jī)習(xí)題 124 第7章 Servlet高級編程 125 7.1 在Servlet內(nèi)實(shí)現(xiàn)跳轉(zhuǎn) 125 7.2 ServletContext高級功能 127 7.3 使用過濾器 128 7.3.1 為什么需要過濾器 128 7.3.2 編寫過濾器 129 7.3.3 需要注意的問題 133 7.4 異常處理 135 小結(jié) 136 上機(jī)習(xí)題 136 第8章 EL&JSTL 137 8.1 認(rèn)識表達(dá)式語言 137 8.1.1 為什么需要表達(dá)式語言 137 8.1.2 表達(dá)式語言基本語法 137 8.2 基本運(yùn)算符 138 8.2.1 .和[]運(yùn)算符 138 8.2.2 算術(shù)運(yùn)算符 139 8.2.3 關(guān)系運(yùn)算符 139 8.2.4 邏輯運(yùn)算符 139 8.2.5 其他運(yùn)算符 139 8.3 數(shù)據(jù)訪問 140 8.3.1 對象的作用域 140 8.3.2 訪問JavaBean 141 8.3.3 訪問集合 142 8.3.4 其他隱含對象 142 8.4 認(rèn)識JSTL 143 8.5 核心標(biāo)簽庫 144 8.5.1 核心標(biāo)簽庫介紹 144 8.5.2 用核心標(biāo)簽進(jìn)行基本數(shù)據(jù)操作 145 8.5.3 用核心標(biāo)簽進(jìn)行流程控制 146 8.6 XML標(biāo)簽庫簡介 150 8.7 國際化標(biāo)簽庫簡介 151 8.8 數(shù)據(jù)庫標(biāo)簽庫簡介 152 8.9 函數(shù)標(biāo)簽庫簡介 152 小結(jié) 154 上機(jī)習(xí)題 154 第9章 Ajax 156 9.1 Ajax概述 156 9.1.1 為什么需要Ajax技術(shù) 156 9.1.2 Ajax技術(shù)介紹 157 9.1.3 一個簡單案例 158 9.2 Ajax開發(fā) 160 9.2.1 Ajax核心代碼 160 9.2.2 API解釋 160 9.3 Ajax簡單案例 164 9.3.1 表單驗(yàn)證需求 164 9.3.2 實(shí)現(xiàn)方法 165 9.3.3 需要注意的問題 167 小結(jié) 168 上機(jī)習(xí)題 168 第4部分 輕量級框架開發(fā) 第10章 MVC和Struts基本原理 171 10.1 MVC模式 171 10.2 Struts框架的基本原理 172 10.2.1 Struts框架簡介 172 10.2.2 Struts框架原理 173 10.3 Struts框架的基本使用方法 174 10.3.1 導(dǎo)入Struts框架 174 10.3.2 編寫JSP 176 10.3.3 編寫并配置ActionForm 177 10.3.4 編寫并配置Action 179 10.3.5 測試 181 10.4 其他問題 181 10.4.1 程序運(yùn)行流程 181 10.4.2 ActionForm生命周期 182 10.4.3 其他問題 183 小結(jié) 184 上機(jī)習(xí)題 184
JSP基礎(chǔ)編程
建議學(xué)時:4 Web開發(fā)是B/S模式下進(jìn)行的一種開發(fā)形式,也是Java EE開發(fā)中的一個重要組成部分。本章首先學(xué)習(xí)B/S結(jié)構(gòu)的主要特點(diǎn),然后建立簡單的Web項目,并了解Web項目的結(jié)構(gòu)。 JSP運(yùn)行于服務(wù)器端,能夠向客戶端展現(xiàn)內(nèi)容可以變化的網(wǎng)頁文檔,以及處理用戶提交的表單數(shù)據(jù)。本章將要學(xué)習(xí)編寫JSP頁面、使用注釋,然后學(xué)習(xí)編寫表達(dá)式、程序段和聲明的方法。 JSP指令和動作是JSP編程中的兩個重要的概念。本章將學(xué)習(xí)常見的指令,包括page、include,以及常見的動作,包括include、forward。 表單是用戶和服務(wù)器之間進(jìn)行信息交互的重要手段,有了表單,JSP程序才可以更加豐富多彩。本章將學(xué)習(xí)JSP編程中的表單開發(fā),首先對表單的基本結(jié)構(gòu)和基本屬性進(jìn)行學(xué)習(xí),然后學(xué)習(xí)各種表單元素與服務(wù)器的交互,最后對隱藏表單的作用進(jìn)行講解。 3.1 B/S結(jié)構(gòu) 在網(wǎng)絡(luò)應(yīng)用程序中,有兩種基本的結(jié)構(gòu):C/S(客戶機(jī)/服務(wù)器)和B/S(瀏覽器/服務(wù)器)。C/S程序,以通常使用的QQ為例,該系統(tǒng)的部署結(jié)構(gòu)如圖3-1所示。 圖3-1 QQ的部署結(jié)構(gòu) 從圖3-1可以看出,C/S分為客戶機(jī)和服務(wù)器兩層,把應(yīng)用軟件安裝在客戶機(jī)端,通過網(wǎng)絡(luò)與服務(wù)器端相互通信。如果客戶端改動了(如界面豐富,功能增加),就必須通知所有的客戶端重新安裝,維護(hù)稍有不便。 而B/S結(jié)構(gòu)卻可以不用通知客戶端安裝某個軟件,內(nèi)容修改了,也不需要通知客戶端升級。B/S也分為客戶機(jī)和服務(wù)器兩層,但是客戶機(jī)上不用安裝軟件,只需要使用瀏覽器即可。例如,在Google的查詢界面,輸入“http://www.google.com”,通過IE進(jìn)行查詢,就是B/S結(jié)構(gòu)的一種應(yīng)用形式。這樣,每當(dāng)修改了應(yīng)用系統(tǒng),只需要維護(hù)Web服務(wù)器,所有客戶端再打開瀏覽器,輸入相應(yīng)的網(wǎng)址(如“http://www.google.com”),就可以訪問到最新的應(yīng)用系統(tǒng)。 當(dāng)前的應(yīng)用系統(tǒng)中,B/S系統(tǒng)占絕對主流地位。不過,瀏覽器也并不是不需要安裝,一般是和操作系統(tǒng)一起安裝的。 因此,B/S結(jié)構(gòu)如圖3-2所示。 圖3-2 B/S部署結(jié)構(gòu) 但是,B/S結(jié)構(gòu)相較于C/S結(jié)構(gòu),也存在一定的劣勢,如服務(wù)器端負(fù)擔(dān)比較重,客戶端界面不夠豐富,快速響應(yīng)不如C/S等。 要開發(fā)基于B/S的應(yīng)用系統(tǒng),必須首先知道什么是Web程序。 Web原意是“蜘蛛網(wǎng)”或“網(wǎng)”。在互聯(lián)網(wǎng)等技術(shù)領(lǐng)域,特指網(wǎng)絡(luò),在應(yīng)用程序領(lǐng)域,又是“World Wide Web(萬維網(wǎng))”的簡稱。在Web程序結(jié)構(gòu)中,瀏覽器端與Web服務(wù)器端采用請求/響應(yīng)模式進(jìn)行交互,如圖3-3所示。 圖3-3 瀏覽器端與服務(wù)器端的交互模式 過程描述如下。 。1)客戶端(通常是瀏覽器,如IE、Firefox等)接受用戶的輸入,如用戶名、密碼、查詢字符串等。 。2)客戶端向Web服務(wù)器發(fā)送請求:輸入之后,提交,客戶端把請求信息(包含表單中的輸入以及其他請求等信息)發(fā)送到Web服務(wù)器端,客戶端等待服務(wù)器端的響應(yīng)。 (3)數(shù)據(jù)處理:Web服務(wù)器端使用某種腳本語言訪問數(shù)據(jù)庫,查詢數(shù)據(jù),并獲得查詢結(jié)果。 。4)數(shù)據(jù)庫向Web服務(wù)器中的程序返回結(jié)果。 (5)發(fā)送響應(yīng):Web服務(wù)器端向客戶端發(fā)送響應(yīng)信息(一般是動態(tài)生成的HTML頁面)。 (6)顯示:由用戶的瀏覽器解釋HTML代碼,呈現(xiàn)用戶界面。 不同的Web編程語言都對應(yīng)著不同的Web編程方式,目前常見的應(yīng)用于Web的編程語言主要有CGI、PHP、ASP、JSP等。 JSP是由Sun公司提出,其他許多公司一起參與建立的一種動態(tài)網(wǎng)頁技術(shù)標(biāo)準(zhǔn)。JSP具備Java技術(shù)面向?qū)ο,平臺無關(guān)性且安全可靠的優(yōu)點(diǎn),眾多大公司都支持JSP技術(shù)的服務(wù)器,使得JSP在商業(yè)應(yīng)用的開發(fā)方面成為一種流行的語言。 3.2 建立Web項目 參考第1章,安裝服務(wù)器和IDE之后,接下來介紹如何開發(fā)Web網(wǎng)站。首先需要知道的是,在Web網(wǎng)站開發(fā)時,一般叫做Web項目。創(chuàng)建Web網(wǎng)站所涉及的幾個步驟如下。 (1)創(chuàng)建Web項目:建立基本結(jié)構(gòu)。 。2)設(shè)計Web項目的目錄結(jié)構(gòu):將網(wǎng)站中的各個文件分門別類。 。3)編寫Web項目的代碼:編寫網(wǎng)頁。 。4)部署Web項目:在服務(wù)器中運(yùn)行該項目。 在MyEclipse中創(chuàng)建Web項目共涉及以下兩個步驟。 (1)創(chuàng)建一個Web項目,如圖3-4所示。 圖3-4 創(chuàng)建Web項目 。2)在新彈出的對話框中,給新項目取名,此處取名為Prj03,在J2EE Specification Level中選取Java EE 7.0,其余選項可以使用默認(rèn)設(shè)置。單擊Finish按鈕,完成創(chuàng)建新項目,如圖3-5所示。 現(xiàn)在,能夠在MyEclipse的Package Explorer中看到剛才新建的Web項目了。 ……
你還可能感興趣
我要評論
|