JAVA/JSP網(wǎng)上書(shū)店建設(shè)論文

時(shí)間:2022-03-13 04:20:00

導(dǎo)語(yǔ):JAVA/JSP網(wǎng)上書(shū)店建設(shè)論文一文來(lái)源于網(wǎng)友上傳,不代表本站觀點(diǎn),若需要原創(chuàng)文章可咨詢客服老師,歡迎參考。

JAVA/JSP網(wǎng)上書(shū)店建設(shè)論文

【摘要】

java語(yǔ)言是目前Internet上大型的WEB應(yīng)用程序開(kāi)發(fā)時(shí)使用得最熱門(mén)的編程語(yǔ)言,本文描述了JAVA和jsp技術(shù)的特點(diǎn)以及在互聯(lián)網(wǎng)上的使用情況,介紹這兩種技術(shù)的重要編程方法和兩者之關(guān)的聯(lián)系,并完成一個(gè)基于這種技術(shù)的網(wǎng)上書(shū)店系統(tǒng)。

【關(guān)鍵字】JAVA,JavaBeans,Servlet,JSP,網(wǎng)絡(luò)編程,電子商務(wù),網(wǎng)上書(shū)店

Abstract

AtpresentJAVAisthehottestprogramminglanguageforWEBdevelopment,ThistextdescribedthecharacteristicsofJAVAandJSPtechnologyandthestateofoperatingonInternet,Itintroducedtherelationshipbetweenthemandtheimportantprogrammingmethodofthedoubletechnology,Andworkoutanonlinebookstoresystembaseonthiskindoftechnology.

Keywords:JAVA,JavaBeans,Servlet,JSP,webprogram,internet,bookshop

目錄

1、JAVA的網(wǎng)絡(luò)功能與編程

1-1JAVA語(yǔ)言簡(jiǎn)介

1-2JAVA語(yǔ)言在網(wǎng)絡(luò)上的應(yīng)用

1-3JSP的基礎(chǔ)——Servlet技術(shù)

1-4JavaBeans技術(shù)

2、JSP技術(shù)簡(jiǎn)介

2-1在Windows平臺(tái)下配置JSP運(yùn)行環(huán)境

2-2JSP、ASP和PHP技術(shù)之比較

2-3JSP語(yǔ)法基礎(chǔ)

2-3-1嵌入了JAVA語(yǔ)言的HTML文件

2-3-2request、out&response——與訪問(wèn)者的交互

2-3-3session——保持訪問(wèn)者的會(huì)話狀態(tài)

2-3-4JSP其它基本內(nèi)置對(duì)象

2-4用JSP開(kāi)發(fā)Web應(yīng)用的幾種主要方式

2-4-1直接使用JSP

2-4-2JSP+JavaBeans

2-4-3JSP+JavaBeans+Servlet

2-5JSP+JavaBeans實(shí)現(xiàn)的高級(jí)功能

2-5-1用JSP訪問(wèn)數(shù)據(jù)庫(kù)

2-5-2用JSP+JavaBeans實(shí)現(xiàn)文件上傳

2-6JSP的MVC開(kāi)發(fā)模型

3、網(wǎng)上書(shū)店系統(tǒng)設(shè)計(jì)項(xiàng)目需求分析

3-1網(wǎng)上書(shū)店系統(tǒng)的模型

3-2網(wǎng)上書(shū)店系統(tǒng)數(shù)據(jù)庫(kù)的建立

4、網(wǎng)上書(shū)店系統(tǒng)的開(kāi)發(fā)

4-1后臺(tái)管理

4-1-1管理員登錄

4-1-2圖書(shū)類別管理

4-1-3圖書(shū)產(chǎn)品管理

4-1-4注冊(cè)會(huì)員管理

4-1-5圖書(shū)訂購(gòu)管理

4-2網(wǎng)上書(shū)店界面

4-2-1圖書(shū)搜索

4-2-2查看圖書(shū)詳細(xì)

4-3網(wǎng)上購(gòu)物程序

4-3-1用戶注冊(cè)

4-3-2購(gòu)物籃的實(shí)現(xiàn)

5、總結(jié)

第一章JAVA的網(wǎng)絡(luò)功能與編程

1-1JAVA語(yǔ)言簡(jiǎn)介

Java是一種簡(jiǎn)單易用、完全面向?qū)ο?、具有平臺(tái)無(wú)關(guān)性且安全可靠的主要面向Internet的開(kāi)發(fā)工具。自從1995年正式問(wèn)世以來(lái),Java的快速發(fā)展已經(jīng)讓整個(gè)Web世界發(fā)生了翻天覆地的變化。在早期,Java比較多的用在瀏覽器上,插入到網(wǎng)頁(yè)中(即是JavaApplet程序),成為最靈活、最強(qiáng)大的網(wǎng)頁(yè)多媒體的載體,但由于Java虛擬機(jī)相對(duì)于個(gè)人電腦而言,有占用資源大,安全性相對(duì)較差等缺點(diǎn),Applet逐漸的被后起之秀Flash所替代,但隨著JavaServlet的推出,Java在電子商務(wù)方面開(kāi)始嶄露頭角,最新的JSP(JavaServerPage)技術(shù)的推出,更是讓Java成為基于Web的應(yīng)用程序的首選開(kāi)發(fā)工具,目前的Java技術(shù)已成為所有大型電子商務(wù)項(xiàng)目的必然選擇。

1-2JAVA語(yǔ)言在網(wǎng)絡(luò)上的應(yīng)用

Java程序可以獲取網(wǎng)絡(luò)上結(jié)點(diǎn)的圖象、聲音、HTML文檔及文本等資源,并可以對(duì)獲得的資源進(jìn)行處理。例如Java程序可以每隔一定時(shí)間讀取某結(jié)點(diǎn)提供的最新數(shù)據(jù),并以圖表的形式顯示出來(lái)。在編程處理上,一般先生成一個(gè)URL類型的對(duì)象,然后用Java中相應(yīng)的方法(method)獲取該對(duì)象所代表的資源。下面列舉一個(gè)Java從網(wǎng)絡(luò)上獲取圖象的的方法以說(shuō)明。

JavaApplet可以直接從網(wǎng)絡(luò)上結(jié)點(diǎn)獲取圖象并顯示出來(lái),Java提供了如下方法可以創(chuàng)建對(duì)應(yīng)于其他結(jié)點(diǎn)的圖象:

getImage(newURL(字符串))

其使用格式可有兩種:

Stringurl=“結(jié)點(diǎn)URL”;

Imageimage;

try{

image=getImage(newURL(url));

}

catch(Exceptione){

System.out.println(“Can’topentheURL“);

}

URLimgur=null;

Imageimage;

try{

imgur=newURL(“結(jié)點(diǎn)URL“);

}

catch(MalformedURLExceptione){

System.out.println(“Can’topentheURL“);

}

image=getImage(imgur);

前一種格式用“newURL(url)”生成URL對(duì)象,并直接作為getImage的參數(shù),后一種格式先用“newURL(url)”生成一個(gè)URL對(duì)象,再傳給getImage,兩種格式本質(zhì)上是一樣的,下面是一個(gè)完整的實(shí)例(img.java):

importjava.applet.*;

.*;

importjava.awt.*;

publicclassimgextendsApplet{

Imageimage;

publicvoidinit(){

Stringurl=“/Newspic/2007118/1429189039.gif”;

try{

image=getImage(newURL(url));

}catch(Exceptione){}

}

publicvoidpaint(Graphicsg){

g.drawImage(image,0,0,this);

}

}

將上程序以img.java存盤(pán),執(zhí)行javacimg.java,將得到編譯后生成的img.class,最后創(chuàng)建調(diào)用這兩個(gè)JavaApplet的HTML文檔,并放在與img.class相同的目錄,對(duì)應(yīng)的HTML文檔可如下(img.html):

以上僅是Java在客戶端應(yīng)用的一些方面,目前,Java更廣泛的應(yīng)用是在服務(wù)器端,這是本文研究的主要話題,下文提及的Servlet、JSP等技術(shù)都是Java在服務(wù)器端應(yīng)用的具體形式。1-3JSP的基礎(chǔ)——Servlet技術(shù)JavaServlet是JSP技術(shù)的基礎(chǔ),JSP本身就是預(yù)先被編譯成Servlet,然后再運(yùn)行的,而且大型的Web應(yīng)用程序的開(kāi)發(fā)需要JavaServlet和JSP配合才能完成,Servlet這個(gè)名稱大概源于Applet,現(xiàn)在國(guó)內(nèi)的翻譯方式很多,本文為了避免誤會(huì),本文直接采用Servlet這個(gè)名稱而不做任何翻譯,讀者如果愿意,可以稱之為“小服務(wù)程序”。Servlet其實(shí)和傳統(tǒng)的CGI程序和ISAPI、NSAPI等Web程序開(kāi)發(fā)工具的作用是相同的,在使用JavaServlet以后,用戶不必再使用效率低下的CGI方式,也不必使用只能在某個(gè)固定Web服務(wù)器平臺(tái)運(yùn)行的API方式來(lái)動(dòng)態(tài)生成Web頁(yè)面。許多Web服務(wù)器都支持Servlet,即使不直接支持Servlet的Web服務(wù)器也可以通過(guò)附加的應(yīng)用服務(wù)器和模塊來(lái)支持Servlet。得益于Java的跨平臺(tái)的特性,Servlet也是平臺(tái)無(wú)關(guān)的,實(shí)際上,只要符合JavaServlet規(guī)范,Servlet是完全平臺(tái)無(wú)關(guān)且是Web服務(wù)器無(wú)關(guān)的。由于JavaServlet內(nèi)部是以線程方式提供服務(wù),不必對(duì)于每個(gè)請(qǐng)求都啟動(dòng)一個(gè)進(jìn)程,并且利用多線程機(jī)制可以同時(shí)為多個(gè)請(qǐng)求服務(wù),因此JavaServlet效率非常高。但JavaServlet也不是沒(méi)有缺點(diǎn),和傳統(tǒng)的CGI、ISAPI、NSAPI方式相同,JavaServlet是利用輸出HTML語(yǔ)句來(lái)實(shí)現(xiàn)動(dòng)態(tài)網(wǎng)頁(yè)的,如果用JavaServlet來(lái)開(kāi)發(fā)整個(gè)網(wǎng)站,動(dòng)態(tài)部分和靜態(tài)頁(yè)面的整合過(guò)程簡(jiǎn)直就是一場(chǎng)噩夢(mèng)。這就是為什么SUN還要推出JavaServerPages的原因。

1-4JavaBeans技術(shù)

什么是JavaBeans?JavaBeans就是Java的可重用組件技術(shù)。ASP通過(guò)COM來(lái)擴(kuò)充復(fù)雜的功能,如文件上載、發(fā)送email以及將業(yè)務(wù)處理或復(fù)雜計(jì)算分離出來(lái)成為獨(dú)立可重復(fù)利用的模塊。JSP通過(guò)JavaBeans實(shí)現(xiàn)了同樣的功能擴(kuò)充。JSP對(duì)于在Web應(yīng)用中集成JavaBeans組件提供了完善的支持。這種支持不僅能縮短開(kāi)發(fā)時(shí)間(可以直接利用經(jīng)測(cè)試和可信任的已有組件,避免了重復(fù)開(kāi)發(fā)),也為JSP應(yīng)用帶來(lái)了更多的可伸縮性。JavaBeans組件可以用來(lái)執(zhí)行復(fù)雜的計(jì)算任務(wù),或負(fù)責(zé)與數(shù)據(jù)庫(kù)的交互以及數(shù)據(jù)提取等。在實(shí)際的JSP開(kāi)發(fā)過(guò)程中,讀者將會(huì)發(fā)現(xiàn),和傳統(tǒng)的ASP或PHP頁(yè)面相比,JSP頁(yè)面將會(huì)是非常簡(jiǎn)潔的,由于JavaBeans開(kāi)發(fā)起來(lái)簡(jiǎn)單,又可以利用Java語(yǔ)言的強(qiáng)大功能,許多動(dòng)態(tài)頁(yè)面處理過(guò)程實(shí)際上被封裝到了JavaBeans中。

第二章JSP技術(shù)簡(jiǎn)介

2-1在Windows平臺(tái)下配置JSP運(yùn)行環(huán)境

為了使系統(tǒng)能夠正常運(yùn)行JSP和相關(guān)程序,必須先配置好能夠使用JSP的WEB服務(wù)器。各種能使用Servlet技術(shù)的WEB服務(wù)器中,運(yùn)用得最多的是Tomcat服務(wù)器,如果僅是為了用于測(cè)試程序,Tomcat的配置則顯得太復(fù)雜了,本文推薦使用Resin服務(wù)器,Resin據(jù)稱是最快的Servlet運(yùn)行平臺(tái),不過(guò)限于單站點(diǎn),對(duì)傳統(tǒng)的一些網(wǎng)關(guān)支持不是很好,因此對(duì)于商業(yè)網(wǎng)站而言,不是最好的選擇,不過(guò)如果僅是為了測(cè)試Servlet,這個(gè)Resin的安裝可謂有點(diǎn)傻瓜化。

Resin比較新的版本是3.x,但目前實(shí)際用的2.x版本的比較多,Resin可到官方站點(diǎn)下載:/download/本文使用的是2.1.13版本,文件位置:/download/resin-2.1.13.zip

如果你的電腦上已裝好JDK,直接把下載的resin包解壓到D:盤(pán)根目錄解壓后即D:\resin-2.1.13為服務(wù)器的目錄,把本文的源程序jspweb文件夾也放在D:盤(pán)根目錄,即是D:\jspweb為網(wǎng)站根目錄,打開(kāi)D:\resin-2.1.13\conf\resin.conf(是一份XML形式的配置文件),找到doc這里改為D:\jspweb,然后運(yùn)行D:\resin-2.1.13\bin\httpd.exe,在瀏覽器輸入localhost:8080/j1.jsp,看到了“我是JSP!”的字樣了吧,你的Servlet服務(wù)器就這樣配置成功了,為了能編譯Servlet類,還需要做的事情是:把D:\resin-2.1.13\lib加入到windows的CLASSPATH的環(huán)境變量中。

2-2JSP、ASP和PHP技術(shù)之比較

JSP與ASP、PHP技術(shù)都是目前網(wǎng)上最流行的在服務(wù)器端運(yùn)行的腳本技術(shù),JSP能用JavaBeans技術(shù)封裝,達(dá)到商業(yè)邏輯的目的,ASP對(duì)應(yīng)之的是COM組件,因此兩者都能用于開(kāi)發(fā)商業(yè)邏輯,PHP則更像于一個(gè)純腳本,僅適合于普通的網(wǎng)站開(kāi)發(fā),而不能用作商業(yè)邏輯而被冠以“PersonHomePage”的名稱,這是最貼切不過(guò)的了。

JSP與ASP相比,JSP具有跨平臺(tái)、安全、強(qiáng)大的可伸縮性的特點(diǎn),而果硬要挑一些毛病,JSP相對(duì)別的腳本更加難掌握,因?yàn)榫↗SP必須精通Java語(yǔ)言,對(duì)于中小型項(xiàng)目,我們要考慮開(kāi)發(fā)人員、開(kāi)發(fā)速度、開(kāi)發(fā)成本等問(wèn)題,在這方面ASP和PHP會(huì)比JSP更容易勝出。

值得一提的是,ASP的最新版本與原來(lái)的ASP性質(zhì)完全是不同的,它和JSP一樣,都是一種編譯性的腳本,本身完全與強(qiáng)大的Net框架結(jié)合,完美的支持Xml的各種應(yīng)用,與昔日的ASP不可同日而語(yǔ),但是無(wú)論是ASP還是,它都擺脫不了Windows平臺(tái)本身,這是ASP一個(gè)致命的缺點(diǎn)。

2-3JSP語(yǔ)法基礎(chǔ)

2-3-1嵌入了JAVA語(yǔ)言的HTML文件

把下面網(wǎng)頁(yè)保存為:j1.jsp

這就成了一個(gè)最簡(jiǎn)單的JSP頁(yè)面了,其中是聲明輸出的文件類型為text/html,字符編碼是gb2312,在JSP中里的內(nèi)容表示的是JSP編譯時(shí)的一些選項(xiàng)或向客戶端發(fā)送的頭信息的JSP指令,里的內(nèi)容就是Java語(yǔ)言,如果有必要,更改適當(dāng)設(shè)定,還可以使用javascript作為腳本,不過(guò)實(shí)際應(yīng)用中很少有人這樣做。

2-3-2request、out&response--與訪問(wèn)者的交互

接收客戶端的請(qǐng)求和向客戶端返回信息是動(dòng)態(tài)網(wǎng)頁(yè)最常做的事情,在JSP中,主要通過(guò)request、response、out三大對(duì)象實(shí)現(xiàn)這些功能。

request對(duì)象的作用是接收用戶通過(guò)URL或通過(guò)表單向發(fā)服務(wù)器發(fā)送請(qǐng)求信息和與用戶計(jì)算機(jī)相關(guān)的一些信息。

response對(duì)象用于網(wǎng)頁(yè)傳回用戶端的回應(yīng)。

out用于傳送回應(yīng)的輸出,即向客戶端返回信息。

把上面的例子稍作修改:

保存為j2.jsp在瀏覽器上輸入:“l(fā)ocalhost:8080/j1.jps?msg=我是JSP”看一下效果,這和j1.jsp的結(jié)果一樣吧?但它輸出的是客戶端返回的信息,這在意義上完全不同于前者。

2-3-3session--保持訪問(wèn)者的會(huì)話狀態(tài)

會(huì)話狀態(tài)維持是Web應(yīng)用開(kāi)發(fā)者必須面對(duì)的問(wèn)題。有多種方法可以用來(lái)解決這個(gè)問(wèn)題,如使用Cookies、隱藏的表單輸入域,或直接將狀態(tài)信息附加到URL中。JavaServlet提供了一個(gè)在多個(gè)請(qǐng)求之間持續(xù)有效的會(huì)話對(duì)象,該對(duì)象允許用戶存儲(chǔ)和提取會(huì)話狀態(tài)信息,JSP也內(nèi)置了這個(gè)對(duì)象。

Session最基本的用法是:

創(chuàng)建一個(gè)會(huì)話session.putValue("名稱","值");

獲得一個(gè)會(huì)話的值session.getValue("名稱");

2-3-4JSP其它基本內(nèi)置對(duì)象

JSP有九大內(nèi)置對(duì)象,除了上述四種以外,還包括:

pageContext網(wǎng)頁(yè)的屬性是在這里管理

applicationServlet正在執(zhí)行的內(nèi)容

configServlet的構(gòu)架部件

pageJSP網(wǎng)頁(yè)本身

exception針對(duì)錯(cuò)誤網(wǎng)頁(yè),未捕捉的例外

這些基本的內(nèi)置對(duì)象是構(gòu)成JSP頁(yè)面的重要因子。

2-4用JSP開(kāi)發(fā)Web應(yīng)用的幾種主要方式

本文是收費(fèi)論文,字?jǐn)?shù)大于8000,含源碼,價(jià)格為:300元,請(qǐng)聯(lián)系QQ:2500875索取全文。

總結(jié)

本文講述了Java/JSP在WEB應(yīng)用的一些基本知識(shí),并通過(guò)網(wǎng)上書(shū)店的程序?qū)SP的運(yùn)用進(jìn)行了深化,從本文中可看出JSP與JavaBeans結(jié)合的模式,在電子商務(wù)上應(yīng)用十分靈活,不過(guò)要真正掌握好它們卻并不是一件容易的事情,在實(shí)際應(yīng)用的WEB開(kāi)發(fā)中,還有很多關(guān)于安全方面的問(wèn)題需要考慮,此外電子商務(wù)網(wǎng)站中使用網(wǎng)上支付平臺(tái)的接口一般是用xmlserver形式通信,本文則尚未涉略這些方面。

參考資料:

(1)JSP編程技巧/清宏計(jì)算機(jī)工作室編著.北京:機(jī)械工業(yè)出版社,2001.1

(2)精通JBuilder3環(huán)境下的JAVA編程/銳思創(chuàng)作室編著.北京:人民郵電出版社.,2001.1

(3)深入JAVAServlet網(wǎng)絡(luò)編程.清華大學(xué)出版社