2023年全國碩士研究生考試考研英語一試題真題(含答案詳解+作文范文)_第1頁
已閱讀1頁,還剩30頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、<p><b>  《Web應(yīng)用技術(shù)》</b></p><p><b>  課程設(shè)計報告</b></p><p><b>  系統(tǒng)簡介</b></p><p>  (系統(tǒng)開發(fā)的背景、目的、意義等)</p><p><b>  系統(tǒng)分析</b>&l

2、t;/p><p>  2.1 現(xiàn)狀及存在的不足</p><p><b>  2.2功能需求</b></p><p><b>  2.3 流程需求</b></p><p><b>  2.4其他</b></p><p><b>  系統(tǒng)設(shè)計&

3、lt;/b></p><p>  3.1 系統(tǒng)設(shè)計的目標(biāo)</p><p>  3.2 系統(tǒng)功能模塊設(shè)計</p><p>  3.3 數(shù)據(jù)庫設(shè)計(ER圖等)</p><p>  3.4 其他設(shè)計(如編碼設(shè)計等)</p><p><b>  系統(tǒng)實現(xiàn)</b></p><

4、p>  4.1 系統(tǒng)采用的技術(shù)說明</p><p>  4.2 主要功能的實現(xiàn)代碼和界面</p><p>  4.3 javabean的相關(guān)說明</p><p><b>  系統(tǒng)部署說明</b></p><p> ?。ōh(huán)境配置、數(shù)據(jù)源等)</p><p>  代表性窗口與測試報告</p

5、><p><b>  測試帳戶</b></p><p><b>  測試流程</b></p><p><b>  用戶使用說明</b></p><p><b>  課程設(shè)計小結(jié)</b></p><p><b>  本系統(tǒng)的評價

6、</b></p><p>  課程設(shè)計的收獲與不足</p><p><b>  一.系統(tǒng)簡介</b></p><p>  JAVA語言是目前Internet上大型的WEB應(yīng)用程序開發(fā)時使用得最熱門的編程語言,本文描述了JAVA和JSP技術(shù)的特點以及在互聯(lián)網(wǎng)上的使用情況,介紹這兩種技術(shù)的重要編程方法和兩者之關(guān)的聯(lián)系,同時也會應(yīng)用相關(guān)的

7、Struts框架,并完成一個基于這種技術(shù)的網(wǎng)上書店系統(tǒng)。</p><p>  【關(guān)鍵字】JAVA, Servlet, JSP, 網(wǎng)絡(luò)編程, 電子商務(wù), 網(wǎng)上書店</p><p>  JAVA的網(wǎng)絡(luò)功能與編程</p><p>  1-1  JAVA語言簡介 Java是一種簡單易用、完全面向?qū)ο?、具有平臺無關(guān)性且安全可靠的主要面向Inter

8、net的開發(fā)工具。自從1995年正式問世以來,Java的快速發(fā)展已經(jīng)讓整個Web世界發(fā)生了翻天覆地的變化。在早期,Java比較多的用在瀏覽器上,插入到網(wǎng)頁中(即是Java Applet程序),成為最靈活、最強大的網(wǎng)頁多媒體的載體,但由于Java虛擬機相對于個人電腦而言,有占用資源大,安全性相對較差等缺點,Applet逐漸的被后起之秀Flash所替代,但隨著Java Servlet的推出,Java在電子商務(wù)方面開始嶄露頭角,最新的JSP(

9、Java Server Page)技術(shù)的推出,更是讓Java成為基于Web的應(yīng)用程序的首選開發(fā)工具,目前的Java技術(shù)已成為所有大型電子商務(wù)項目的必然選擇。1-2 JAVA語言在網(wǎng)絡(luò)上的應(yīng)用 Java程序可以獲取網(wǎng)絡(luò)上結(jié)點的圖象、聲音、HTML文檔及文本等資源,并可以對獲得的資源進行處理。例如Java程序可以每隔一定時間讀取某結(jié)點提供的最新數(shù)據(jù),并以圖表的形式顯示出來。在編程處理上,一般先生成一個URL類型的對象,然后用

10、</p><p>  1-3 JSP的基礎(chǔ)——Servlet 技術(shù) Java Servlet是JSP技術(shù)的基礎(chǔ),JSP本身就是預(yù)先被編譯成Servlet,然后再運行的,而且大型的Web應(yīng)用程序的開發(fā)需要Java Servlet和JSP配合才能完成,Servlet這個名稱大概源于Applet,現(xiàn)在國內(nèi)的翻譯方式很多,本文為了避免誤會,本文直接采用Servlet這個名稱而不做任何翻譯,讀者如果愿意,可以稱之

11、為“小服務(wù)程序”。Servlet其實和傳統(tǒng)的CGI程序和ISAPI、NSAPI等Web程序開發(fā)工具的作用是相同的,在使用Java Servlet以后,用戶不必再使用效率低下的CGI方式,也不必使用只能在某個固定Web服務(wù)器平臺運行的API方式來動態(tài)生成Web頁面。許多Web服務(wù)器都支持Servlet,即使不直接支持Servlet的Web服務(wù)器也可以通過附加的應(yīng)用服務(wù)器和模塊來支持Servlet。得益于Java的跨平臺的特性,Servle

12、t也是平臺無關(guān)的,實際上,只要符合Java Servlet規(guī)范,Servlet是完全平臺無關(guān)且是Web服務(wù)器無關(guān)的。由于Java Servlet內(nèi)部是以線程方式提供服</p><p><b>  MVC簡介</b></p><p>  模型-視圖-控制器(MVC)是80年代Smalltalk-80出現(xiàn)的一種軟件設(shè)計模式,現(xiàn)在已經(jīng)被廣泛的使用。 1、模型(Model)

13、  模型是應(yīng)用程序的主體部分。模型表示業(yè)務(wù)數(shù)據(jù),或者業(yè)務(wù)邏輯.2、視圖(View)  視圖是應(yīng)用程序中用戶界面相關(guān)的部分,是用戶看到并與之交互的界面。 3、控制器(controller)   控制器工作就是根據(jù)用戶的輸入,控制用戶界面數(shù)據(jù)顯示和更新model對象狀態(tài)?! VC 式的出現(xiàn)不僅實現(xiàn)了功能模塊和顯示模塊的分離,同時它還提高了應(yīng)用系統(tǒng)的可維護性、可擴展性、可移植性和組件的可復(fù)用性   早期的程序中,如

14、果不注意對數(shù)功能和顯示的解耦合,常常會導(dǎo)致程序的復(fù)雜及難以維護。很多VB,Delphi等RAD程序都有這種問題。甚至現(xiàn)在的C#,Java有時候也會出現(xiàn)把業(yè)務(wù)邏輯寫在顯示模塊中的現(xiàn)象   管MVC設(shè)計模式很早就提出,但在Web項目的開發(fā)中引入MVC卻是步履維艱。主要原因:一是在早期的Web項目的開發(fā)中,程序語言和HTML的分離一直難以實現(xiàn)。CGI程序以字符串輸出的形式動態(tài)地生成HTML內(nèi)容。后來隨著腳本語言的出現(xiàn),前面的</p&

15、gt;<p><b>  二.需求分析</b></p><p>  網(wǎng)上書店系統(tǒng)主要是實現(xiàn)網(wǎng)上選書、購書、產(chǎn)生訂單等功能的系統(tǒng)。一個典型的網(wǎng)上商城一般都需要實現(xiàn)商品信息的動態(tài)提示、購物車管理、客戶信息注冊登錄管理、訂單處理等模塊。</p><p>  根據(jù)網(wǎng)上書店的基本需求,本系統(tǒng)需要完成的具體任務(wù)如下:</p><p>  書圖

16、查詢: 當(dāng)客戶進入網(wǎng)上書店時,應(yīng)該在主頁面中分類顯示最新的書目信息,以供客戶選擇所需圖書,同時也應(yīng)該提供按照圖書名稱,或者作者信息快速查詢所需書目信息的功能。</p><p>  購物車管理:當(dāng)客戶選擇購買某圖書產(chǎn)品時,應(yīng)該能夠?qū)?yīng)圖書信息,如:價格、數(shù)量記錄到對應(yīng)的購物車中,并允許客戶返回書目查詢頁面,選擇其他商品,并添加到購物車中,當(dāng)對應(yīng)的購物訂單生成后,應(yīng)該能夠自動清除以生成訂單的購物車中的信息。<

17、/p><p>  訂單處理:對應(yīng)客戶購買圖書商品信息的需求,在確定了所購圖書商品的價格、數(shù)量等信息后,提示用戶選擇對應(yīng)的送貨方式及付款方式,最終生成對應(yīng)的訂單記錄,以便于網(wǎng)站配貨人員依據(jù)訂單信息進行后續(xù)的出貨、送貨的處理。</p><p>  會員注冊:為了能夠?qū)崿F(xiàn)圖書商品的購買,需要管理客戶相關(guān)的聯(lián)系方式、送貨地點等相關(guān)的信息。</p><p><b>  

18、功能性需求</b></p><p>  功能性需求分析是指對目標(biāo)軟件系統(tǒng)在功能、行為、性能、設(shè)計約束等方面的期望。需求分析是軟件設(shè)計、實現(xiàn)測試直至維護的主要基礎(chǔ),良好的需求分析可以避免或盡早提出早期的錯誤,從而降低軟件的開發(fā)成本,改進軟件的質(zhì)量。需求分析的任務(wù)是通過詳細調(diào)查現(xiàn)實世界要處理的對象,充分了解系統(tǒng)的工作概況,明確各種功能需求,然后在此基礎(chǔ)上確定新系統(tǒng)的功能。新系統(tǒng)必須充分考慮今后可能的擴充和

19、改變[3]。</p><p>  系統(tǒng)對數(shù)據(jù)的安全性、完整性要求表現(xiàn)在:用戶信息保密,只有管理員可見(可查),但不能任意修改。確保用戶信息安全。此外,圖書信息、用戶信息必須保證其完整性,防止惡意刪改。以下是系統(tǒng)性能需求:</p><p> ?。?)準(zhǔn)確性和可靠性高。</p><p> ?。?)頁面友好,功能齊全,且可以方便使用。</p><p&g

20、t;<b>  三.系統(tǒng)設(shè)計</b></p><p>  3.1 總體設(shè)計目標(biāo)</p><p>  網(wǎng)站用戶通過使用本系統(tǒng),可以隨時根據(jù)需要,查詢上映圖書信息,對圖書網(wǎng)站中的個人信息進行修改,并可以根據(jù)個人喜好提前預(yù)定圖書,避免了現(xiàn)場排隊之苦,同時也減少書店方面的人力和物力的投資。作為一個在線購書網(wǎng)站,除了要功能強大、操作簡單、符合上述需求分析,還應(yīng)實現(xiàn)其他目標(biāo),以適

21、用于各類城市影院,具體要求如下:</p><p> ?。?)界面在設(shè)計上要美觀、友好,操作要快捷、準(zhǔn)確;</p><p> ?。?)數(shù)據(jù)存儲要安全可靠;</p><p> ?。?)注冊用戶可以隨時修改個人信息;</p><p>  (4)對于用戶輸入的數(shù)據(jù),系統(tǒng)要有嚴格的檢錯機制,盡可能排除人為錯誤;</p><p>

22、 ?。?)系統(tǒng)要最大限度的實現(xiàn)易維護性,運行要穩(wěn)定、可靠、安全。</p><p>  3.2 功能模塊設(shè)計</p><p>  概念模型是信息管理系統(tǒng)設(shè)計中較早卻相當(dāng)重要的一步,為了全面獲取本系統(tǒng)的概念模型,首先需要分析整個網(wǎng)站的操作流程。以用戶在購票體驗上盡量接近一般網(wǎng)購方式為出發(fā)點,網(wǎng)站在設(shè)計上應(yīng)使購票流程盡量貼近人們平時的網(wǎng)購習(xí)慣。因此,可以得到用戶登錄網(wǎng)站進行購票的流程圖,如圖3-

23、1所示。</p><p>  從網(wǎng)站管理員角度來看,管理員進入網(wǎng)站后臺選擇相應(yīng)的功能,操作結(jié)束后,仍可以進行其他操作,或者沒有操作時退出網(wǎng)站。網(wǎng)站后臺管理流程如圖3-2所示。</p><p>  整個系統(tǒng)的處理流程如下:</p><p> ?。?)用戶進入登錄頁面,身份驗證:普通用戶和管理員的權(quán)限有所不同。</p><p> ?。?)正常進入

24、網(wǎng)站:身份核實無誤后,按權(quán)限的不同,普通用戶進入網(wǎng)站前臺,管理員進入網(wǎng)站后臺。</p><p> ?。?)執(zhí)行各任務(wù):根據(jù)各自需求,進行各項操作。</p><p> ?。?)一任務(wù)執(zhí)行完畢后重新返回主頁:執(zhí)行任務(wù)后回到主頁能夠保證操作的條理性。</p><p> ?。?)執(zhí)行完畢,退出網(wǎng)站:若所要執(zhí)行的任務(wù)全部完成,即可退出網(wǎng)站。</p><p&

25、gt;  為了最終實現(xiàn)目標(biāo)系統(tǒng),必須設(shè)計出組成這個系統(tǒng)的所有程序、文件以及數(shù)據(jù)庫。模塊是數(shù)據(jù)說明、可執(zhí)行語句等程序設(shè)計對象的集合,它是單獨命名的而且可通過名字來訪問。模塊化就是把程序化分成若干個模塊,每個模塊完成一個子功能,把這些模塊集起來組成一個整體,可以完成指定的滿足問題的要求[4]。</p><p>  通過以上流程分析,可以進一步設(shè)計出圖書票預(yù)訂網(wǎng)站的總體結(jié)構(gòu)模塊圖,分別從用戶和管理員兩個不同的角度去設(shè)計

26、,如圖3-3所示。</p><p> ?。?)用戶模塊:在本網(wǎng)站中,所有的用戶在訪問網(wǎng)站的時候均可以瀏覽查看圖書信息、將圖書加入購物車、查看購物車刪除影票、給圖書做出評價、修改個人基本信息。其功能結(jié)構(gòu)模塊圖如圖3-4所示。</p><p> ?。?)管理模塊:在本網(wǎng)站中,管理員除了要進行相關(guān)信息的維護還有如下主要工作:定時查看圖書評價信息,審查用戶的評價是否具有合法性,刪除惡意評價;定期對

27、系統(tǒng)數(shù)據(jù)庫進行備份,確保數(shù)據(jù)安全;及時更新新上映圖書的信息,刪除圖書的信息等等。管理員通過后臺登錄網(wǎng)站,為確保系統(tǒng)的安全性,管理員后臺登錄會進行密碼權(quán)限的檢測。成功登錄后,導(dǎo)航條上將出現(xiàn)“圖書管理”、“訂單管理”、“用戶管理”及“評價管理”等按鈕供管理員進行不同的系統(tǒng)操作。上述功能在前臺不可見,屬于網(wǎng)站的后臺操作模塊,因此這部分模塊可定義為“后臺管理”,其功能結(jié)構(gòu)模塊圖如圖3-5所示。</p><p><b

28、>  具體任務(wù)分析如下:</b></p><p> ?、?圖書管理模塊的基本功能應(yīng)包括添加、刪除、修改圖書信息等。當(dāng)管理員單擊其中的任何一個功能按鈕時,都可以進行對網(wǎng)站前臺顯示的圖書信息進行相關(guān)的操作。</p><p>  ② 用戶管理模塊的基本功能應(yīng)包括網(wǎng)站用戶基本信息查看和注銷處理。其中用戶基本信息查看包括用戶真實姓名、手機號、電子郵箱、地址等。對于新注冊的會員用戶,

29、管理員要對其注冊信息進行審核。</p><p> ?、?訂單管理模塊的基本功能應(yīng)包括查看用戶已下單的信息、刪除訂單。其中訂單信息包括購買者編號、圖書名稱、放映廳、座位、購買訂購數(shù)量等。當(dāng)管理員單擊查看按鈕時,將顯示該條訂單的詳細信息。</p><p>  ④ 評價管理模塊中,只有購買過圖書票的網(wǎng)站會員才能對圖書進行評價,管理員可以查看或刪除評價信息。用戶評價的發(fā)言主題應(yīng)與圖書相關(guān),這是管理

30、員審核的要點,對于一些惡意評價,管理員可以選擇刪除。</p><p><b>  3.3 數(shù)據(jù)庫設(shè)計</b></p><p>  3.3.1 數(shù)據(jù)流分析</p><p>  數(shù)據(jù)流圖是結(jié)構(gòu)化系統(tǒng)分析的基本工具。一個數(shù)據(jù)流圖確定了系統(tǒng)的轉(zhuǎn)化過程、系統(tǒng)所操縱的數(shù)據(jù)或物質(zhì)的收集(存儲),還有過程、存儲、外部世界之間的數(shù)據(jù)流或物質(zhì)流[5]。</p

31、><p>  數(shù)據(jù)流圖技術(shù)是可以擴充到允許實時系統(tǒng)的建模。數(shù)據(jù)流圖是當(dāng)前業(yè)務(wù)過程或新系統(tǒng)操作步驟的一種表示方法。數(shù)據(jù)流圖可以在一個抽象的廣泛范圍內(nèi)表示系統(tǒng)。在一個多步驟的活動中,高層數(shù)據(jù)流圖對數(shù)據(jù)和處理部分提供一個整體的瀏覽,這是對包含在軟件需求規(guī)格說明中的精確、詳細敘述的補充。數(shù)據(jù)流圖描述了軟件需求規(guī)格說明中的功能需求怎樣結(jié)合在一起,使用戶可以執(zhí)行指定的任務(wù)。從圖中迅速反饋的信息有助于對所探討的任務(wù)流的理解進行提煉

32、加工。</p><p>  圖書網(wǎng)站的第一層數(shù)據(jù)流圖,如圖3-6所示。本數(shù)據(jù)流圖描述了圖書網(wǎng)站后臺的各個模塊處理過程中的數(shù)據(jù)處理的過程。用戶管理主要是對用戶信息的查看和刪除;圖書管理是添加或修改圖書信息;訂單管理是確認訂單或刪除訂單;評價管理是對用戶評價的查看和刪除。</p><p>  圖書信息管理中的數(shù)據(jù)處理圖是本網(wǎng)站的第二層數(shù)據(jù)流圖,如圖3-7所示。描述了在圖書信息管理模塊中所作操作

33、的數(shù)據(jù)處理。主要包括對上映圖書信息的添加、刪除和修改操作。</p><p>  用戶管理數(shù)據(jù)流程圖,如圖3-8所示。描述了用戶信息管理模塊中所作操作的數(shù)據(jù)處理。主要包括對用戶信息的添加和注銷操作。</p><p>  訂單管理數(shù)據(jù)流圖,如圖3-9所示。描述了用戶下單后,訂單管理模塊中所作操作的數(shù)據(jù)處理。網(wǎng)站管理員的主要操作包括查看訂單和刪除訂單。</p><p> 

34、 評價管理數(shù)據(jù)流圖,如圖3-10所示。描述了已購票用戶觀看圖書后,對圖書做出評價,網(wǎng)站管理員在評價管理模塊中所作操作的數(shù)據(jù)處理。管理員的主要操作包括查看評價和刪除評價。</p><p>  3.3.2 實體E-R圖</p><p>  E-R圖提供了表示實體(即數(shù)據(jù)對象)、屬性和聯(lián)系的方法,用來描述現(xiàn)實世界的概念模型[6]。構(gòu)成E-R圖的基本要素是實體、屬性和聯(lián)系,其表示方法為: <

35、/p><p> ?。?)實體型:用矩形表示,矩形框內(nèi)寫明實體名; </p><p> ?。?)屬性:用橢圓形或圓角矩形表示,并用無向邊將其與相應(yīng)的實體連接起來;多值屬性由雙線連接;主屬性名稱下加下劃線; </p><p> ?。?)聯(lián)系:用菱形表示,菱形框內(nèi)寫明聯(lián)系名,并用無向邊分別與有關(guān)實體連接起來,同時在無向邊旁標(biāo)上聯(lián)系的類型。在E-R圖中要明確表明1對多關(guān)系,1對

36、1關(guān)系和多對多關(guān)系。1對1關(guān)系在兩個實體連線方向?qū)?;1對多關(guān)系在1的一方寫1,多的一方寫N;多對多關(guān)系則是在兩個實體連線方向各寫N,M。</p><p>  經(jīng)過分析,由上面的數(shù)據(jù)流程圖可以得出以下各實體之間的E-R圖,如圖3-11所示。</p><p><b>  數(shù)據(jù)庫:</b></p><p><b>  book表:<

37、/b></p><p>  orderinfo表:</p><p><b>  user表:</b></p><p><b>  4 系統(tǒng)實施</b></p><p>  4.1 系統(tǒng)運行環(huán)境</p><p>  由于本系統(tǒng)系個人單獨開發(fā),綜合系統(tǒng)特點、開發(fā)時間等因素,

38、采用傳統(tǒng)的開發(fā)方式—瀑布模型開發(fā)模式。從節(jié)約成本的角度考慮,開發(fā)工具選擇目前網(wǎng)站開發(fā)的主流工具JSP+Access 的組合。 </p><p>  4.1.1硬件要求 </p><p> ?。?)CPU:P4 1.8GHz </p><p>  (2)內(nèi)存:256MB 以上 </p><p>  4.1.2開發(fā)及運行環(huán)境 </p>

39、<p>  操作系統(tǒng): Windows </p><p>  開發(fā)工具: JSP+Java</p><p> ?。?)數(shù)據(jù)庫:Microsoft Access</p><p> ?。?)服務(wù)器:Tomcat 6.0</p><p> ?。?)瀏覽器:IE 6.0 以上。 </p><p>  4.2 系統(tǒng)

40、架構(gòu)設(shè)計</p><p>  目前,網(wǎng)絡(luò)應(yīng)用軟件的運行模式主要有兩類:C/S模式和B/S模式。目前大多數(shù)應(yīng)用軟件系統(tǒng)都是Client/Server形式的兩層結(jié)構(gòu),現(xiàn)在的軟件應(yīng)用系統(tǒng)正在向分布式的Web應(yīng)用發(fā)展;內(nèi)部的和外部的用戶都可以訪問新的和現(xiàn)有的應(yīng)用系統(tǒng),Web和Client/Server應(yīng)用都可以進行同樣的業(yè)務(wù)處理;不同的應(yīng)用模塊共享邏輯組件;通過現(xiàn)有應(yīng)用系統(tǒng)中的邏輯可以擴展出新的應(yīng)用系統(tǒng)。這也就是目前應(yīng)用

41、系統(tǒng)的發(fā)展方向。</p><p>  C/S結(jié)構(gòu),即 Client/Server(客戶機/服務(wù)器)結(jié)構(gòu),是大家熟知的軟件系統(tǒng)體系結(jié)構(gòu),通過將任務(wù)合理分配到Client 端和Server 端,降低了系統(tǒng)的通訊開銷,可以充分利用兩端硬件環(huán)境的優(yōu)勢。C/S之間通過任意的協(xié)議通信,一般要求有特定的客戶端。C/S程序注重流程,可以對權(quán)限多層次校驗,對系統(tǒng)運行速度可以較少考慮;由于整體性,必須整體考察,因此在處理出現(xiàn)的問題以

42、及系統(tǒng)升級上難度較大。因為客戶端需要實現(xiàn)絕大多數(shù)的業(yè)務(wù)邏輯和界面展示。這種架構(gòu)中,作為客戶端的部分需要承受很大的壓力,因為顯示邏輯和事務(wù)處理都包含在其中,通過與數(shù)據(jù)庫的交互(通常是SQL或存儲過程的實現(xiàn))來達到持久化數(shù)據(jù),以此滿足實際項目的需要。</p><p>  B/S結(jié)構(gòu),即 Browser/Server(瀏覽器/服務(wù)器)結(jié)構(gòu),是隨著Internet 技術(shù)的興起,對 C/S 結(jié)構(gòu)的一種變化或者改進的結(jié)構(gòu)。在

43、這種結(jié)構(gòu)下,用戶界面完全通過瀏覽器實現(xiàn),一部分事務(wù)邏輯在前端實現(xiàn),但是主要事務(wù)邏輯在服務(wù)器端實現(xiàn),形成所謂3-tier結(jié)構(gòu)。B/S結(jié)構(gòu)利用不斷成熟和普及的瀏覽器技術(shù)實現(xiàn)原來需要復(fù)雜專用軟件才能實現(xiàn)的強大功能,并節(jié)約了開發(fā)成本,是一種全新的軟件系統(tǒng)構(gòu)造技術(shù)。這種結(jié)構(gòu)更成為當(dāng)今應(yīng)用軟件的首選體系結(jié)構(gòu)。B/S模式是靠應(yīng)用層的http協(xié)議進行通信的(當(dāng)然也要靠底層的好多協(xié)議支持),一般不需要特定的客戶端,而是需要有統(tǒng)一規(guī)范的客戶端,那就是瀏覽器

44、。B/S架構(gòu)的優(yōu)點在于客戶端和服務(wù)器通過Internet 進行數(shù)據(jù)交換,客戶端基于統(tǒng)一的 Web 瀏覽器,減少了投資,解決了系統(tǒng)維護升級的問題。另外只有極少部分事務(wù)邏輯在前端(Browser)實現(xiàn),但是主要事務(wù)邏輯在服務(wù)器端(Server)實現(xiàn),這也就充分保護了數(shù)據(jù)的安全。B/S架構(gòu)中,顯示邏輯交給了Web瀏覽器,事務(wù)處理邏輯在放在了WebApp上,這樣就避免了龐大的客戶端,減少了客戶端的壓力[7]。</p><p&

45、gt;  總的來說,B/S 結(jié)構(gòu)具有如下優(yōu)點:無需安裝客戶端,任何一點都可以登錄訪問;根據(jù)權(quán)限對網(wǎng)絡(luò)拓撲進行統(tǒng)一管理;配置文件和發(fā)現(xiàn)信息實現(xiàn)集中統(tǒng)一管理和共享。由于系統(tǒng)的定位是一個網(wǎng)上購票系統(tǒng)——是一個電子商務(wù)類網(wǎng)站,傳統(tǒng)的C/S(客戶機/服務(wù)器)已不適應(yīng)。作為 Internet 上的 Web 應(yīng)用,需要的是 B/S(瀏覽器/服務(wù)器)架構(gòu)。所以本網(wǎng)站采用B/S結(jié)構(gòu)。</p><p>  4.3 相關(guān)技術(shù)介紹<

46、;/p><p>  開發(fā)網(wǎng)站需要兩種工具,即前臺開發(fā)語言和后臺數(shù)據(jù)庫。本網(wǎng)站前臺開發(fā)技術(shù)使用JSP,后臺數(shù)據(jù)庫使用Microsoft Access。JSP靈活方便,與后臺的Microsoft Access數(shù)據(jù)庫相結(jié)合,可以提供一個高性能的在線訂票網(wǎng)站。</p><p>  4.3.1 JSP及其特點</p><p>  JSP,全稱為Java Server Pages/

47、Servlet。JSP和Servlet都是Sun公司的J2EE(Java 2 platform Enterprise Edition)應(yīng)用體系中的一部分,兩者一般需要放在一起被討論。Servlet的形式和CGI差不多,它是HTML代碼和后臺程序分開的。它們的啟動原理也類似,都是服務(wù)器接到客戶端的請求后,進行應(yīng)答。不同的是,CGI對每個客戶請求都打開一個進程(Process),而Servlet卻在響應(yīng)第一個請求的時候被載入,一旦Servl

48、et被載入,便處于已執(zhí)行狀態(tài)。對于以后其他用戶的請求,它并不打開進程,而是打開一個線程(Thread),將結(jié)果發(fā)送給客戶。由于線程與線程之間可以通過生成自己的父線程(Parent Thread)來實現(xiàn)資源共享,這樣就減輕了服務(wù)器的負擔(dān),所以,Java Servlet可以用來做大規(guī)模的應(yīng)用服務(wù)[8]。</p><p>  JSP技術(shù)主要具備以下特點:</p><p> ?。?)將內(nèi)容的產(chǎn)生和

49、顯式進行分離:使用JSP技術(shù),Web開發(fā)人員可以使用HTML或者XML標(biāo)志來設(shè)計和格式化最終頁面。使用JSP標(biāo)志或者小腳本來產(chǎn)生頁面上的動態(tài)內(nèi)容。</p><p>  (2)強調(diào)可重用的群組件:絕大多數(shù)JSP頁面依賴于可重用且跨平臺的組件(如:JavaBean或者Enterprise JavaBean)來執(zhí)行應(yīng)用程序所要求的更為復(fù)雜的處理。開發(fā)人員能夠共享和交換執(zhí)行普通操作的組件,或者使得這些組件為更多的使用者或

50、用戶團體所使用。基于組件的方法加速了總體開發(fā)過程,并且使得各種群組織在他們現(xiàn)有的技能和優(yōu)化結(jié)果的開發(fā)努力中得到平衡。</p><p> ?。?)采用標(biāo)志簡化頁面開發(fā):Web頁面開發(fā)人員不會都是熟悉腳本語言的程序設(shè)計人員。JSP技術(shù)封裝了許多功能,這些功能是在易用的、與JSP相關(guān)的XML標(biāo)志中進行動態(tài)內(nèi)容產(chǎn)生所需要的。標(biāo)準(zhǔn)的JSP標(biāo)志能夠存取和實例化JavaBeans組件,設(shè)定或者檢索群組件屬性,下載Applet,

51、以及執(zhí)行用其他方法更難于編碼和耗時的功能。</p><p>  目前主流的網(wǎng)站開發(fā)語言有JSP、ASP、PHP等等。雖然在形式上JSP和ASP或PHP看上去很相似——都可以被內(nèi)嵌在HTML代碼中。但是,它的執(zhí)行方式和ASP或PHP完全不同。在JSP被執(zhí)行的時候,JSP文件被JSP解釋器(JSP Parser)轉(zhuǎn)換成Servlet代碼,然后Servlet代碼被Java編譯器編譯成 .class 字節(jié)文件,這樣就由生

52、成的Servlet來對客戶端應(yīng)答。所以,JSP可以看做是Servlet的腳本語言(Script Language)版。JSP和ASP相比,運行速度、運行開銷、運行平臺、擴展性、安全性、函數(shù)支持、廠商支持、對XML的支持等等, JSP的優(yōu)點都是ASP無法比擬的。采用PHP的網(wǎng)站也有很多,如新浪網(wǎng)(sina)、中國人(Chinaren)等,但由于PHP本身存在的一些缺點,使得它不適合應(yīng)用于大型電子商務(wù)站點,而更適合一些小型的商業(yè)站點。首先,

53、PHP缺乏規(guī)模支持;其次,它缺乏多層結(jié)構(gòu)支持。對于大負荷站點,解決方法只有一個:分布計算。數(shù)據(jù)庫、應(yīng)用邏輯層、表示邏輯層彼此分開,而且同層也可以根據(jù)流量分開,群組成二維數(shù)組。而PHP則缺乏這種支持。還有十分重</p><p>  由于JSP/Servlet都是基于Java的,所以它們也具備Java語言的最大優(yōu)點——平臺無關(guān)性,也就是所謂的“一次編寫,隨處運行(WORA – Write Once, Run Anyw

54、here)”。除了這個優(yōu)點,JSP/Servlet的效率以及安全性也是相當(dāng)驚人的。因此,JSP/Servlet雖然在國內(nèi)目前的應(yīng)用并不廣泛,但是其前途不可限量。在調(diào)試JSP代碼時,如果程序出錯,JSP服務(wù)器會返回出錯信息,并在瀏覽器中顯示。隨著越來越多的的供貨商將JSP支持加入到他們的產(chǎn)品中,用戶可以使用自己所選擇的服務(wù)器和工具,修改工具和服務(wù)器并不影響目前的應(yīng)用。JSP技術(shù)很容易整合到多種應(yīng)用體系結(jié)構(gòu)中,以利用現(xiàn)存的工具和技巧,并且擴

55、展到能夠支持企業(yè)級的分布式應(yīng)用,作為采用Java技術(shù)家族的一部分,以及J2EE的一個成員,JSP技術(shù)能夠支持高度復(fù)雜的基于Web的應(yīng)用。</p><p>  4.3.2 JavaBean</p><p>  JavaBean是一種基于Java的軟件組件,JavaBean和ActiveX控件一樣,可以通過封裝業(yè)務(wù)邏輯建立一整套可重復(fù)利用的對象庫。JSP對于在Web應(yīng)用中集成JavaBean組

56、件提供了完善的支持。這種支持不僅能縮短開發(fā)時間(可以直接利用經(jīng)過測試和可信任的已有組件),避免重復(fù)開發(fā),也為JSP應(yīng)用帶來了更多的可伸縮性。JavaBean組件可以用來執(zhí)行復(fù)雜的計算任務(wù),或負責(zé)與數(shù)據(jù)庫的交互與數(shù)據(jù)提取等。</p><p>  4.3.3 Microsoft Access及其特點</p><p>  Access 是微軟公司推出的基于Windows的桌面關(guān)系數(shù)據(jù)庫管理系統(tǒng)(

57、RDBMS,即Relational Database Management System),是Office系列應(yīng)用軟件之一[9]。一般電腦均會安裝,應(yīng)用廣泛。它提供了表、查詢、窗體、報表、頁、宏、模塊7種用來建立數(shù)據(jù)庫系統(tǒng)的對象,并且提供了多種向?qū)?、生成器、模板,把?shù)據(jù)存儲、數(shù)據(jù)查詢、界面設(shè)計、報表生成等操作規(guī)范化,為建立功能完善的數(shù)據(jù)庫管理系統(tǒng)提供了方便,也使得普通用戶不必編寫代碼,就可以完成大部分數(shù)據(jù)管理的任務(wù)。Access的優(yōu)點具

58、體有以下幾點:</p><p> ?。?)存儲方式單一:Access管理的對象有表、查詢、窗體、報表、頁、宏和模塊這7種,以上對象都存放在后綴為(.mdb)的數(shù)據(jù)庫文件種,便于用戶的操作和管理。 </p><p> ?。?)面向?qū)ο螅篈ccess是一個面向?qū)ο蟮拈_發(fā)工具,利用面向?qū)ο蟮姆绞綄?shù)據(jù)庫系統(tǒng)中的各種功能對象化,將數(shù)據(jù)庫管理的各種功能封裝在各類對象中。它將一個應(yīng)用系統(tǒng)當(dāng)作是由一系列

59、對象組成的,對每個對象它都定義一組方法和屬性,以定義該對象的行為和特征,用戶還可以按需要給對象擴展方法和屬性。通過對象的方法、屬性完成數(shù)據(jù)庫的操作和管理,極大地簡化了用戶的開發(fā)工作。同時,這種基于面向?qū)ο蟮拈_發(fā)方式,使得開發(fā)應(yīng)用程序更為簡便。</p><p> ?。?)界面友好、易操作:Access是一個可視化工具,其風(fēng)格與Windows完全一樣,用戶想要生成對象并應(yīng)用,只要使用鼠標(biāo)進行拖放即可,非常直觀方便。系

60、統(tǒng)還提供了表生成器、查詢生成器、報表設(shè)計器以及數(shù)據(jù)庫向?qū)?、表向?qū)?、查詢向?qū)?、窗體向?qū)?、報表向?qū)У裙ぞ?,使得操作簡便,容易使用和掌握?</p><p> ?。?)集成環(huán)境、處理多種數(shù)據(jù)信息:Access基于Windows操作系統(tǒng)下的集成開發(fā)環(huán)境,該環(huán)境集成了各種向?qū)Ш蜕善鞴ぞ?,極大地提高了開發(fā)人員的工作效率,使得建立數(shù)據(jù)庫、創(chuàng)建表、設(shè)計用戶界面、設(shè)計數(shù)據(jù)查詢、報表打印等可以方便有序地進行。 </p>

61、<p> ?。?)Access支持ODBC:利用Access強大的DDE(動態(tài)數(shù)據(jù)交換)和OLE(對象的聯(lián)接和嵌入)特性,可以在一個數(shù)據(jù)表中嵌入位圖、聲音、Excel表格、Word文檔,還可以建立動態(tài)的數(shù)據(jù)庫報表和窗體等。Access還可以將程序應(yīng)用于網(wǎng)絡(luò),并與網(wǎng)絡(luò)上的動態(tài)數(shù)據(jù)相聯(lián)接。利用數(shù)據(jù)庫訪問頁對象生成HTML文件,輕松構(gòu)建Internet/Intranet的應(yīng)用。</p><p>  4.3

62、.4 Tomcat</p><p>  Tomcat是APACHE JAKARTA軟件組織的一個子項目,TOMCAT是一個JSP/SERVLET容器,它是在SUN公司的JSWDK(JAVA SERVER WEB DEVELOPMENT KIT)基礎(chǔ)上發(fā)展起來的一個JSP和SERVLET規(guī)范的標(biāo)準(zhǔn)實現(xiàn),使用TOMCAT可以體驗JSP和SERVLET的最新規(guī)范。經(jīng)過多年的發(fā)展,Tomcat不僅是JSP和SERVLET

63、規(guī)范的標(biāo)準(zhǔn)實現(xiàn),而且具備了很多商業(yè)JAVA SERVLET容器的特性,并被一些企業(yè)用于商業(yè)用途。 </p><p>  Tomcat服務(wù)器是一個免費的開放源代碼的Web應(yīng)用服務(wù)器。因為Tomcat技術(shù)先進、性能穩(wěn)定且免費,所以深受Java程序開發(fā)者的喜愛并得到了部分軟件開發(fā)商的認可,成為目前比較流行的Web應(yīng)用服務(wù)器。</p><p>  Tomcat是提供一個支持Servlet和JSP運

64、行的容器。Servlet和JSP能根據(jù)實時需要,產(chǎn)生動態(tài)網(wǎng)頁內(nèi)容。而對于Web服務(wù)器來說,Apache僅僅支持靜態(tài)網(wǎng)頁,對于支持動態(tài)網(wǎng)頁就會顯得無能為力;Tomcat則既能為動態(tài)網(wǎng)頁服務(wù),同時也能為靜態(tài)網(wǎng)頁提供支持。盡管它沒有通常的Web服務(wù)器快、功能也不如Web服務(wù)器豐富,但是Tomcat逐漸為支持靜態(tài)內(nèi)容不斷擴充。大多數(shù)的Web服務(wù)器都是用底層語言編寫如C語言,利用了相應(yīng)平臺的特征,因此用純Java編寫的Tomcat執(zhí)行速度不可能與

65、它們相提并論。</p><p>  一般來說,大的站點都是將Tomcat與Apache的結(jié)合,Apache負責(zé)接受所有來自客戶端的HTTP請求,然后將Servlets和JSP的請求轉(zhuǎn)發(fā)給Tomcat來處理。Tomcat完成處理后,將響應(yīng)傳回給Apache,最后Apache將響應(yīng)返回給客戶端。</p><p>  4.3.5 數(shù)據(jù)庫連接</p><p>  Acces

66、s作為關(guān)系型桌面數(shù)據(jù)庫管理系統(tǒng),在建立中、小型的數(shù)據(jù)庫管理網(wǎng)站中得到了廣泛的應(yīng)用。因此,為了建立與數(shù)據(jù)庫的連接,可以通過三種方式:建立DSN、使用非DSN和OLE DB。在本網(wǎng)站設(shè)計過程中,通過JDBC-ODBC橋連接Access數(shù)據(jù)庫[10]。</p><p>  ODBC是一種訪問數(shù)據(jù)庫的方法,只要系統(tǒng)中有相應(yīng)的ODBC驅(qū)動程序,任何程序就可以通過ODBC驅(qū)動程序操縱數(shù)據(jù)庫。在給ODBC驅(qū)動程序傳遞SQL指令

67、時,用的就是DSN來告訴它到底操作的是哪一個數(shù)據(jù)庫。由此可見,DSN是應(yīng)用程序和數(shù)據(jù)庫之間的橋梁。要通過ODBC訪問數(shù)據(jù)庫,前提是必須配置好DSN。因此,一個DSN必須包含一些信息,DSN的名字就是給這座橋取的名字,當(dāng)在程序中訪問數(shù)據(jù)庫時,給系統(tǒng)傳的就是這個名字,而不是數(shù)據(jù)庫的實際名稱。所以,在操縱數(shù)據(jù)庫時,系統(tǒng)才會知道調(diào)用哪個ODBC驅(qū)動程序來服務(wù)。</p><p>  SUN的JDK中自帶了用來連接ODBC數(shù)

68、據(jù)源的JDBC驅(qū)動,寫法為:</p><p>  Class.forName( "sun.jdbc.odbc.JdbcOdbcDriver" );Connection cn = DriverManager.getConnection( "jdbc:odbc:數(shù)據(jù)源名", “用戶名”, "口令" );</p><p>  JDBC

69、-ODBC 橋是一個JDBC 驅(qū)動程序,對ODBC 而言, 它像是通用的應(yīng)用程序,橋為所有適用于ODBC 的數(shù)據(jù)庫實現(xiàn)JDBC。它作為sun.jdbc.odbc 包實現(xiàn),其中包含一個用來訪問ODBC 的本地庫。由于ODBC 被廣泛地使用,所以橋的優(yōu)點是讓JDBC 能夠訪問幾乎所有的數(shù)據(jù)庫。橋支持ODBC 2.X,這也是當(dāng)前大多數(shù)據(jù)ODBC 驅(qū)動程序支持的版本。橋驅(qū)動程序為Java 應(yīng)用程序提供了一種把JDBC 調(diào)用映射為ODBC 調(diào)用的

70、方法。因此,需要在客戶端機器上安裝ODBC 驅(qū)動。JDBC-ODBC 橋在JDBC API 和ODBC API之間提供了一個橋梁,這個橋把標(biāo)準(zhǔn)的JDBC 調(diào)用翻譯成對應(yīng)的ODBC 調(diào)用,然后通過ODBC 庫把它們發(fā)送到ODBC 數(shù)據(jù)源。</p><p>  JDBC- ODBC (Open Database Connectivity,ODBC) 橋驅(qū)動程序由Sun 與Merant公司聯(lián)合開發(fā),主要功能是把JDBC

71、 API調(diào)用轉(zhuǎn)換成ODBC API 調(diào)用,然后ODBC API調(diào)用針對供應(yīng)商的ODBC 驅(qū)動程序來訪問數(shù)據(jù)庫, 即利用JDBC- ODBC 橋通過ODBC來存儲數(shù)據(jù)源,如圖4-1所示。</p><p>  橋作為包sun.jdbc.odbc 與JDK 一起自動安裝,無需特殊配置。Java2SDK 類庫中包含了用于JDBC-ODBC橋接驅(qū)動程序的類, 因此不再需要安裝任何附加包就可以使用。但是客戶機需要通過生成數(shù)據(jù)

72、源名(Data Source Names , DSN)來配置ODBC 管理器。DSN 是一個把數(shù)據(jù)庫、驅(qū)動程序、一些可選的設(shè)置連接起來的命名配置。</p><p><b>  5 系統(tǒng)實現(xiàn)與運行</b></p><p>  根據(jù)需求分析及系統(tǒng)設(shè)計情況,結(jié)合JSP、Access的特點開發(fā)出了圖書網(wǎng)站,在進行編碼測試之后,網(wǎng)站實現(xiàn)了上面分析的基本功能。在滿足運行環(huán)境的條件

73、下,對系統(tǒng)主要功能的實現(xiàn)及運行界面介紹如下。</p><p>  5.1 登錄頁面的實現(xiàn)</p><p>  論壇登陸login.jsp頁面效果及詳細功能:</p><p><b>  ·管理員登陸</b></p><p><b>  ·普通用戶登陸</b></p>

74、<p><b>  ·新用戶注冊</b></p><p>  2、用戶注冊界面register.jsp:</p><p>  ·用戶詳細信息填寫,其中用戶名,密碼,密碼確認,身份證號,電子郵件為必填選項,且密碼長度大于六位,電子郵件必須合法。</p><p><b>  ·返回登陸頁面<

75、/b></p><p>  3、用戶由verify.jsp進入訪問頁面home.jsp:</p><p>  (1)管理員訪問首頁,用戶名:admin,密碼:admin</p><p>  (2)普通用戶訪問首頁,用戶名:zl,密碼:123456</p><p>  4、管理員用管理戶頁面manageuser.jsp:</p>

76、;<p>  5、管理員用查看用戶信息頁面detailuser.jsp:</p><p>  6、管理員修改用戶信息頁面updateuser.jsp:</p><p>  7、管理員刪除用戶信息網(wǎng)頁dealdeleteuser.jsp:</p><p>  8、管理員添加圖書網(wǎng)頁addbook.jsp:</p><p>  9、

77、管理員處理訂單頁面listorder.jsp:</p><p>  10、管理員處理訂單狀態(tài)頁面detailorder.jsp:</p><p>  11、管理圖書頁面list.jsp:</p><p>  12、管理員查看圖書詳細信息detail.jsp:</p><p>  13、管理員修改圖書信息updatebook.jsp:</

78、p><p>  14、用戶購買圖書頁面list.jsp:</p><p>  15、用戶購買查看修改購物車頁面cart.jsp:</p><p>  16、用戶購買查看訂單頁面listorder.jsp:</p><p>  16、用戶修改個人信息頁面updateuser.jsp:</p><p><b>  六

79、,用戶使用說明:</b></p><p>  用戶需要設(shè)置數(shù)據(jù)源,名為bookstore。放在webapps下即可。</p><p>  對本系統(tǒng)的評價,課程設(shè)計的收獲與不足。</p><p>  網(wǎng)站還待完善,本網(wǎng)站以JSP語言作為開發(fā)工具,采用 Microsoft Access進行數(shù)據(jù)庫設(shè)計,建立了一個電子書店網(wǎng)站,通過后臺信息發(fā)布管理實現(xiàn)了圖書信息

80、的展示,實現(xiàn)了該網(wǎng)站的基本功能。文章從需求分析、系統(tǒng)設(shè)計和系統(tǒng)實施各方面對整個系統(tǒng)進行了詳細分析?,F(xiàn)國內(nèi)對于用戶購買圖書的方式仍主要停留在現(xiàn)場購買的模式上,但非現(xiàn)場購買也越來越流行。該網(wǎng)站的成功開發(fā),能夠免除人們的在場選購和排隊。由于時間有限,網(wǎng)站在設(shè)計上并沒有在提高用戶體驗效果上作出過多的考慮,因此,本網(wǎng)站在用戶體驗上存在一定的缺陷。比如即將有的圖書信息在網(wǎng)站上暫時并不可見,對于圖書的介紹也沒有特別完善,僅僅只是以購買為主。在訂夠成功

溫馨提示

  • 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. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論