JAVA/JSP網(wǎng)上書店建設(shè)論文
時間:2022-03-13 04:20:00
導(dǎo)語:JAVA/JSP網(wǎng)上書店建設(shè)論文一文來源于網(wǎng)友上傳,不代表本站觀點(diǎn),若需要原創(chuàng)文章可咨詢客服老師,歡迎參考。
【摘要】
java語言是目前Internet上大型的WEB應(yīng)用程序開發(fā)時使用得最熱門的編程語言,本文描述了JAVA和jsp技術(shù)的特點(diǎn)以及在互聯(lián)網(wǎng)上的使用情況,介紹這兩種技術(shù)的重要編程方法和兩者之關(guān)的聯(lián)系,并完成一個基于這種技術(shù)的網(wǎng)上書店系統(tǒng)。
【關(guān)鍵字】JAVA,JavaBeans,Servlet,JSP,網(wǎng)絡(luò)編程,電子商務(wù),網(wǎng)上書店
Abstract
AtpresentJAVAisthehottestprogramminglanguageforWEBdevelopment,ThistextdescribedthecharacteristicsofJAVAandJSPtechnologyandthestateofoperatingonInternet,Itintroducedtherelationshipbetweenthemandtheimportantprogrammingmethodofthedoubletechnology,Andworkoutanonlinebookstoresystembaseonthiskindoftechnology.
Keywords:JAVA,JavaBeans,Servlet,JSP,webprogram,internet,bookshop
目錄
1、JAVA的網(wǎng)絡(luò)功能與編程
1-1JAVA語言簡介
1-2JAVA語言在網(wǎng)絡(luò)上的應(yīng)用
1-3JSP的基礎(chǔ)——Servlet技術(shù)
1-4JavaBeans技術(shù)
2、JSP技術(shù)簡介
2-1在Windows平臺下配置JSP運(yùn)行環(huán)境
2-2JSP、ASP和PHP技術(shù)之比較
2-3JSP語法基礎(chǔ)
2-3-1嵌入了JAVA語言的HTML文件
2-3-2request、out&response——與訪問者的交互
2-3-3session——保持訪問者的會話狀態(tài)
2-3-4JSP其它基本內(nèi)置對象
2-4用JSP開發(fā)Web應(yīng)用的幾種主要方式
2-4-1直接使用JSP
2-4-2JSP+JavaBeans
2-4-3JSP+JavaBeans+Servlet
2-5JSP+JavaBeans實現(xiàn)的高級功能
2-5-1用JSP訪問數(shù)據(jù)庫
2-5-2用JSP+JavaBeans實現(xiàn)文件上傳
2-6JSP的MVC開發(fā)模型
3、網(wǎng)上書店系統(tǒng)設(shè)計項目需求分析
3-1網(wǎng)上書店系統(tǒng)的模型
3-2網(wǎng)上書店系統(tǒng)數(shù)據(jù)庫的建立
4、網(wǎng)上書店系統(tǒng)的開發(fā)
4-1后臺管理
4-1-1管理員登錄
4-1-2圖書類別管理
4-1-3圖書產(chǎn)品管理
4-1-4注冊會員管理
4-1-5圖書訂購管理
4-2網(wǎng)上書店界面
4-2-1圖書搜索
4-2-2查看圖書詳細(xì)
4-3網(wǎng)上購物程序
4-3-1用戶注冊
4-3-2購物籃的實現(xiàn)
5、總結(jié)
第一章JAVA的網(wǎng)絡(luò)功能與編程
1-1JAVA語言簡介
Java是一種簡單易用、完全面向?qū)ο?、具有平臺無關(guān)性且安全可靠的主要面向Internet的開發(fā)工具。自從1995年正式問世以來,Java的快速發(fā)展已經(jīng)讓整個Web世界發(fā)生了翻天覆地的變化。在早期,Java比較多的用在瀏覽器上,插入到網(wǎng)頁中(即是JavaApplet程序),成為最靈活、最強(qiáng)大的網(wǎng)頁多媒體的載體,但由于Java虛擬機(jī)相對于個人電腦而言,有占用資源大,安全性相對較差等缺點(diǎn),Applet逐漸的被后起之秀Flash所替代,但隨著JavaServlet的推出,Java在電子商務(wù)方面開始嶄露頭角,最新的JSP(JavaServerPage)技術(shù)的推出,更是讓Java成為基于Web的應(yīng)用程序的首選開發(fā)工具,目前的Java技術(shù)已成為所有大型電子商務(wù)項目的必然選擇。
1-2JAVA語言在網(wǎng)絡(luò)上的應(yīng)用
Java程序可以獲取網(wǎng)絡(luò)上結(jié)點(diǎn)的圖象、聲音、HTML文檔及文本等資源,并可以對獲得的資源進(jìn)行處理。例如Java程序可以每隔一定時間讀取某結(jié)點(diǎn)提供的最新數(shù)據(jù),并以圖表的形式顯示出來。在編程處理上,一般先生成一個URL類型的對象,然后用Java中相應(yīng)的方法(method)獲取該對象所代表的資源。下面列舉一個Java從網(wǎng)絡(luò)上獲取圖象的的方法以說明。
JavaApplet可以直接從網(wǎng)絡(luò)上結(jié)點(diǎn)獲取圖象并顯示出來,Java提供了如下方法可以創(chuàng)建對應(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對象,并直接作為getImage的參數(shù),后一種格式先用“newURL(url)”生成一個URL對象,再傳給getImage,兩種格式本質(zhì)上是一樣的,下面是一個完整的實例(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存盤,執(zhí)行javacimg.java,將得到編譯后生成的img.class,最后創(chuàng)建調(diào)用這兩個JavaApplet的HTML文檔,并放在與img.class相同的目錄,對應(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)用程序的開發(fā)需要JavaServlet和JSP配合才能完成,Servlet這個名稱大概源于Applet,現(xiàn)在國內(nèi)的翻譯方式很多,本文為了避免誤會,本文直接采用Servlet這個名稱而不做任何翻譯,讀者如果愿意,可以稱之為“小服務(wù)程序”。Servlet其實和傳統(tǒng)的CGI程序和ISAPI、NSAPI等Web程序開發(fā)工具的作用是相同的,在使用JavaServlet以后,用戶不必再使用效率低下的CGI方式,也不必使用只能在某個固定Web服務(wù)器平臺運(yùn)行的API方式來動態(tài)生成Web頁面。許多Web服務(wù)器都支持Servlet,即使不直接支持Servlet的Web服務(wù)器也可以通過附加的應(yīng)用服務(wù)器和模塊來支持Servlet。得益于Java的跨平臺的特性,Servlet也是平臺無關(guān)的,實際上,只要符合JavaServlet規(guī)范,Servlet是完全平臺無關(guān)且是Web服務(wù)器無關(guān)的。由于JavaServlet內(nèi)部是以線程方式提供服務(wù),不必對于每個請求都啟動一個進(jìn)程,并且利用多線程機(jī)制可以同時為多個請求服務(wù),因此JavaServlet效率非常高。但JavaServlet也不是沒有缺點(diǎn),和傳統(tǒng)的CGI、ISAPI、NSAPI方式相同,JavaServlet是利用輸出HTML語句來實現(xiàn)動態(tài)網(wǎng)頁的,如果用JavaServlet來開發(fā)整個網(wǎng)站,動態(tài)部分和靜態(tài)頁面的整合過程簡直就是一場噩夢。這就是為什么SUN還要推出JavaServerPages的原因。
1-4JavaBeans技術(shù)
什么是JavaBeans?JavaBeans就是Java的可重用組件技術(shù)。ASP通過COM來擴(kuò)充復(fù)雜的功能,如文件上載、發(fā)送email以及將業(yè)務(wù)處理或復(fù)雜計算分離出來成為獨(dú)立可重復(fù)利用的模塊。JSP通過JavaBeans實現(xiàn)了同樣的功能擴(kuò)充。JSP對于在Web應(yīng)用中集成JavaBeans組件提供了完善的支持。這種支持不僅能縮短開發(fā)時間(可以直接利用經(jīng)測試和可信任的已有組件,避免了重復(fù)開發(fā)),也為JSP應(yīng)用帶來了更多的可伸縮性。JavaBeans組件可以用來執(zhí)行復(fù)雜的計算任務(wù),或負(fù)責(zé)與數(shù)據(jù)庫的交互以及數(shù)據(jù)提取等。在實際的JSP開發(fā)過程中,讀者將會發(fā)現(xiàn),和傳統(tǒng)的ASP或PHP頁面相比,JSP頁面將會是非常簡潔的,由于JavaBeans開發(fā)起來簡單,又可以利用Java語言的強(qiáng)大功能,許多動態(tài)頁面處理過程實際上被封裝到了JavaBeans中。
第二章JSP技術(shù)簡介
2-1在Windows平臺下配置JSP運(yùn)行環(huán)境
為了使系統(tǒng)能夠正常運(yùn)行JSP和相關(guān)程序,必須先配置好能夠使用JSP的WEB服務(wù)器。各種能使用Servlet技術(shù)的WEB服務(wù)器中,運(yùn)用得最多的是Tomcat服務(wù)器,如果僅是為了用于測試程序,Tomcat的配置則顯得太復(fù)雜了,本文推薦使用Resin服務(wù)器,Resin據(jù)稱是最快的Servlet運(yùn)行平臺,不過限于單站點(diǎn),對傳統(tǒng)的一些網(wǎng)關(guān)支持不是很好,因此對于商業(yè)網(wǎng)站而言,不是最好的選擇,不過如果僅是為了測試Servlet,這個Resin的安裝可謂有點(diǎn)傻瓜化。
Resin比較新的版本是3.x,但目前實際用的2.x版本的比較多,Resin可到官方站點(diǎn)下載:/download/本文使用的是2.1.13版本,文件位置:/download/resin-2.1.13.zip
如果你的電腦上已裝好JDK,直接把下載的resin包解壓到D:盤根目錄解壓后即D:\resin-2.1.13為服務(wù)器的目錄,把本文的源程序jspweb文件夾也放在D:盤根目錄,即是D:\jspweb為網(wǎng)站根目錄,打開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對應(yīng)之的是COM組件,因此兩者都能用于開發(fā)商業(yè)邏輯,PHP則更像于一個純腳本,僅適合于普通的網(wǎng)站開發(fā),而不能用作商業(yè)邏輯而被冠以“PersonHomePage”的名稱,這是最貼切不過的了。
JSP與ASP相比,JSP具有跨平臺、安全、強(qiáng)大的可伸縮性的特點(diǎn),而果硬要挑一些毛病,JSP相對別的腳本更加難掌握,因為精通JSP必須精通Java語言,對于中小型項目,我們要考慮開發(fā)人員、開發(fā)速度、開發(fā)成本等問題,在這方面ASP和PHP會比JSP更容易勝出。
值得一提的是,ASP的最新版本與原來的ASP性質(zhì)完全是不同的,它和JSP一樣,都是一種編譯性的腳本,本身完全與強(qiáng)大的Net框架結(jié)合,完美的支持Xml的各種應(yīng)用,與昔日的ASP不可同日而語,但是無論是ASP還是,它都擺脫不了Windows平臺本身,這是ASP一個致命的缺點(diǎn)。
2-3JSP語法基礎(chǔ)
2-3-1嵌入了JAVA語言的HTML文件
把下面網(wǎng)頁保存為:j1.jsp
這就成了一個最簡單的JSP頁面了,其中是聲明輸出的文件類型為text/html,字符編碼是gb2312,在JSP中里的內(nèi)容表示的是JSP編譯時的一些選項或向客戶端發(fā)送的頭信息的JSP指令,里的內(nèi)容就是Java語言,如果有必要,更改適當(dāng)設(shè)定,還可以使用javascript作為腳本,不過實際應(yīng)用中很少有人這樣做。
2-3-2request、out&response--與訪問者的交互
接收客戶端的請求和向客戶端返回信息是動態(tài)網(wǎng)頁最常做的事情,在JSP中,主要通過request、response、out三大對象實現(xiàn)這些功能。
request對象的作用是接收用戶通過URL或通過表單向發(fā)服務(wù)器發(fā)送請求信息和與用戶計算機(jī)相關(guān)的一些信息。
response對象用于網(wǎng)頁傳回用戶端的回應(yīng)。
out用于傳送回應(yīng)的輸出,即向客戶端返回信息。
把上面的例子稍作修改:
保存為j2.jsp在瀏覽器上輸入:“l(fā)ocalhost:8080/j1.jps?msg=我是JSP”看一下效果,這和j1.jsp的結(jié)果一樣吧?但它輸出的是客戶端返回的信息,這在意義上完全不同于前者。
2-3-3session--保持訪問者的會話狀態(tài)
會話狀態(tài)維持是Web應(yīng)用開發(fā)者必須面對的問題。有多種方法可以用來解決這個問題,如使用Cookies、隱藏的表單輸入域,或直接將狀態(tài)信息附加到URL中。JavaServlet提供了一個在多個請求之間持續(xù)有效的會話對象,該對象允許用戶存儲和提取會話狀態(tài)信息,JSP也內(nèi)置了這個對象。
Session最基本的用法是:
創(chuàng)建一個會話session.putValue("名稱","值");
獲得一個會話的值session.getValue("名稱");
2-3-4JSP其它基本內(nèi)置對象
JSP有九大內(nèi)置對象,除了上述四種以外,還包括:
pageContext網(wǎng)頁的屬性是在這里管理
applicationServlet正在執(zhí)行的內(nèi)容
configServlet的構(gòu)架部件
pageJSP網(wǎng)頁本身
exception針對錯誤網(wǎng)頁,未捕捉的例外
這些基本的內(nèi)置對象是構(gòu)成JSP頁面的重要因子。
2-4用JSP開發(fā)Web應(yīng)用的幾種主要方式
本文是收費(fèi)論文,字?jǐn)?shù)大于8000,含源碼,價格為:300元,請聯(lián)系QQ:2500875索取全文。
總結(jié)
本文講述了Java/JSP在WEB應(yīng)用的一些基本知識,并通過網(wǎng)上書店的程序?qū)SP的運(yùn)用進(jìn)行了深化,從本文中可看出JSP與JavaBeans結(jié)合的模式,在電子商務(wù)上應(yīng)用十分靈活,不過要真正掌握好它們卻并不是一件容易的事情,在實際應(yīng)用的WEB開發(fā)中,還有很多關(guān)于安全方面的問題需要考慮,此外電子商務(wù)網(wǎng)站中使用網(wǎng)上支付平臺的接口一般是用xmlserver形式通信,本文則尚未涉略這些方面。
參考資料:
(1)JSP編程技巧/清宏計算機(jī)工作室編著.北京:機(jī)械工業(yè)出版社,2001.1
(2)精通JBuilder3環(huán)境下的JAVA編程/銳思創(chuàng)作室編著.北京:人民郵電出版社.,2001.1
(3)深入JAVAServlet網(wǎng)絡(luò)編程.清華大學(xué)出版社