《JSP程序設(shè)計實用教程課件》第二版全套電子課件完整版ppt整本書電子教案最全教學(xué)教程整套課件_第1頁
《JSP程序設(shè)計實用教程課件》第二版全套電子課件完整版ppt整本書電子教案最全教學(xué)教程整套課件_第2頁
《JSP程序設(shè)計實用教程課件》第二版全套電子課件完整版ppt整本書電子教案最全教學(xué)教程整套課件_第3頁
《JSP程序設(shè)計實用教程課件》第二版全套電子課件完整版ppt整本書電子教案最全教學(xué)教程整套課件_第4頁
《JSP程序設(shè)計實用教程課件》第二版全套電子課件完整版ppt整本書電子教案最全教學(xué)教程整套課件_第5頁
已閱讀5頁,還剩57頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

1、21世紀(jì)高等學(xué)校精品教程JSP程序設(shè)計實用教程 第一章 JSP和WEB應(yīng)用程序 為什么JSP發(fā)展如此迅猛,原因之一是它基于Java技術(shù),適用于企業(yè)級計算。另一原因在于JSP支持強(qiáng)大的Web應(yīng)用程序開發(fā)模式,使得各種程序員能夠協(xié)調(diào)地工作。 1.1 JSP概述 JSP(Java Server Pages)是由Sun公司于在Java語言基礎(chǔ)上開發(fā)出來的一種動態(tài)網(wǎng)頁制作技術(shù),在 Sun 正式發(fā)布JSP之后,這種新的Web應(yīng)用開發(fā)技術(shù)很快引起了人們的關(guān)注。 第一章 JSP和WEB應(yīng)用程序ASP 和 JSP 的區(qū)別主要有以下兩點(diǎn): 一是ASP的編程語言是VBScript之類的腳本語言, JSP 使用的是

2、Java 、JavaScript等; 二是 ASP 與 JSP這兩種技術(shù)的語言引擎用完全不同的方式處理頁面中嵌入的程序代碼。 JSP的優(yōu)點(diǎn) : 首先,它可以將內(nèi)容的生成和顯示進(jìn)行分離。 其次,強(qiáng)調(diào)可重用的組件。 第三,采用標(biāo)識簡化頁面開發(fā)。 第一章 JSP和WEB應(yīng)用程序1.2 JSP開發(fā)環(huán)境的配置(1)JDK Java的軟件開發(fā)工具,是Java應(yīng)用程序的基礎(chǔ)。JSP是基于Java技術(shù)的,所以配置JSP環(huán)境之前必須要安裝JDK。本書使用的版本是j2sdk1.4.1,可以到Sun公司的網(wǎng)站免費(fèi)下載。(2)Tomcat服務(wù)器 Tomcat服務(wù)器是Apache組織開發(fā)的一種JSP引擎,本身具有Web

3、服務(wù)器的功能,可以作為獨(dú)立的Web服務(wù)器來使用。同時該軟件也是免費(fèi)的,對于初學(xué)者來說,Tomcat是一個很不錯的選擇。本書使用的版本是tomcat 5.0.28。第一章 JSP和WEB應(yīng)用程序1.3 JSP常用開發(fā)工具JSP開發(fā)的兩種常用工具,Editplus文本編輯器和IDE工具Eclipse。Editplus是一款功能非常強(qiáng)大的文本編輯工具,它支持自定義工具組、自定義文件類型等功能,對于從事程序設(shè)計和網(wǎng)頁制作的工作者實在是不可或缺! 在所有的IDE中,Eclipse可以說是最有發(fā)展前途的產(chǎn)品之一。Eclipse最初由OTI和IBM兩家公司的IDE產(chǎn)品開發(fā)組創(chuàng)建,起始于1999年4月。Ecl

4、ipse是一個開放的開發(fā)平臺,通過插件系統(tǒng),可以擁有幾乎無限的擴(kuò)展能力,因此越來越多的程序員使用它來開發(fā)程序,它也是筆者喜歡的開發(fā)工具。 第一章 JSP和WEB應(yīng)用程序1.4 WEB應(yīng)用程序 介紹了Web應(yīng)用程序的工作原理.包括靜態(tài)頁面和動態(tài)頁面的處理過程.此外還介紹了Web服務(wù)器和應(yīng)用程序服務(wù)器的區(qū)別和聯(lián)系.Web服務(wù)器專門處理HTTP請求,而應(yīng)用程序服務(wù)器是通過很多協(xié)議來為應(yīng)用程序提供事務(wù)邏輯處理。 第一章 JSP和WEB應(yīng)用程序靜態(tài)頁面接到請求時,內(nèi)容不發(fā)生更改。頁面的每一行代碼都是在將頁面放置到服務(wù)器之前由設(shè)計人員編寫好的。第一章 JSP和WEB應(yīng)用程序動態(tài)頁面的內(nèi)容基于用戶的操作,隨

5、請求的不同而變化。第一章 JSP和WEB應(yīng)用程序1.5 軟件編程體系 詳細(xì)介紹了C/S和B/S的概念,以及各自的優(yōu)勢和劣勢。C/S (Client/Server)結(jié)構(gòu),簡單地說就是傳統(tǒng)意義上擁有客戶端和服務(wù)器端的網(wǎng)絡(luò)軟件或系統(tǒng),可以用譬如VB或VC等語言開發(fā),比如最常用的QQ就是C/S結(jié)構(gòu)。 B/S(Browser/Server)結(jié)構(gòu)即瀏覽器和服務(wù)器結(jié)構(gòu)。它是隨著Internet技術(shù)的興起,對C/S結(jié)構(gòu)的一種變化或者改進(jìn)的結(jié)構(gòu)。在這種結(jié)構(gòu)下,用戶工作界面是通過WWW瀏覽器來實現(xiàn),主要事務(wù)邏輯在服務(wù)器端實現(xiàn),形成三層結(jié)構(gòu)。這樣就大大簡化了客戶端電腦負(fù)荷,減輕了系統(tǒng)維護(hù)與升級的成本和工作量,降低了

6、用戶的總體成本。第二章 JSP頁面制作基礎(chǔ) JSP頁面將Java代碼嵌入到HTML腳本中,掌握HTML語言是學(xué)習(xí)JSP的基礎(chǔ)。HTML是網(wǎng)頁制作的一種規(guī)范,一種標(biāo)準(zhǔn),它通過標(biāo)記符來標(biāo)記網(wǎng)頁的各個部分。 本章首先介紹用HTML制作網(wǎng)頁的各種標(biāo)記符的設(shè)置方法,接著介紹了CSS的基本概念和使用方法。此外,為了增強(qiáng)讀者對網(wǎng)頁制作的了解,介紹了Dreamweaver的使用方法。通過學(xué)習(xí),讀者可以使用Dreamweaver以及相關(guān)知識制作出簡單精美的網(wǎng)頁。第二章 JSP頁面制作基礎(chǔ)2.1 HTML語言HTML是Hyper Text Markup Language的縮寫,中文意思是超文本標(biāo)記語言。在HTML

7、文件中,重要的文字部分都由“標(biāo)記符”括起來,而標(biāo)記符本身則以“”號標(biāo)識,標(biāo)記符內(nèi)的內(nèi)容稱為元素,代表了標(biāo)記符的意義。 本節(jié)詳細(xì)講解了HTML的語法要點(diǎn),并且通過大量實例加以說明。第二章 JSP頁面制作基礎(chǔ)2.2 CSS編程技術(shù)CSS(Cascading Stylesheets,層疊樣式表)是一種制作網(wǎng)頁的新技術(shù),現(xiàn)已成為網(wǎng)頁設(shè)計必不可少的工具之一。使用CSS能夠簡化網(wǎng)頁的格式代碼,加快下載顯示的速度,也減少了需要上傳的代碼數(shù)量,大大減少了重復(fù)勞動的工作量。層疊樣式表CSS是一種樣式描述規(guī)則,利用CSS可以定義HTML中元素的顯示效果,包括元素的位置、顏色、背景、邊空、字體、排版格式等。定義的格

8、式為:選擇符 樣式屬性:取值;樣式屬性:取值;. 第二章 JSP頁面制作基礎(chǔ)2.3 DreamweaverDreamweaver是Macromedia公司繼Flash之后推出的又一夢幻工具。Dreamweaver、Flash以及Fireworks,被Macromedia公司稱為“夢之隊”,同時被廣大使用者稱為網(wǎng)頁制作三劍客。Dreamweaver是所見即所得網(wǎng)頁編輯器。Dreamweaver的主要特點(diǎn):1)最佳的制作效率。2)網(wǎng)站管理。3)無可比擬的控制能力。 4)所見即所得。5)模板和XML。6)全方位的呈現(xiàn)。此外還詳細(xì)介紹了Dreamweaver的操作界面和如何用Dreamweaver 建

9、立JSP站點(diǎn)。 第三章 JavaScript和Java語言JavaScript是一種基于對象的腳本語言,主要負(fù)責(zé)客戶端的界面控制等工作,使開發(fā)過程簡化,而且減輕服務(wù)器負(fù)荷。還能使其能在客戶端(瀏覽器)與用戶實現(xiàn)大量的交互,還能創(chuàng)建出驚人的特效。因為JSP是基于Java語言的,JSP是Java的網(wǎng)絡(luò)應(yīng)用,所以理所當(dāng)然要熟悉Java語言。第三章 JavaScript和Java語言 3.1 JavaScript JavaScript是一種簡潔的、面向?qū)ο蟮摹⒖缙脚_的描述語言,它可以被嵌入到HTML文件中,直接被瀏覽器執(zhí)行,從而產(chǎn)生多種多樣的動態(tài)網(wǎng)頁效果。 本節(jié)詳細(xì)介紹了JavaScript的語言結(jié)構(gòu)

10、、事件驅(qū)動以及對象體系。最后用日歷等實例加以說明。 第三章 JavaScript和Java語言3.2 Java編程語言Java語言是由Sun公司推出的新一代編程語言,Java語言受到了業(yè)界的廣泛關(guān)注。Java語言是完全的面向?qū)ο蟮木幊陶Z言,充分吸取了C+語言的優(yōu)點(diǎn),在Java運(yùn)行環(huán)境中,始終存在著一個系統(tǒng)級的線程,定期對內(nèi)存進(jìn)行自動回收,避免了內(nèi)存的泄露,也減輕了程序員的工作量。Java語言的一個目標(biāo)是跨平臺,在執(zhí)行過程中根據(jù)所在的不同的硬件平臺把程序解釋為當(dāng)前的機(jī)器碼,實現(xiàn)跨平臺運(yùn)行。此外,Java語言還有高安全性和多線程等特點(diǎn)。Java語言程序文件以.java為后綴。Java程序編寫完后,

11、用開發(fā)環(huán)境下的編譯器編譯生成字節(jié)碼,字節(jié)碼文件以.class為后綴。本節(jié)詳細(xì)闡述了Java語言的語法,其中包括多線程的概念。第四章 JSP語法 4.1 JSP語法概述JSP頁面主要由JSP元素和HTML代碼構(gòu)成,其中JSP代碼完成相應(yīng)的動態(tài)功能。1.JSP工作原理當(dāng)客戶端請求瀏覽JSP頁面時,JSP服務(wù)器在把頁面?zhèn)鬟f給客戶端之前,先將JSP頁面編譯成Servlet(純Java代碼),然后將Java編譯器生成的服務(wù)器小程序編譯為Java字節(jié)碼,最后再轉(zhuǎn)換成純HTML代碼,這樣客戶端接收到的只是HTML代碼。2.JSP頁面結(jié)構(gòu)JSP基礎(chǔ)語法包括注釋、指令、腳本以及動作元素,此外,JSP還提供了一些

12、由容器實現(xiàn)和管理的內(nèi)置對象。 第四章 JSP語法4.2注釋JSP注釋分為HTML注釋和隱藏注釋兩種。JSP隱藏注釋語句不會被執(zhí)行,也不會被送到客戶端的瀏覽器中。1.JSP隱藏注釋 2.HTML注釋!- comment - 第四章 JSP語法4.3 JSP指令在JSP頁面中,可以使用JSP指令來指定頁面的有關(guān)輸出方式、引用包、加載文件、緩沖區(qū)、出錯處理等相關(guān)設(shè)置,主要作用是用來與JSP引擎之間進(jìn)行溝通。主要的三種指令是page、include和taglib 。page 指令命令定義整個JSP頁面的屬性,定義的屬性會對該JSP文件和包含進(jìn)來的JSP頁面起作用。Include指令的功能是在JSP編譯

13、時插入包含的文件。 taglib指令的功能是使用標(biāo)簽庫定義新的自定義標(biāo)簽,在JSP頁面中啟用定制行為。第四章 JSP語法4.4 JSP腳本元素JSP腳本元素用來插入Java代碼,這些Java代碼將出現(xiàn)在由當(dāng)前JSP頁面生成的Servlet中。腳本元素有三種格式:聲明格式%! declaration; %,其作用是把聲明加入到Servlet類(在任何方法之外);表達(dá)式格式%= expression %,作用是計算表達(dá)式并輸出其結(jié)果;Scriptlet格式% code %,作用是把代碼插入到Servlet的service方法。第四章 JSP語法4.5 JSP動作JSP動作利用XML語法格式的標(biāo)記來

14、控制Servlet引擎的行為。動作組件用于執(zhí)行一些標(biāo)準(zhǔn)的常用的JSP頁面。JSP動作元素包括:jsp:include:當(dāng)頁面被請求時引入一個文件。jsp:forward:請求轉(zhuǎn)到一個新的頁面。 jsp:plugin:根據(jù)瀏覽器類型為Java插件生成object或embed標(biāo)記。jsp:useBean:尋找或者實例化一個JavaBean。jsp:setProperty:設(shè)置JavaBean的屬性。 jsp:getProperty:輸出某個JavaBean的屬性。第五章 JSP內(nèi)置對象 內(nèi)置對象是不需要聲明,直接可以在JSP中使用的對象。在JSP代碼片段中,可以利用內(nèi)置對象與JSP頁面的執(zhí)行環(huán)境產(chǎn)

15、生互動。本章分別詳細(xì)介紹了JSP的九種內(nèi)置對象,其中幾個重要的對象應(yīng)用大量的實例加以說明。 第五章 JSP內(nèi)置對象request對象 request 對象代表請求對象,該對象封裝了用戶提交的信息,通過調(diào)用該對象相應(yīng)的方法可以獲取封裝的信息和用戶提交信息。它包含了有關(guān)瀏覽器請求的信息,并且提供了幾個用于獲取cookie,header,和session數(shù)據(jù)的有用的方法。來自客戶端的請求經(jīng)Servlet容器處理后,有request對象進(jìn)行封裝。它作為jspService()方法的一個參數(shù)由容器傳遞給JSP頁面。第五章 JSP內(nèi)置對象response對象response對象對客戶的請求做出動態(tài)的響應(yīng),

16、向客戶端發(fā)送數(shù)據(jù)。response對象封裝了JSP產(chǎn)生的響應(yīng),然后被發(fā)送到客戶端以響應(yīng)客戶的請求。和request一樣,也由容器產(chǎn)生,作為jspService()方法的參數(shù)被傳入JSP。response對象包含了響應(yīng)客戶請求的有關(guān)信息。第五章 JSP內(nèi)置對象out對象主要用于向客戶端輸出數(shù)據(jù)。session對象主要用于來分別保存每個用戶信息,與請求關(guān)聯(lián)的會話,Session可以存儲用戶的狀態(tài)信息。applicaton對象主要用于保存用戶信息,代碼片段的運(yùn)行環(huán)境。有助于查找有關(guān)servlet引擎和servlet環(huán)境的信息。pageContext對象用于管理網(wǎng)頁屬性,為JSP頁面包裝頁面的上下文,

17、管理對屬于JSP中特殊可見部分中已命名對象的訪問。 config對象用于存取servlet實例的初始化參數(shù),是servlet的構(gòu)架部件。page對象代表JSP網(wǎng)頁本身,表示從該頁面產(chǎn)生的一個servlet實例。只有在JSP頁面范圍之內(nèi)才是合法的。exception對象的作用是處理JSP文件執(zhí)行時發(fā)生的錯誤和異常。 第五章 JSP內(nèi)置對象JSP頁面的四種范圍,分別為page、request、session、application。page的范圍在默認(rèn)情況下,只在當(dāng)前頁面范圍內(nèi)有效。request 的范圍是指在一個JSP 網(wǎng)頁發(fā)出請求到另一個JSP 網(wǎng)頁之間,隨后這個屬性就失效。session 的

18、作用范圍為一段用戶持續(xù)和服務(wù)器所連接的時間,但與服務(wù)器斷線 ,這個屬性就無效。session 針對請求,對每個用戶創(chuàng)建響應(yīng)的session,是用戶身份的標(biāo)識。可以在同一次請求的多個頁面中傳遞參數(shù)。application 的作用范圍在服務(wù)器一開始執(zhí)行服務(wù),到服務(wù)器關(guān)閉為止。application 的范圍最大,停留的時間也最久,服務(wù)器啟動,該對象自動創(chuàng)建,對象一直保持到服務(wù)器關(guān)閉。對一個容器而言,每個用戶共享一個application對象。 第六章 JSP與數(shù)據(jù)庫開發(fā) 本章首先介紹關(guān)系數(shù)據(jù)庫的概念,然后分別介紹四種數(shù)據(jù)庫的基本操作和界面。因為JSP與數(shù)據(jù)的連接是通過JDBC,所以接著介紹了JDBC

19、的原理和驅(qū)動以及常用的類。本章的最后是數(shù)據(jù)庫編程實例,該實例是使用JSP和數(shù)據(jù)庫開發(fā)的最典型的例子,希望讀者能熟練掌握。 第六章 JSP與數(shù)據(jù)庫開發(fā)6.1 數(shù)據(jù)庫基礎(chǔ)數(shù)據(jù)庫是以一定的方式組織并存儲在計算機(jī)存儲設(shè)備上、能夠為不同用戶所共享的、與應(yīng)用程序彼此獨(dú)立的相互關(guān)聯(lián)的數(shù)據(jù)的集合。 基本的數(shù)據(jù)模型有三種:層次模型系統(tǒng)、網(wǎng)絡(luò)模型系統(tǒng)和關(guān)系模型系統(tǒng)。關(guān)系模型系統(tǒng)具有數(shù)據(jù)結(jié)構(gòu)簡單靈活、易學(xué)易懂且數(shù)學(xué)基礎(chǔ)雄厚等特點(diǎn),發(fā)展到現(xiàn)在已成為數(shù)據(jù)庫的標(biāo)準(zhǔn)。常見的中小型數(shù)據(jù)庫系統(tǒng)有Access和MySQL,大型數(shù)據(jù)庫系統(tǒng)有SQL Server和Oracle。 第六章 JSP與數(shù)據(jù)庫開發(fā)6.2 JDBC基礎(chǔ)JDBC

20、全稱為Java DataBase Connectivity standard,它是一種可用于執(zhí)行SQL語句的Java API。它由一些Java語言編寫的類和界面組成,JDBC提供了一種標(biāo)準(zhǔn)的應(yīng)用程序設(shè)計接口,使開發(fā)人員可以用純Java語言編寫完整的數(shù)據(jù)庫應(yīng)用程序。1 JDBC的任務(wù) 簡單地說,JDBC能完成下列三件事: (1)同數(shù)據(jù)庫建立連接 (2)向數(shù)據(jù)庫發(fā)送SQL語句(3)處理數(shù)據(jù)庫返回的結(jié)果 2JDBC兩層模型和三層模型 JDBC支持兩層模型,也支持三層模型訪問數(shù)據(jù)庫。 兩層模型中,Java Appple直接同數(shù)據(jù)庫連接。這就需要與被訪問的數(shù)據(jù)庫進(jìn)行連接的JDBC驅(qū)動器。三層模型中,命令

21、將被發(fā)送到服務(wù)的“中間層”,而“中間層”將SQL語句發(fā)送到數(shù)據(jù)庫。數(shù)據(jù)庫處理SQL語句并將結(jié)果返回“中間層”,然后“中間層”將它們 返回用戶。第六章 JSP與數(shù)據(jù)庫開發(fā)6.3 JSP中使用數(shù)據(jù)庫JDBC API是通用接口,在與數(shù)據(jù)庫連接時先要加載。加載驅(qū)動程序有很多方法,最常用的就是先把驅(qū)動程序類溶解到內(nèi)存中,作為“當(dāng)前”驅(qū)動程序。內(nèi)存中可以有多個驅(qū)動程序,但只有現(xiàn)在加載的這個作為首選連接的驅(qū)動程序。通常一個數(shù)據(jù)庫的連接過程為:(1)加載驅(qū)動程序。(2)通過DriverManager到得一個與數(shù)據(jù)庫連接的句柄。(3)通過連接句柄綁定要執(zhí)行的語句。(4)接收執(zhí)行結(jié)果。(5)可選的對結(jié)果的處理。(

22、6)關(guān)閉數(shù)據(jù)庫連接。第六章 JSP與數(shù)據(jù)庫開發(fā)數(shù)據(jù)庫基本操作 SQL有四種基本的數(shù)據(jù)操作語句:Insert,Select,Update和Delete。由于經(jīng)常用到,有必要在此進(jìn)行詳細(xì)說明。1插入數(shù)據(jù)Insert語句可以將一行記錄插入到指定的一個數(shù)據(jù)表中。2創(chuàng)建記錄和表Select語句可以從一個或多個表中選取特定的行和列。3刪除記錄Delete語句用來刪除已知表中的一個或多個記錄。4更新記錄Uptate語句允許用戶在已知的表中修改已經(jīng)存在的一條或多條記錄。 第七章 JSP與JavaBean 目前,JSP作為一個流行的動態(tài)網(wǎng)站開發(fā)語言,得到了越來越廣泛的應(yīng)用。在各類JSP應(yīng)用程序中,JSP + J

23、avaBean的組合成為了一種事實上最常見的JSP程序的標(biāo)準(zhǔn)。本章首先簡要介紹JavaBean的概念,然后重點(diǎn)講述JavaBean的應(yīng)用,并通過實例來加以說明。第七章 JSP與JavaBean7.1 JavaBean概述JavaBean 是一種Java語言寫成的可重用組件。JavaBean中的類必須是具體的和公共的,并且是具有無參數(shù)的構(gòu)造器。JavaBeans 通過提供符合一致性設(shè)計模式的公共方法,將內(nèi)部域封裝為屬性。JavaBean與EJB的主要區(qū)別:(1)JavaBean與EJB規(guī)范在以下方面有共同的目標(biāo):通過標(biāo)準(zhǔn)的設(shè)計模式推廣Java程序代碼,提升開發(fā)過程和開發(fā)工具之間的重復(fù)運(yùn)用性、可攜

24、性但是這兩種規(guī)格的原始問題卻是為了解決不同的問題。(2)EJB規(guī)范所定義的組件模型是用來開發(fā)服務(wù)端的Java程序,因為EJB可能執(zhí)行在不同的服務(wù)器平臺上,包括無圖形的大型主機(jī)上,所以EJB無法使用類似AWT或SWING之類的圖形化程序庫。第七章 JSP與JavaBeanJavaBean的任務(wù) JavaBean的任務(wù)就是:“Write once, run anywhere, reuse everywhere”,即“一次性編寫,任何地方執(zhí)行,任何地方重用”。JavaBean應(yīng)該提供一個實際的方法來增強(qiáng)現(xiàn)有代碼的利用率,而不再需要在原有代碼上重新進(jìn)行編程。除了在節(jié)約開發(fā)資源方面的意義外,一次性地編寫

25、JavaBean組件也可以在版本控制方面起到非常好的作用。通過JavaBean可以很好地實現(xiàn)邏輯的封裝、程序的易于維護(hù)等等。 以下是實現(xiàn)JavaBean的一些具體的主要設(shè)計目標(biāo):(1)緊湊而方便的創(chuàng)建和使用 (2)完全的可移植性(3)繼承Java的強(qiáng)大功能(4)應(yīng)用程序構(gòu)造器支持(5)分布式計算支持第七章 JSP與JavaBean7.2 JavaBean應(yīng)用 1.如何創(chuàng)建JavaBean從基本上說,JavaBean可以看成是一個黑盒子,即只需要知道其功能而不必理會其內(nèi)部結(jié)構(gòu)的軟件設(shè)備。其創(chuàng)建方式其實與創(chuàng)建一個公共類一樣。 2.如何調(diào)用JavaBean為了在JSP頁面中使用JavaBean,必須

26、使用JSP動作標(biāo)簽useBean。3.JavaBean的存放目錄如果只讓當(dāng)前JSP頁面調(diào)用JavaBean,則在該目錄下新建文件夾,命名為WEB-INF,同時在創(chuàng)建好的文件夾下再建立一個文件夾,命名為classes。把Beans的字節(jié)碼文件存放在該文件夾下,這樣在JSP頁面就可以用useBean調(diào)用了。 第七章 JSP與JavaBean7.3 JavaBean應(yīng)用實例1.使用JavaBean連接數(shù)據(jù)庫帶領(lǐng)讀者體驗JavaBean給系統(tǒng)維護(hù)帶來的便捷。2.進(jìn)程條的實現(xiàn)讓讀者學(xué)習(xí)編寫JSP+ JavaBean 模式的程序。第八章 JSP與文件操作 無論是用JSP技術(shù),還是ASP、PHP技術(shù)實現(xiàn)的網(wǎng)

27、站,都可能有文件上傳下載、計數(shù)器以及投票等功能,這些功能的實現(xiàn)離不開對文件的操作。 本章首先介紹File對象和一些常用的輸入輸出流,然后介紹了實現(xiàn)多文件上傳的兩種方式。最后詳細(xì)介紹可以實現(xiàn)上傳下載功能的SmartUpload組件,并通過實例加以說明。第八章 JSP與文件操作8.1 File對象File的使用非常的簡單,介紹了它的四個構(gòu)造函數(shù)和常用方法。分別用實例說明如何使用File對象來獲取文件的屬性、創(chuàng)建文件和文件夾、刪除文件和文件夾。第八章 JSP與文件操作8.2 輸入輸出流 在Java中,按照數(shù)據(jù)交換的單位文件流可分為字節(jié)流、字符流兩種。我們把能夠讀取一個字節(jié)序列的對象稱作一個輸入流。把

28、能夠?qū)懸粋€字節(jié)序列稱作一個輸出流。它們分別由抽象類InputStream和OutputStream類表示。因為面向字節(jié)的流不方便用來處理存儲為Unicode(每個字符使用兩個字節(jié))信息。所以Java引入了用來處理Unicode字符的類層次,這些類派生自抽象類Reader和Writer,用于讀寫雙字節(jié)的Unicode字符。 第八章 JSP與文件操作字節(jié)流1InputStream類InputStream類是所有輸入數(shù)據(jù)流的父類,它是一個抽象類,定義了所有輸入數(shù)據(jù)流都具有的共通特性。 2OutputStream類此類是所有輸出字節(jié)流類的父類。輸出流接受輸出字節(jié)并將這些字節(jié)發(fā)送到某個接收器。 一個具體

29、的輸出流類需要重載此方法,以提供具體功能。3FileInputStream文件輸入輸出流是一個從文件讀取數(shù)據(jù)的輸入輸出流。FileInputStream類是從InputStream中派生出來的簡單輸入類,作用是從輸入流中讀取字節(jié)。4FileOutputStream類FileOutputStream類是OutputStream中派生出來的簡單輸出類,它提供了基本的文件寫入能力。第八章 JSP與文件操作字符流1Reader類Reader是定義Java的流式字符輸入模式的抽象類。該類的所有方法在出錯情況下都將引發(fā)IOException 異常。2Writer類Writer 是定義流式字符輸出的抽象類。

30、所有該類的方法都返回一個void 值并在出錯條件下引發(fā)IOException 異常。3FileReader類從FileReader類可以在指定文件上實例化一個文件輸入流,利用字符流提供的方法可以從文件中讀取一個字符或者一組數(shù)據(jù)。4FileWriter類由FileWriter 類可以實例化一個文件輸出流,并提供向文件中寫入一個字符或者一組數(shù)據(jù)的方法。如果用FileWriter來打開一個只讀文件會產(chǎn)生IOException異常。 第八章 JSP與文件操作8.3 文件上傳下載JavaBean實現(xiàn)多個文件上傳的兩種方法,分別是使用Http協(xié)議和Ftp協(xié)議實現(xiàn)。1采用HTTP協(xié)議實現(xiàn)多個文件的上傳 使用

31、表單元素(input typefile),表單提交給JSP頁面處理。2采用Ftp協(xié)議實現(xiàn)多個文件的上傳首先與Ftp服務(wù)器建立連接。然后初始化文件的傳輸方式,將文件輸出到文件輸入流FileInputStream中,F(xiàn)ileInputStream中的數(shù)據(jù)讀入字節(jié)數(shù)組中,字節(jié)數(shù)組中的數(shù)據(jù)寫入輸出流。這樣和源文件同名的一個文件就復(fù)制到了服務(wù)器端。第八章 JSP與文件操作JSP上傳組件 jspSmartUpload是由網(wǎng)站開發(fā)的一個可免費(fèi)使用的全功能的文件上傳下載組件,適于嵌入執(zhí)行上傳下載操作的JSP文件中。該組件有以下幾個特點(diǎn): (1)使用簡單。在JSP文件中僅僅書寫三五行Java代碼就可以完成文件的

32、上傳或下載。 (2)能全程控制上傳。利用jspSmartUpload組件提供的對象及其操作方法,可以獲得上傳文件的全部信息(包括文件名,大小,類型,擴(kuò)展名,文件數(shù)據(jù)等),方便存取。 (3)能對上傳的文件在大小、類型等方面做出限制。(4)下載靈活。(5)針對MYSQL數(shù)據(jù)庫,能將文件上傳到數(shù)據(jù)庫中,也能將數(shù)據(jù)庫中的數(shù)據(jù)下載下來。第八章 JSP與文件操作上傳下載實例 采用SmartUpload上傳組件,簡單的實現(xiàn)上傳和下載功能,讓讀者體會如何實現(xiàn)文件的上傳和下載。網(wǎng)頁計數(shù)器的實現(xiàn) 采用文件操作來實現(xiàn)網(wǎng)頁記數(shù)器。第九章 網(wǎng)上教學(xué)系統(tǒng) 該系統(tǒng)是基于JSP技術(shù)的網(wǎng)上教學(xué)系統(tǒng),采用BS模式,利用JavaB

33、ean技術(shù),使用Tomcat服務(wù)器和Access數(shù)據(jù)庫,完成了系統(tǒng)的開發(fā)。 本章從系統(tǒng)的總體設(shè)計起步,詳細(xì)講述了網(wǎng)上教學(xué)系統(tǒng)的的數(shù)據(jù)庫設(shè)計以及具體開發(fā)的實現(xiàn)過程。要求讀者能熟練掌握數(shù)據(jù)庫的一些基本操作和數(shù)據(jù)庫的封裝,同時還要求讀者能理解并掌握J(rèn)SP+JavaBean的開發(fā)結(jié)構(gòu),并學(xué)會把Java代碼封裝成類和方法。第九章 網(wǎng)上教學(xué)系統(tǒng)9.1 系統(tǒng)總體設(shè)計1.系統(tǒng)功能模塊本教學(xué)系統(tǒng)主要用來進(jìn)行網(wǎng)上選課和網(wǎng)上評分。作為一個系統(tǒng),應(yīng)該由一些相對獨(dú)立的模塊耦合而成。本系統(tǒng)主要包括如下幾個大的模塊 :登錄模塊 、管理員模塊 、學(xué)生信息管理模塊、教師管理模塊。2.系統(tǒng)總體框架 第九章 網(wǎng)上教學(xué)系統(tǒng)9.2 系

34、統(tǒng)數(shù)據(jù)庫設(shè)計對于數(shù)據(jù)庫應(yīng)用系統(tǒng)來說,設(shè)計數(shù)據(jù)庫是非常重要的,也是首要的工作,一般先設(shè)計系統(tǒng)的數(shù)據(jù)庫,然后再開始設(shè)計應(yīng)用程序。 1.數(shù)據(jù)庫需求分析用戶信息 、課程信息 、班級信息、注冊信息 2.數(shù)據(jù)表設(shè)計用戶表(admin、student 、teacher ) 、課程表(course)、班級表(classes) 、注冊表(enrol) 3.創(chuàng)建數(shù)據(jù)表 第九章 網(wǎng)上教學(xué)系統(tǒng)9.3 各功能模塊的具體實現(xiàn)1.系統(tǒng)公用模塊 2.登錄模塊3.管理員模塊增刪改學(xué)生信息、增刪改教師信息、增刪改課程信息、增刪改班級信息 4.學(xué)生模塊網(wǎng)上選課、查看成績 、修改個人信息 5.教師模塊確認(rèn)選課學(xué)生、給學(xué)生打分 第十章

35、 銷售業(yè)績統(tǒng)計系統(tǒng) 10.1 系統(tǒng)總體設(shè)計1.系統(tǒng)功能模塊銷售系統(tǒng)基本信息、按地區(qū)統(tǒng)計、按銷售人員統(tǒng)計、按銷售部門匯總統(tǒng)計、按月匯總銷售業(yè)績生成報表、按季度匯總銷售業(yè)績生成報表、按年匯總銷售業(yè)績生成報表2.系統(tǒng)總體框架 第十章 銷售業(yè)績統(tǒng)計系統(tǒng)3.系統(tǒng)的編程思想實現(xiàn)本系統(tǒng)采用JSP技術(shù)與Javabean 技術(shù)相結(jié)合來實現(xiàn)。用戶界面(Result JSP)和事務(wù)邏輯(Javabean)的開發(fā)分別選用JSP 、Javabean技術(shù),同時使用Javabean 技術(shù)封裝交換數(shù)據(jù),并將其存儲在不同會話中,以滿足個性化Web 應(yīng)用。第十章 銷售業(yè)績統(tǒng)計系統(tǒng)10.2 系統(tǒng)數(shù)據(jù)庫設(shè)計1.數(shù)據(jù)庫需求分析銷售人員

36、信息、銷售部門信息、產(chǎn)品信息、銷售信息 2.數(shù)據(jù)表設(shè)計銷售人員信息表(personal)、銷售部門表 (sector)、產(chǎn)品信息表(product)、銷售信息表(sale)。 第十章 銷售業(yè)績統(tǒng)計系統(tǒng)10.3 各功能模塊的具體實現(xiàn)1.系統(tǒng)公用模塊首頁結(jié)構(gòu)、中文轉(zhuǎn)碼頁面、封裝數(shù)據(jù)庫、配置直接訪問首頁的XML文件2.銷售系統(tǒng)基本信息銷售人員信息查看和添加、其他信息查詢與添加3.銷售業(yè)績統(tǒng)計查詢4.部署和發(fā)布系統(tǒng) 第十一章 JSP展望 本章主要從JSP的技術(shù)難點(diǎn)出發(fā),向讀者介紹了Servlet技術(shù)和MVC模式,同時還簡要介紹了Java對象持久化技術(shù)中現(xiàn)在比較流行的Struts和Hibernate架構(gòu)。 第十一章 JSP展望11.1 JSP技術(shù)難點(diǎn)關(guān)于JSP的技術(shù)難點(diǎn) ,主要有三點(diǎn):1.連接數(shù)據(jù)庫由于Java對數(shù)據(jù)庫支持的限制,讀者需要使用JDBC來連接數(shù)據(jù)庫。 2.內(nèi)置對象會話狀態(tài)維持是Web應(yīng)用開發(fā)者必須面對的問題。 3.轉(zhuǎn)換Unicode編碼由于IE默認(rèn)字符集為GB2312,然而Windows默認(rèn)為GBK,Java則默認(rèn)為Unicode,所以如果不通過一定的轉(zhuǎn)換,直接在GB2312字符集上顯示從GBK或Unicode得到的頁面將是一片亂碼。 第十一章 JSP展望11.2 Servlet技術(shù)Servlet是一種獨(dú)立于平臺和協(xié)

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論