基于java平臺的校園圖書交易網站的設計與實現【文獻綜述】_第1頁
已閱讀1頁,還剩8頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、<p><b>  畢業(yè)設計文獻綜述</b></p><p><b>  計算機科學與技術</b></p><p>  基于Java平臺的校園圖書交易網站的設計與實現 </p><p>  摘要:20世紀末,隨著計算機科學的發(fā)展,WEB技術在Internet中的應用越來越廣泛,為廣大網絡用戶提供了更加周到和人性化

2、的服務。網上書店在我國剛剛起步,但發(fā)展很快。隨著我國互聯(lián)網的更加普及和網上書店的更趨成熟,會有越來越大的消費群體,市場潛力會得到充分發(fā)揮。本網站希望通過構建一個J2EE架構的電子商務網站,利用日益繁榮的互聯(lián)網,為傳統(tǒng)的書店打造一個新的銷售平臺。</p><p>  關鍵詞:JSP, JavaScript, Mysql, UML, 連接池, 圖書交易, Tomcat, Struts Spring, Hiberna

3、te, 框架</p><p>  Abstract:The 20th century late, with the development of computer science, WEB Internet application technology in more and more widely, for the majority of Internet users with a more thoughtfu

4、l and human services. Online bookstore in China has just started, but growing fast. With the more popular of the Internet and online bookstores have become more mature, there will be more and more consumer groups, the ma

5、rket potential will be fully realized. This site hopes to build a J2EE-based e-commerce s</p><p>  Key Words:JSP, JavaScript, Mysql, UML, Connection pool, Book Exchange, Tomcat, Struts Spring, Hibernate,

6、Framework</p><p><b>  1. 引言</b></p><p>  網上書店售書系統(tǒng)的開發(fā)是一項復雜的系統(tǒng)工程。為了保證系統(tǒng)開發(fā)成功,必須采用工程化的系統(tǒng)開發(fā)方法,并研究出一些符合工程化標準的開發(fā)方法。這些方法旨在指導開發(fā)者進行工程化的系統(tǒng)開發(fā),從而加快系統(tǒng)開發(fā)的速度,保證質量以及降低開發(fā)成本。工程化的系統(tǒng)開發(fā)方法確實在開發(fā)實踐中取得了一定的效果。

7、此次開發(fā)使用JSP作為開發(fā)語言,采用Servlet技術,Tomcat5.0作為Web服務器。</p><p>  2. 網站開發(fā)技術現狀</p><p>  現在的圖書交易網站一般都采用.net平臺開發(fā),而.net平臺并不是開源的技術,需要支付一些費用。而且用.net開發(fā)移植性不好。所以,本網站開發(fā)使用java平臺開發(fā)技術,移植性比較好。而且采用的都是一些開源技術,無需支付費用,可以節(jié)省一

8、部分開支。</p><p>  3. 網站開發(fā)的關鍵技術</p><p>  本節(jié)主要介紹主要的網站開發(fā)技術,它們主要包括:JSP技術、MySql數據庫系統(tǒng)、Tomcat技術等。網絡開發(fā)的主要技術包括:</p><p>  3.1 B/S結構 </p><p>  B/S結構,即Browser/Server(瀏覽器/服務器)結構,是隨著In

9、ternet技術的興起,對C/S結構的一種變化或者說是改進的結構。用戶界面完全通過瀏覽器實現,一部分事務邏輯在前端實現,但是主要事務邏輯在服務器端實現,形成三層結構,是一種全新的軟件系統(tǒng)構造技術。這種結構的一個重要的特點是,用戶可以完全不需要安裝客戶端軟件,當然也不需要擔心任何軟件升級和不兼容等任何客戶端所遇到的問題。 相比之下,B/S模型的優(yōu)點顯而易見,更適合這個網站的構建,有利于網站的維護和擴充。</p><p&

10、gt;  3.2 JSP技術</p><p>  Web技術的迅猛發(fā)展正推動Internet上信息服務類的進步。WWW服務的基礎是HTML語言。這個系統(tǒng)模塊中用到的JSP技術是在HTML語言的基礎上使用腳本語言對網頁的對象模型進行編程。JSP全稱Java Server Pages,它是由Sun Microsystems公司提出、許多公司參與建立的一種動態(tài)網頁技術標準。它誕生在1999年6月1日。目前國內外已經在

11、廣泛地使用JSP。隨著JAVA語言得到普及,越來越多的公司開始關注JSP的前景。 </p><p>  傳統(tǒng)的動態(tài)網頁制作包括CGI、ASP、JSP三種,而JSP具有明顯的優(yōu)勢。使用CGI-BINJ接口是一個最早的動態(tài)WEB頁面問題的解決方案。缺點,CGI程序必須從CGI接口讀入一長串的字符串,再從字符串中取得所需要的數據并加以處理。過程十分繁瑣。另一個缺點, 除了Perl是解釋語言外,其他都是編譯式的語言。每次

12、修改后,都必須重新編譯一次,這給開發(fā)人員帶來麻煩,增加了工作量。ASP和 JSP都能取代CGI使網站建設和發(fā)展變得簡單快捷。盡管JSP技術和ASP在許多方面都有相似的,但仍然存在很多不同之處,其中最本 質上的區(qū)別在于:兩者是來源于不同的技術規(guī)范組織,其實現的基礎,WEB服務器平臺要求不相同。 </p><p>  作為Java平臺的一部分,JSP擁有Java編程語言“一次編寫,各處運行”的特點。一次寫入,之后,可

13、以運行在任何具有符合Java語法結構的環(huán)境。取代之過去單一平臺開發(fā)。 ASP主要工作環(huán)境是微軟的IIS應用程序結構,又因Activex對象具有平臺特性,所以ASP技術不能很容易地實現在跨平臺的WEB服務器的工作。 </p><p>  從開發(fā)人員的角度來看其區(qū)別在于:ASP僅支持組件對象模型COM,而JSP技術提供的組件都是基于Javabean技術或JSP標簽庫。 </p><p>  J

14、SP標簽可擴充性。JSP技術能夠使用開發(fā)者擴展JSP標簽,JSP開發(fā)者能定制標簽庫,減少對腳本語言的依賴 </p><p>  生成可重用的組件。JSP基于組件的技術方法加速了總體開發(fā)過程。 JSP組件(Javabean,或定制的JSP標簽)是跨平臺可重用的。Javabean組件可以訪問數據庫,并能以分布式系統(tǒng)模式工作于UNIX和WINDOWS平臺。 </p><p>  易于維護性。 基

15、于JSP技術的應用程序比基于ASP的應用程序易于維護和管理。JSP突出的組件技術使修改內容而不影響邏輯或修改邏輯而不影響內容變得很容易實現。 </p><p>  如上的比較不難看出,JSP技術編寫的程序運用要更加靈活,可擴展性更強,在現有技術條件下,能夠完成功能目的。</p><p>  3.3 MySQL數據庫系統(tǒng)</p><p>  MySQL名字的來歷My

16、SQL是一個小型關系型數據庫管理系統(tǒng),開發(fā)者為瑞典MySQLAB公司,在2008年1月16號被Sun公司收購。MySQL被廣泛地應用在Internet上的中小型網站中。由于其體積小、速度快、總體擁有成本低,尤其是開放源碼這一特點,許多中小型網站為了降低網站總體擁有成本而選擇了MySQL作為網站數據庫。 MySQL最初的開發(fā)者的意圖是用mSQL和他們自己的快速低級例程(ISAM)去連接表格。不管怎樣,在經過一些測試后,開發(fā)者得出結論:m

17、SQL并沒有他們需要的那么快和靈活。這導致了一個使用幾乎和mSQL一樣的API接口的用于他們的數據庫的新的SQL接口的產生,這樣,這個API被設計成允許為用于mSQL而寫的第三方代碼更容易移到MySQL。</p><p>  3.4 Tomcat服務器</p><p>  Tomcat是Apache 軟件基金會(Apache Software Foundation)的Jakarta 項目

18、中的一個核心項目,由Apache、Sun 和其他一些公司及個人共同開發(fā)而成。由于有了Sun 的參與和支持,最新的Servlet 和JSP 規(guī)范總是能在Tomcat 中得到體現,Tomcat 5 支持最新的Servlet 2.4 和JSP 2.0 規(guī)范。因為Tomcat 技術先進、性能穩(wěn)定,而且免費,因而深受Java 愛好者的喜愛并得到了部分軟件開發(fā)商的認可,成為目前比較流行的Web 應用服務器。目前最新版本是6.0。</p>

19、<p>  Tomcat 很受廣大程序員的喜歡,因為它運行時占用的系統(tǒng)資源小,擴展性好,支持負載平衡與郵件服務等開發(fā)應用系統(tǒng)常用的功能;而且它還在不斷的改進和完善中,任何一個感興趣的程序員都可以更改它或在其中加入新的功能。 </p><p>  Tomcat 是一個小型的輕量級應用服務器,在中小型系統(tǒng)和并發(fā)訪問用戶不是很多的場合下被普遍使用,是開發(fā)和調試JSP 程序的首選。對于一個初學者來說,可以這

20、樣認為,當在一臺機器上配置好Apache 服務器,可利用它響應對HTML 頁面的訪問請求。實際上Tomcat 部分是Apache 服務器的擴展,但它是獨立運行的,所以當你運行tomcat 時,它實際上作為一個與Apache 獨立的進程單獨運行的。 </p><p>  這里的訣竅是,當配置正確時,Apache 為HTML頁面服務,而Tomcat 實際上運行JSP 頁面和Servlet。另外,Tomcat和IIS、

21、Apache等Web服務器一樣,具有處理HTML頁面的功能,另外它還是一個Servlet和JSP容器,獨立的Servlet容器是Tomcat的默認模式。不過,Tomcat處理靜態(tài)HTML的能力不如Apache服務器。</p><p>  3.5 Struts框架技術</p><p>  Struts是開源軟件。使用Struts的目的是為了幫助我們減少在運用MVC設計模型來開發(fā)Web應用的

22、時間。如果我們想混合使用Servlets和JSP的優(yōu)點來建立可擴展的應用,struts是一個不錯的選擇。</p><p>  Struts對Model,View和Controller都提供了對應的組件。 </p><p>  ActionServlet類是Struts的核心控制器,負責攔截來自用戶的請求。 Action,這個類通常由用戶提供,該控制器負責接收來自ActionServlet的

23、請求,并根據該請求調用模型的業(yè)務邏輯方法處理請求,并將處理結果返回給JSP頁面顯示。 </p><p><b>  1)Model部分</b></p><p>  由JavaBean組成,ActionForm用于封裝用戶的請求參數,封裝成ActionForm對象,該對象被ActionServlet轉發(fā)給Action,Action根據ActionFrom里面的請求參數處

24、理用戶的請求。 JavaBean則封裝了底層的業(yè)務邏輯,包括數據庫訪問等。 </p><p><b>  2)View部分</b></p><p>  該部分采用JSP實現。Struts提供了豐富的標簽庫,通過標簽庫可以減少腳本的使用,自定義的標簽庫可以實現與Model的有效交互,并增加了現實功能。 </p><p>  3)Controlle

25、r部分</p><p>  Controller組件有兩個部分組成——系統(tǒng)核心控制器,業(yè)務邏輯控制器。系統(tǒng)核心控制器??刂破饔蒘truts框架提供,繼承HttpServlet類,因此可以配置成標注的Servlet。該控制器負責攔截所有的HTTP請求,然后根據用戶請求決定是否要轉給業(yè)務邏輯控制器。 業(yè)務邏輯控制器,負責處理用戶請求,本身不具備處理能力,而是調用Model來完成處理。對應Action部分。</p

26、><p>  3.6 Spring框架技術</p><p>  Spring在英文里有春天、彈簧、跳躍和泉眼的意思。Spring 也表示是一個開源框架,是為了解決企業(yè)應用程序開發(fā)復雜性由Rod Johnson創(chuàng)建的??蚣艿闹饕獌?yōu)勢之一就是其分層架構,分層架構允許使用者選擇使用哪一個組件,同時為 J2EE 應用程序開發(fā)提供集成的框架。Spring使用基本的JavaBean來完成以前只可能由EJ

27、B完成的事情。然而,Spring的用途不僅限于服務器端的開發(fā)。從簡單性、可測試性和松耦合的角度而言,任何Java應用都可以從Spring中受益。</p><p>  Spring是一個開源框架,它由Rod Johnson創(chuàng)建。它是為了解決企業(yè)應用開發(fā)的復雜性而創(chuàng)建的。Spring使用基本的JavaBean來完成以前只可能由EJB完成的事情。然而,Spring的用途不僅限于服務器端的開發(fā)。從簡單性、可測試性和松耦合

28、的角度而言,任何Java應用都可以從Spring中受益。 </p><p>  目的:解決企業(yè)應用開發(fā)的復雜性 </p><p>  功能:使用基本的JavaBean代替EJB,并提供了更多的企業(yè)應用功能 </p><p>  范圍:任何Java應用 </p><p>  簡單來說,Spring是一個輕量級的控制反轉(IoC)和面向切面(AO

29、P)的容器框架。 </p><p><b>  1.輕量</b></p><p>  從大小與開銷兩方面而言Spring都是輕量的。完整的Spring框架可以在一個大小只有1MB多的JAR文件里發(fā)布。并且Spring所需的處理開銷也是微不足道的。此外,Spring是非侵入式的:典型地,Spring應用中的對象不依賴于Spring的特定類。 </p>&l

30、t;p><b>  2.控制反轉</b></p><p>  Spring通過一種稱作控制反轉(IoC)的技術促進了松耦合。當應用了IoC,一個對象依賴的其它對象會通過被動的方式傳遞進來,而不是這個對象自己創(chuàng)建或者查找依賴對象。你可以認為IoC與JNDI相反——不是對象從容器中查找依賴,而是容器在對象初始化時不等對象請求就主動將依賴傳遞給它。 </p><p>

31、<b>  3.面向切面</b></p><p>  Spring提供了面向切面編程的豐富支持,允許通過分離應用的業(yè)務邏輯與系統(tǒng)級服務(例如審計(auditing)和事務(transaction)管理)進行內聚性的開發(fā)。應用對象只實現它們應該做的——完成業(yè)務邏輯——僅此而已。它們并不負責(甚至是意識)其它的系統(tǒng)級關注點,例如日志或事務支持。 </p><p><

32、b>  4.容器 </b></p><p>  Spring包含并管理應用對象的配置和生命周期,在這個意義上它是一種容器,你可以配置你的每個bean如何被創(chuàng)建——基于一個可配置原型(prototype),你的bean可以創(chuàng)建一個單獨的實例或者每次需要時都生成一個新的實例——以及它們是如何相互關聯(lián)的。然而,Spring不應該被混同于傳統(tǒng)的重量級的EJB容器,它們經常是龐大與笨重的,難以使用。

33、</p><p><b>  5.框架 </b></p><p>  Spring可以將簡單的組件配置、組合成為復雜的應用。在Spring中,應用對象被聲明式地組合,典型地是在一個XML文件里。Spring也提供了很多基礎功能(事務管理、持久化框架集成等等),將應用邏輯的開發(fā)留給了你。 </p><p>  Spring 框架是一個分層架構

34、,由 7 個定義良好的模塊組成。Spring 模塊構建在核心容器之上,核心容器定義了創(chuàng)建、配置和管理 bean 的方式,組成Spring框架的每個模塊(或組件)都可以單獨存在,或者與其他一個或多個模塊聯(lián)合實現。每個模塊的功能如下:</p><p>  1)核心容器:核心容器提供 Spring 框架的基本功能。核心容器的主要組件是 BeanFactory,它是工廠模式的實現。BeanFactory 使用控制反轉 (

35、IOC) 模式將應用程序的配置和依賴性規(guī)范與實際的應用程序代碼分開。 </p><p>  2)Spring 上下文:Spring 上下文是一個配置文件,向 Spring 框架提供上下文信息。Spring 上下文包括企業(yè)服務,例如 JNDI、EJB、電子郵件、國際化、校驗和調度功能。 </p><p>  3)Spring AOP:通過配置管理特性,Spring AOP 模塊直接將面向方面

36、的編程功能集成到了 Spring 框架中。所以,可以很容易地使 Spring 框架管理的任何對象支持 AOP。Spring AOP 模塊為基于 Spring 的應用程序中的對象提供了事務管理服務。通過使用 Spring AOP,不用依賴 EJB 組件,就可以將聲明性事務管理集成到應用程序中。 </p><p>  4)Spring DAO:JDBC DAO 抽象層提供了有意義的異常層次結構,可用該結構來管理異常處

37、理和不同數據庫供應商拋出的錯誤消息。異常層次結構簡化了錯誤處理,并且極大地降低了需要編寫的異常代碼數量(例如打開和關閉連接)。Spring DAO 的面向 JDBC 的異常遵從通用的 DAO 異常層次結構。 </p><p>  5)Spring ORM:Spring 框架插入了若干個 ORM 框架,從而提供了 ORM 的對象關系工具,其中包括 JDO、Hibernate 和 iBatis SQL Map。所有這

38、些都遵從 Spring 的通用事務和 DAO 異常層次結構。 </p><p>  6) Spring Web 模塊:Web 上下文模塊建立在應用程序上下文模塊之上,為基于 Web 的應用程序提供了上下文。所以,Spring 框架支持與 Jakarta Struts 的集成。Web 模塊還簡化了處理多部分請求以及將請求參數綁定到域對象的工作。 </p><p>  7)Spring MVC

39、 框架:MVC 框架是一個全功能的構建 Web 應用程序的 MVC 實現。通過策略接口,MVC 框架變成為高度可配置的,MVC 容納了大量視圖技術,其中包括 JSP、Velocity、Tiles、iText 和 POI。Spring 框架的功能可以用在任何 J2EE 服務器中,大多數功能也適用于不受管理的環(huán)境。Spring 的核心要點是:支持不綁定到特定 J2EE 服務的可重用業(yè)務和數據訪問對象。毫無疑問,這樣的對象可以在不同J2EE

40、環(huán)境(Web 或EJB)、獨立應用程序、測試環(huán)境之間重用。</p><p>  3.7 Hibernate框架技術</p><p>  Hibernate是一個開放源代碼的對象關系映射框架,它對JDBC進行了非常輕量級的對象封裝,使得Java程序員可以隨心所欲的使用對象編程思維來操縱數據庫。 Hibernate可以應用在任何使用JDBC的場合,既可以在Java的客戶端程序使用,也可以在S

41、ervlet/JSP的Web應用中使用,最具革命意義的是,Hibernate可以在應用EJB的J2EE架構中取代CMP,完成數據持久化的重任。</p><p>  Hibernate口一共有5個,分別為:Session、SessionFactory、Transaction、Query和Configuration。這5個核心接口在任何開發(fā)中都會用到。通過這些接口,不僅可以對持久化對象進行存取,還能夠進行事務控制。&

42、lt;/p><p>  Hibernate 中提供了兩級Cache,第一級別的緩存是Session級別的緩存,它是屬于事務范圍的緩存。這一級別的緩存由hibernate管理的,一般情況下無需進行干預;第二級別的緩存是SessionFactory級別的緩存,它是屬于進程范圍或群集范圍的緩存。這一級別的緩存可以進行配置和更改,并且可以動態(tài)加載和卸載。 Hibernate還為查詢結果提供了一個查詢緩存,它依賴于第二級緩存。

43、</p><p><b>  4. 總結</b></p><p>  隨著計算機知識的普及和推廣,越來越多的人掌握了計算機的基本使用方法和技能。隨著Internet的發(fā)展,用戶對于網絡、WINDOWS等環(huán)境下的軟件使用比較熟悉,對于新鮮事物,用戶表現出極大的興趣和熱情。網上書店售書系統(tǒng)給人們帶來了方便,成為一種全新的商務模式。因此,不用出門就可以在家購物的新時尚已經到

44、來,構建一個網上書店售書系統(tǒng)在經濟上是完全可行的。就本系統(tǒng)而言,隨著各地大學城的興建,校園遠離市區(qū),學生出校買書的代價提高。另一方面,隨著寬帶網絡進入校園,為學生在網絡上進行購物提供有利的條件。而一個網上書店售書系統(tǒng)可以為學生提供軟件條件,這樣學生便可以足不出戶的買書了。商家可以從中獲得利潤,兩全其美。通過以上的分析,開發(fā)網上書店售書系統(tǒng)是完全可行的。</p><p><b>  5. 參考文獻:<

45、;/b></p><p>  [1] Rogers Cadenhead (梅興文譯). Java編程入門經典(第4版) [M]. 北京:人民郵電出版社,2007. </p><p>  [2] Bruce Eckel. Thinking In Java.英文第4版[M].北京:機械工業(yè)出版社,2007.</p><p>  [3] 陳軼.姚曉昆編著.Java程

46、序設計實驗指導[M].北京:清華大學出版社,2006.</p><p>  [4] 楊昭編著.二級Java語言程序設計教程[M].北京:中國水利水電出版社,2006.</p><p>  [5] 趙文靖編著.Java程序設計基礎與上機指導[M].北京:清華大學出版社,2006.</p><p>  [6] 趙毅主編.跨平臺程序設計語言——Java[M].西安:西安電

47、子科技大學出版社,2006.</p><p>  [7] 王路群.Java高級程序設計[M].北京:中國水利水電出版社,2006.</p><p>  [8] 雍俊海編著.Java程序設計習題集[M].北京:清華大學出版社,2006.</p><p>  [9] 朱福喜編著.Java語言習題與解析[M].北京:清華大學出版社,2006.</p><

48、;p>  [10] 吳其慶編著.Java程序設計實例教程[M].北京:冶金工業(yè)出版社,2006.</p><p>  [11] 柳西玲.許斌編著.Java語言應用開發(fā)基礎[M].北京:清華大學出版社,2006.</p><p>  [12] 施霞萍等編著.Java程序設計教程 第2版[M].北京:機械工業(yè)出版社,2006.</p><p>  [13] Her

49、bert Schidt著.Java參考大全[M].北京:清華大學出版社,2006.</p><p>  [14] 宛延闿等編著.實用Java程序設計教程[M].北京:機械工業(yè)出版社,2006.</p><p>  [15] 陳國君等編著.Java2程序設計基礎[M].北京:清華大學出版社,2006.</p><p>  [16] 威爾頓,麥可匹克. JavaScri

50、pt入門經典(第3版) [M]. 北京:清華大學出版社,2009.</p><p>  [17] Marty Hall,Larry Brown. Servlet與JSP核心編程.第二版.趙學良譯[M].北京:清華大學出版社,2004.</p><p>  [18] 孫衛(wèi)琴. 精通Struts:基于MVC的Java Web設計與開發(fā)[M].北京:電子工業(yè)出版社,2004.</p>

51、<p>  [19] 張孝祥. Java就業(yè)培訓教程[M]. 北京:清華大學出版社,2003.</p><p>  [20] 程偉,汪孝宜. 開發(fā)者突擊:JSP網絡開發(fā)經典模塊實現全集[M]. 北京:電子工業(yè)出版社,2008.</p><p>  [21] 陳鵬,程勇. J2EE項目開發(fā)實用案例[M].北京:科技出版社,2006.</p><p>  

溫馨提示

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

評論

0/150

提交評論