論文 網(wǎng)上書(shū)店系統(tǒng)
《論文 網(wǎng)上書(shū)店系統(tǒng)》由會(huì)員分享,可在線閱讀,更多相關(guān)《論文 網(wǎng)上書(shū)店系統(tǒng)(39頁(yè)珍藏版)》請(qǐng)?jiān)谘b配圖網(wǎng)上搜索。
1、畢業(yè)設(shè)計(jì)說(shuō)明書(shū)學(xué)生姓名學(xué)生姓名學(xué)學(xué) 號(hào)號(hào)院院 (系系)計(jì)算機(jī)科學(xué)系專(zhuān)專(zhuān) 業(yè)業(yè)計(jì)算機(jī)科學(xué)與技術(shù)題題 目目網(wǎng)上書(shū)店系統(tǒng)指導(dǎo)教師指導(dǎo)教師 (姓 名) (專(zhuān)業(yè)技術(shù)職稱(chēng)/學(xué)位)2007年5月摘摘 要要: 網(wǎng)上書(shū)店系統(tǒng)屬于典型的電子商務(wù)系統(tǒng),具有一定的實(shí)用價(jià)值。本文描述了一個(gè)功能較完善的網(wǎng)上書(shū)店系統(tǒng)的開(kāi)發(fā)過(guò)程,它集在線銷(xiāo)售和后臺(tái)管理功能為一體。文中主淮陰師范學(xué)院畢業(yè)論文(設(shè)計(jì))1要描述了該系統(tǒng)的設(shè)計(jì)與實(shí)施方案,并對(duì)系統(tǒng)中關(guān)鍵技術(shù)作了較詳細(xì)的介紹;最后針對(duì)該系統(tǒng)提出了改進(jìn)方向。關(guān)鍵詞關(guān)鍵詞:網(wǎng)上書(shū)店,ASP.NET,C#,SQL Server 2000,B/S 結(jié)構(gòu),購(gòu)物車(chē)淮陰師范學(xué)院畢業(yè)論文(設(shè)計(jì))2Ab
2、stract: On-line bookstore system is a typical e-commerce system .It is very practical. This paper describes a development process of an on-line bookstore. This system includes online sales and background administration. The article mainly introduces the design and implementation schema, and explains
3、 the pivotal technology. At last, it points out the way to improve the systems performance.Keywords: online bookstores, asp. net, C#, SQL server 2000, B/S structure, cart 淮陰師范學(xué)院畢業(yè)論文(設(shè)計(jì))3 目錄目錄1 1 引言引言.5 51.11.1 項(xiàng)目背景項(xiàng)目背景.5 51.21.2 研究意義研究意義.5 51.31.3 本文所做的工作本文所做的工作.5 5 系統(tǒng)解決方案系統(tǒng)解決方案.6 62.12.1 相關(guān)技術(shù)相關(guān)技術(shù).6
4、 62.22.2 體系結(jié)構(gòu)體系結(jié)構(gòu).8 82.32.3 技術(shù)開(kāi)發(fā)方案技術(shù)開(kāi)發(fā)方案.10102.42.4 系統(tǒng)技術(shù)平臺(tái)系統(tǒng)技術(shù)平臺(tái).10103 3 系統(tǒng)設(shè)計(jì)說(shuō)明系統(tǒng)設(shè)計(jì)說(shuō)明.10103.13.1 系統(tǒng)框架系統(tǒng)框架.10103.23.2 消費(fèi)客戶(hù)使用案例消費(fèi)客戶(hù)使用案例.11113.33.3 系統(tǒng)管理員使用案例系統(tǒng)管理員使用案例 .12123.43.4 系統(tǒng)的其他功能模塊介紹系統(tǒng)的其他功能模塊介紹 .14144 4 數(shù)據(jù)庫(kù)設(shè)計(jì)數(shù)據(jù)庫(kù)設(shè)計(jì) .14144.14.1 數(shù)據(jù)模型數(shù)據(jù)模型.14144.24.2 數(shù)據(jù)表設(shè)計(jì)數(shù)據(jù)表設(shè)計(jì).16164.34.3 存儲(chǔ)過(guò)程設(shè)計(jì)存儲(chǔ)過(guò)程設(shè)計(jì).18185 5 網(wǎng)上書(shū)店系統(tǒng)
5、主要網(wǎng)上書(shū)店系統(tǒng)主要/ /關(guān)鍵技術(shù)關(guān)鍵技術(shù).20205.15.1 數(shù)據(jù)庫(kù)連接模塊設(shè)計(jì)數(shù)據(jù)庫(kù)連接模塊設(shè)計(jì) .20205.25.2 銷(xiāo)售模塊設(shè)計(jì)銷(xiāo)售模塊設(shè)計(jì) .22225.35.3 其它模塊設(shè)計(jì)其它模塊設(shè)計(jì) .29296 6 測(cè)試運(yùn)行情況測(cè)試運(yùn)行情況.32326.16.1 測(cè)試運(yùn)行情況測(cè)試運(yùn)行情況.32326.26.2 程序有待改進(jìn)方面程序有待改進(jìn)方面.3434結(jié)論結(jié)論.3535淮陰師范學(xué)院畢業(yè)論文(設(shè)計(jì))4參考文獻(xiàn)參考文獻(xiàn).3636致致 謝謝.3737淮陰師范學(xué)院畢業(yè)論文(設(shè)計(jì))51 1 引言引言1.11.1 項(xiàng)目背景項(xiàng)目背景隨著互聯(lián)網(wǎng)的迅速發(fā)展,人們對(duì)網(wǎng)上購(gòu)物的興趣和熱情也日益提升,與此同時(shí),
6、網(wǎng)上書(shū)店作為最適合網(wǎng)上銷(xiāo)售圖書(shū)的銷(xiāo)售方式,也逐漸得到人們的青睞。越來(lái)越多的人直接從網(wǎng)上書(shū)店獲取所需的圖書(shū),自 1995 年 7 月全球第一個(gè)網(wǎng)上書(shū)店亞馬遜書(shū)店()在美國(guó)開(kāi)業(yè)以來(lái),網(wǎng)上書(shū)店如雨后春筍般地涌現(xiàn)。專(zhuān)家估計(jì) 2006 年或更早,成人消費(fèi)圖書(shū)市場(chǎng)份額中,網(wǎng)上書(shū)店約占 50%。網(wǎng)上書(shū)店作為一種新的圖書(shū)發(fā)行主體,隨著數(shù)字圖書(shū)的出版而占據(jù)越來(lái)越重要的地位。網(wǎng)上書(shū)店在我國(guó)起步較晚,但因其眾多優(yōu)勢(shì)而發(fā)展很快。目前國(guó)內(nèi)具有代表性的網(wǎng)上書(shū)店有當(dāng)當(dāng)網(wǎng)()和卓越網(wǎng)()。1.21.2 研究意義研究意義21 世紀(jì)是個(gè)以網(wǎng)絡(luò)為核心的信息時(shí)代,數(shù)字化、網(wǎng)絡(luò)化與信息化是 21 世紀(jì)的時(shí)代特征。隨著互聯(lián)網(wǎng)的不斷發(fā)展以
7、及全球經(jīng)濟(jì)一體化的逐步深入,網(wǎng)上銷(xiāo)售已成為現(xiàn)代傳統(tǒng)書(shū)店必不可少的經(jīng)營(yíng)策略之一。網(wǎng)上書(shū)店系統(tǒng)具有傳統(tǒng)書(shū)店無(wú)法比擬的優(yōu)點(diǎn),主要體現(xiàn)為:1.具有極強(qiáng)的方便性和快捷性,顧客可以足不出戶(hù)購(gòu)買(mǎi)到所需圖書(shū);2.加快圖書(shū)流通、交易的速度,從而能夠迅速開(kāi)拓目標(biāo)市場(chǎng),實(shí)現(xiàn)投入和回報(bào)效益的最大化;3.加快顧客信息反饋,有利于提高服務(wù)質(zhì)量,擴(kuò)大消費(fèi)群,并最終獲取更高的收益。隨著我國(guó)互聯(lián)網(wǎng)的更加普及和網(wǎng)上書(shū)店的日趨成熟,在線購(gòu)買(mǎi)書(shū)籍的消費(fèi)群體將會(huì)越來(lái)越大,網(wǎng)上書(shū)店的市場(chǎng)潛力將會(huì)得到充分發(fā)揮。1.31.3 本文所做的工作本文所做的工作網(wǎng)上書(shū)店系統(tǒng)是集在線銷(xiāo)售和后臺(tái)管理為一體的電子商務(wù)系統(tǒng),也是基于 B/S 體系結(jié)構(gòu)的網(wǎng)絡(luò)
8、應(yīng)用系統(tǒng),其中牽涉到網(wǎng)站設(shè)計(jì)、網(wǎng)絡(luò)數(shù)據(jù)庫(kù)的連接和基于 WEB 應(yīng)用程序開(kāi)發(fā)等相關(guān)技術(shù)。為了開(kāi)發(fā)該網(wǎng)上書(shū)店系統(tǒng),并且使系統(tǒng)能夠真正達(dá)到“適用、好用”的標(biāo)準(zhǔn),本人認(rèn)真學(xué)習(xí)了 ASP.NET 程序設(shè)計(jì)(基于 C#語(yǔ)言) 、數(shù)據(jù)庫(kù)搭建、軟件工程等諸多相關(guān)教程以及構(gòu)建網(wǎng)站所需技術(shù)的理論知識(shí)。對(duì)于以下網(wǎng)頁(yè)制作工具:Dreamweaver、 Flash、 淮陰師范學(xué)院畢業(yè)論文(設(shè)計(jì))6SwishMX 以及圖像處理工具 Photoshop 做了深入的學(xué)習(xí),基本掌握其使用方法與技巧,為網(wǎng)上書(shū)店系統(tǒng)的站點(diǎn)設(shè)計(jì)做好技術(shù)的支持。熟練掌握 SQL Server 中數(shù)據(jù)庫(kù)的建立、管理與維護(hù);利用 ASP.NET(Acti
9、ve Server Pages)技術(shù)訪問(wèn)后臺(tái)數(shù)據(jù)庫(kù);借助 IIS(Internet Information Server)在網(wǎng)上進(jìn)行信息發(fā)布以及對(duì)系統(tǒng)性能進(jìn)行優(yōu)化等相關(guān)技術(shù)。另外,為了增強(qiáng)系統(tǒng)的實(shí)用性,使之能盡量與實(shí)際的應(yīng)用系統(tǒng)相吻合,本人對(duì)許多同類(lèi)網(wǎng)站的內(nèi)容、功能進(jìn)行了分析與對(duì)比。吸取了它們的可取之處,并在借鑒前人經(jīng)驗(yàn)的基礎(chǔ)上有所創(chuàng)新,挖掘自己的獨(dú)特之處,構(gòu)建出目前較為流行的基于三層體系結(jié)構(gòu)技術(shù)的網(wǎng)上書(shū)店系統(tǒng),它能夠很好地反映并模擬在線電子商務(wù)的運(yùn)作過(guò)程。 系統(tǒng)解決方案系統(tǒng)解決方案2.12.1 相關(guān)技術(shù)相關(guān)技術(shù)2.1.12.1.1 VisualVisual Studio.NETStudio.
10、NET 20032003 平臺(tái)和平臺(tái)和 C#C#語(yǔ)言介紹語(yǔ)言介紹Visual Studio.NET 2003 是一個(gè)功能強(qiáng)大、高效并且可擴(kuò)展的編程環(huán)境。有許多激動(dòng)人心的新功能,它提供統(tǒng)一的集成開(kāi)發(fā)環(huán)境,支持在同樣的開(kāi)發(fā)環(huán)境里用 Visual Basic、Visual C+、Visual C#、Visual J#和其他數(shù)十種編程語(yǔ)言,可以編寫(xiě)、調(diào)試和部署各種應(yīng)用程序。它充分展現(xiàn)了應(yīng)用程序的開(kāi)發(fā)潛能、并提供了生成應(yīng)用程序的所需要的工具和技術(shù)。這些應(yīng)用程序給當(dāng)今的企業(yè)、機(jī)構(gòu)提供了強(qiáng)大的支持,為開(kāi)發(fā)下一代以 XML Web 服務(wù)為中心的應(yīng)用程序而設(shè)計(jì),并推動(dòng)下一代基于 XML Web 服務(wù)軟件的發(fā)展,
11、是有始以來(lái)功能最強(qiáng)大、最受歡迎的軟件開(kāi)發(fā)工具。C#(發(fā)音為“C Sharp”)是一門(mén)簡(jiǎn)單、現(xiàn)代、優(yōu)雅、面向?qū)ο?、?lèi)型安全、平臺(tái)獨(dú)立的一門(mén)新型組件編程語(yǔ)言。它雖然是一種新語(yǔ)言,但卻很難在這種語(yǔ)言中找到新的概念,其語(yǔ)法風(fēng)格不僅源自 C/C+家族,而且融合了 Visual Basic 的高效和 C/C+強(qiáng)大,因此是微軟為奠定其下一互聯(lián)網(wǎng)霸主地位而打造的 Microsoft.NET 平臺(tái)的主流語(yǔ)言。依本人看來(lái),優(yōu)點(diǎn)不外乎以下兩方面:其一,對(duì)于花費(fèi)很多時(shí)間學(xué)會(huì) C、C+語(yǔ)言的程序員來(lái)說(shuō),可以不必丟棄以前的知識(shí),就可以使用這種新的語(yǔ)言開(kāi)發(fā)程序,盡管 C#中有一些新概念、新技術(shù)和新函數(shù),但一般而言它的語(yǔ)言及
12、其語(yǔ)法是跟 C、C+類(lèi)似的,而且對(duì)于用 C+編寫(xiě)好的代碼也可被重用,主要原因是 C#具有調(diào)用已有代碼和系統(tǒng)庫(kù)中的庫(kù)函數(shù)的機(jī)制;其二,組件編程已經(jīng)成為當(dāng)今世界軟件業(yè)面向下一代程序開(kāi)發(fā)的一致選擇,是 90 年代面向?qū)ο缶幊痰纳疃劝l(fā)展。C#生逢其時(shí),占盡天時(shí)地利, “第一等的面向組件編程的支淮陰師范學(xué)院畢業(yè)論文(設(shè)計(jì))7持”也決不是簡(jiǎn)單說(shuō)說(shuō)那么輕松。實(shí)際上,組件特性已經(jīng)深深植入 C#語(yǔ)言的各個(gè)層面,可為是 C#銳利(Sharp)之處。2.1.22.1.2 ASP.NETASP.NET 簡(jiǎn)介簡(jiǎn)介ASP.NET 是 M 的一部分,作為戰(zhàn)略產(chǎn)品,不僅僅是 Active Server Page (ASP)
13、的下一個(gè)版本,它還提供了一個(gè)統(tǒng)一的 Web 開(kāi)發(fā)模型,其中包括開(kāi)發(fā)人員生成企業(yè)級(jí) Web 應(yīng)用程序所需的各種服務(wù)。ASP.NET 的語(yǔ)法在很大程度上與 ASP 兼容,同時(shí)它還提供一種新的編程模型和結(jié)構(gòu),可生成伸縮性和穩(wěn)定性更好的應(yīng)用程序,并提供更好的安全保護(hù)??梢酝ㄟ^(guò)在現(xiàn)有 ASP 應(yīng)用程序中逐漸添加 ASP.NET 功能,隨時(shí)增強(qiáng) ASP 應(yīng)用程序的功能。ASP.NET 可以用已編譯的基于 .NET 環(huán)境的可以用任何與 .NET 兼容的語(yǔ)言(包括 Visual Basic .NET、C# 和 JScript .NET.)創(chuàng)作應(yīng)用程序。另外,任何 ASP.NET 應(yīng)用程序都可以使用整個(gè) .NE
14、T Framework,開(kāi)發(fā)人員可以方便地獲得這些技術(shù),其中包括托管的公共語(yǔ)言運(yùn)行庫(kù)環(huán)境、類(lèi)型安全、繼承等等。ASP.NET 可以無(wú)縫地與 WYSIWYG HTML 編輯器和其他編程工具(包括 Microsoft Visual Studio .NET)一起工作。這不僅使得 Web 開(kāi)發(fā)更加方便,而且還能提供這些工具必須提供的所有優(yōu)點(diǎn),包括開(kāi)發(fā)人員可以用來(lái)將服務(wù)器控件拖放到 Web 頁(yè)的 GUI 和完全集成的調(diào)試支持。因此,對(duì)于程序員來(lái)說(shuō),可以更方便地開(kāi)發(fā) Web 應(yīng)用程序,這些是跟微軟為 ASP. NET 設(shè)計(jì)的以下策略分不開(kāi)的:易于寫(xiě)出結(jié)構(gòu)清晰的代碼、代碼易于重用和共享、可用編譯類(lèi)語(yǔ)言編寫(xiě)等
15、等。 2.1.32.1.3 SQLSQL ServerServer 20002000 簡(jiǎn)介簡(jiǎn)介 SQL Server 2000 是 Microsoft 公司 2000 年推出的 SQL Server 數(shù)據(jù)庫(kù)管理系統(tǒng),它是一個(gè)杰出的數(shù)據(jù)庫(kù)平臺(tái),可用于大型聯(lián)機(jī)事務(wù)處理、數(shù)據(jù)倉(cāng)庫(kù)以及電子商務(wù)等。 其特點(diǎn)有如下幾點(diǎn): 1真正的客戶(hù)機(jī)/服務(wù)器體系結(jié)構(gòu)。 2圖形化用戶(hù)界面。 3豐富的編程接口工具。 4SQL Server 與 Windows NT 完全集成。 5具有很好的伸縮性。 淮陰師范學(xué)院畢業(yè)論文(設(shè)計(jì))86對(duì) Web 技術(shù)的支持。7SQL Server 提供數(shù)據(jù)倉(cāng)庫(kù)功能。2.1.42.1.4 ADO
16、.NETADO.NET 簡(jiǎn)介簡(jiǎn)介ADO.NET 是由.NET framework 為與數(shù)據(jù)庫(kù)中的數(shù)據(jù)進(jìn)行交互而提供的一組對(duì)象類(lèi)的名稱(chēng)。我們知道,面向?qū)ο缶幊痰挠嘘P(guān)主要優(yōu)點(diǎn)是可以把各種復(fù)雜的功能封裝在一個(gè)自包含的單元中,接著要處理的就是個(gè)定義好的接口中,它由一些方法和屬性組成。在 ADO.NET 中,我們將處理斷開(kāi)連接的數(shù)據(jù)集,在網(wǎng)站的訪問(wèn)者請(qǐng)求數(shù)據(jù)時(shí),首先建立連接,傳送數(shù)據(jù),之后關(guān)閉連接;接著,訪問(wèn)者就可以修改數(shù)據(jù),但這些修改不會(huì)在數(shù)據(jù)源中立即更新(如果需要對(duì)訪問(wèn)者所做的修改更新到數(shù)據(jù)庫(kù),必須重新打開(kāi)連接) 。這種斷開(kāi)連接進(jìn)行訪問(wèn)數(shù)據(jù)庫(kù)的最大優(yōu)點(diǎn)是效率高、可伸縮性好。在以往的數(shù)據(jù)庫(kù)訪問(wèn)中必須為
17、用戶(hù)一直保持連接,直到該用戶(hù)的會(huì)話結(jié)束為止,而 Web 中可能同時(shí)處理上千個(gè)并行用戶(hù),可想而知,如果為每個(gè)用戶(hù)同時(shí)保持連接在需要的系統(tǒng)資源是非常昂貴的。因此,使用斷開(kāi)式連接數(shù)據(jù)可以提高應(yīng)用程序的執(zhí)行效率,并能處理更多的工作負(fù)載(即它們的伸縮性更好) 。2.22.2 體系結(jié)構(gòu)體系結(jié)構(gòu)2.2.12.2.1 B/SB/S 系統(tǒng)介紹系統(tǒng)介紹B/S(browser/server,簡(jiǎn)稱(chēng) B/S)模式,即瀏覽器/服務(wù)器模式,它是基于Intranet 的需求而出現(xiàn)并發(fā)展的。2.2.22.2.2 三層體系結(jié)構(gòu)介紹三層體系結(jié)構(gòu)介紹B/S 模式,是一種從傳統(tǒng)的二層 C/S 模式發(fā)展起來(lái)的新的網(wǎng)絡(luò)結(jié)構(gòu)模式,它通常采用
18、三層結(jié)構(gòu), 三層體系結(jié)構(gòu)將應(yīng)用程序劃分為三個(gè)邏輯層面,這三個(gè)邏輯層如下:(1)用戶(hù)服務(wù)層(User Services Tier),也稱(chēng)為表現(xiàn)服務(wù)(Presebtation Services),是用戶(hù)與應(yīng)用程序進(jìn)行交互的端點(diǎn)。通常由 WIN32 或者基于瀏覽器的圖形用戶(hù)界面應(yīng)用構(gòu)成。在該層用戶(hù)可以查看、輸入和處理數(shù)據(jù)。從用戶(hù)的角度來(lái)看,用戶(hù)服務(wù)層就是整個(gè)應(yīng)用。在該電子商務(wù)系統(tǒng)中,用戶(hù)服務(wù)層由 ASP.NET Web Forms 構(gòu)成,它可以讓消費(fèi)客戶(hù)瀏覽和搜索圖書(shū),向他們的購(gòu)物車(chē)增加圖書(shū),并且下訂單。(2)應(yīng)用服務(wù)層,也稱(chēng)為中間層,它負(fù)責(zé)封裝事務(wù)處理、商務(wù)規(guī)則、數(shù)據(jù)訪問(wèn)及其他的核心應(yīng)用邏輯。應(yīng)用
19、服務(wù)層可以有效地作為前臺(tái)用戶(hù)服務(wù)層與后臺(tái)數(shù)據(jù)服務(wù)和數(shù)據(jù)淮陰師范學(xué)院畢業(yè)論文(設(shè)計(jì))9存儲(chǔ)之間的橋梁。在電子商務(wù)系統(tǒng)中,應(yīng)用服務(wù)層將由在 windows 組件服務(wù)中執(zhí)行的事務(wù)處理和非事務(wù)處理.net 服務(wù)組件構(gòu)成。(3)數(shù)據(jù)服務(wù)層,該層負(fù)責(zé)檢索和操作在一個(gè)或者多個(gè)數(shù)據(jù)存儲(chǔ)中存儲(chǔ)的數(shù)據(jù)。通過(guò)將數(shù)據(jù)訪問(wèn)和操作分離到獨(dú)立的邏輯層中,就可以將商品服務(wù)層從附屬數(shù)據(jù)存儲(chǔ)的細(xì)節(jié)中抽象出去。在該電子商務(wù)系統(tǒng)中。數(shù)據(jù)服務(wù)層將實(shí)現(xiàn)為一組封裝了 sql 數(shù)據(jù)訪問(wèn)邏輯,并向商務(wù)組件返回結(jié)果集的存儲(chǔ)過(guò)程。商務(wù)服務(wù)組件通過(guò)這些存儲(chǔ)過(guò)程訪問(wèn)數(shù)據(jù)庫(kù)中的數(shù)據(jù)。整個(gè)電子商務(wù)系統(tǒng)的邏輯體系結(jié)構(gòu)如圖 2_1 所示。用戶(hù)服務(wù)用戶(hù)交互頁(yè)面
20、導(dǎo)航數(shù)據(jù)表現(xiàn)業(yè)務(wù)服務(wù)事務(wù)處理邏輯業(yè)務(wù)規(guī)則定義數(shù)據(jù)訪問(wèn)數(shù)據(jù)服務(wù)數(shù)據(jù)檢索數(shù)據(jù)操作數(shù)據(jù)驗(yàn)證數(shù)據(jù)存儲(chǔ)數(shù)據(jù)存儲(chǔ)數(shù)據(jù)關(guān)系數(shù)據(jù)完整性圖 2_1 電子商務(wù)系統(tǒng)的邏輯體系結(jié)構(gòu)圖2.2.32.2.3 Browser/ServerBrowser/Server 模型工作模型工作步驟步驟B/S 模型的工作步驟一般包括以下七步:1用戶(hù)打開(kāi)瀏覽器。2輸入或自動(dòng)啟動(dòng)主頁(yè)的 URL (Uniform Resource Locator),瀏覽器生成一個(gè)HTTP 請(qǐng)求并把它發(fā)給指定的 Internet 服務(wù)器。3服務(wù)器發(fā)回主頁(yè)的 HTML (Hypertext Markup Language)頁(yè)面。瀏覽器將其顯示在屏幕上。數(shù)據(jù)庫(kù).
21、NET 的服務(wù)器組件 ASP.NET 的 web 服務(wù)SQL Server 的存儲(chǔ)過(guò)程ASP.NET 的 Web Forms淮陰師范學(xué)院畢業(yè)論文(設(shè)計(jì))104用戶(hù)在主頁(yè)面上進(jìn)行操作(如:點(diǎn)擊、鍵入等)。5瀏覽器生成相應(yīng)的 HTTP 要求,發(fā)送給相應(yīng)的服務(wù)器。6服務(wù)器收到請(qǐng)求后,查看本站點(diǎn)是否擁有這個(gè)文檔。如果有,就將它放入響應(yīng)信息中返回給瀏覽器。7瀏覽器收到響應(yīng),查看頭文件的格式,判斷能否直接顯示。否則,調(diào)用對(duì)應(yīng)的幫助應(yīng)用程序或外掛程序處理顯示。2.32.3 技術(shù)開(kāi)發(fā)方案技術(shù)開(kāi)發(fā)方案我們根據(jù)應(yīng)用系統(tǒng)的有關(guān)規(guī)范標(biāo)準(zhǔn)和具體業(yè)務(wù)需求,結(jié)合軟件開(kāi)發(fā)技術(shù)發(fā)展?fàn)顩r,選擇了以下相應(yīng)系統(tǒng)軟件或工具軟件,以確定
22、科學(xué)、合理的開(kāi)發(fā)方案。具體如下表所述:類(lèi)別軟件名稱(chēng)軟件用途數(shù)據(jù)庫(kù)SQL Server 2000后臺(tái)數(shù)據(jù)庫(kù)Web 服務(wù)IIS后臺(tái)服務(wù)器開(kāi)發(fā)工具Visual Studio.NET 2003后臺(tái)編碼,頁(yè)面設(shè)計(jì)2.42.4 系統(tǒng)技術(shù)平臺(tái)系統(tǒng)技術(shù)平臺(tái)硬件:WEB 服務(wù)器 1 臺(tái)、客戶(hù)機(jī)若干臺(tái)、網(wǎng)卡、集線器等。軟件:WEB 服務(wù)器為 Windows2000 及以上版本,安裝有 IIS??蛻?hù)機(jī)安裝 Internet Explorer 或 Netscape Communicator。相關(guān)軟件,如:IE、SQL Server 2000、VS.NET 等等。3 3 系統(tǒng)設(shè)計(jì)說(shuō)明系統(tǒng)設(shè)計(jì)說(shuō)明3.13.1 系統(tǒng)框架系
23、統(tǒng)框架3.1.13.1.1 系統(tǒng)主要功能模塊系統(tǒng)主要功能模塊網(wǎng)上書(shū)店系統(tǒng)主要包括兩大模塊:一是系統(tǒng)管理模塊(管理員登陸),二是系統(tǒng)的銷(xiāo)售模塊(顧客登陸)。在前兩個(gè)模塊下又各自包括分若干小模塊,具體功能模塊結(jié)構(gòu)圖如圖淮陰師范學(xué)院畢業(yè)論文(設(shè)計(jì))113_1 所示:圖 3_1 網(wǎng)上書(shū)店系統(tǒng)功能模塊結(jié)構(gòu)圖3.23.2 消費(fèi)客戶(hù)使用案例消費(fèi)客戶(hù)使用案例根據(jù)銷(xiāo)售模塊的基本功能,可以用圖 3_2 表示消費(fèi)客戶(hù)進(jìn)入網(wǎng)上書(shū)店后系統(tǒng)提供的服務(wù)流程。 圖 3_2 網(wǎng)上書(shū)店系統(tǒng)提供的服務(wù)流程具體模塊功能解釋如下:注冊(cè)模塊:建立賬號(hào),如果顧客以前沒(méi)有建立賬號(hào),則只可以瀏覽圖書(shū)基本信息和進(jìn)行圖書(shū)的高級(jí)搜索,相應(yīng)的該用戶(hù)沒(méi)
24、有權(quán)限進(jìn)入購(gòu)物車(chē)管理以及查看購(gòu)物記錄等頁(yè)面。所以要求用戶(hù)在下訂單之前必須建立賬號(hào),同時(shí)在用戶(hù)創(chuàng)建新賬號(hào)的時(shí)候,必須輸入用戶(hù)名(系統(tǒng)會(huì)自動(dòng)檢查該用戶(hù)名是否已存在) 、聯(lián)系方式以及發(fā)貨地址。用戶(hù)在建立新賬號(hào)之后就可以具有合法登錄系統(tǒng)的身份,可以進(jìn)行相關(guān)的購(gòu)書(shū)活動(dòng)。瀏覽圖書(shū)查看圖書(shū)搜索圖書(shū)選擇圖書(shū)創(chuàng)建賬號(hào)登錄管理購(gòu)物車(chē)注冊(cè)查看訂單網(wǎng)上書(shū)店系統(tǒng)添加新書(shū)管理模塊銷(xiāo)售模塊修改書(shū)目信息刪除書(shū)目客戶(hù)管理圖書(shū)搜索訂單管理銷(xiāo)售統(tǒng)計(jì)圖書(shū)瀏覽購(gòu)物車(chē)管理訂單信息瀏覽淮陰師范學(xué)院畢業(yè)論文(設(shè)計(jì))12登錄模塊:如果消費(fèi)客戶(hù)在沒(méi)有登錄情況下,想要查看購(gòu)物車(chē),下訂單或者訪問(wèn)其過(guò)去的購(gòu)買(mǎi)記錄,系統(tǒng)會(huì)轉(zhuǎn)到一個(gè)提示頁(yè)面,要求顧客先要
25、登錄。如果是沒(méi)有注冊(cè)的用戶(hù),需要注冊(cè)建立新賬號(hào)。如果登錄成功,系統(tǒng)將會(huì)重新刷新首頁(yè),并且提示該用戶(hù)已經(jīng)成功登錄的歡迎信息,使用者可以在購(gòu)物會(huì)話期間的任何時(shí)候進(jìn)行各項(xiàng)操作。圖書(shū)瀏覽模塊:為了讓客戶(hù)購(gòu)買(mǎi)圖書(shū),我們必須讓客戶(hù)了解該圖書(shū)的相關(guān)信息,然后再作出購(gòu)買(mǎi)的決定。在首頁(yè)我們提供了有限的最新上架的圖書(shū)信息,消費(fèi)者可以通過(guò)瀏覽圖書(shū)目錄,查看和選擇圖書(shū)。當(dāng)用戶(hù)瀏覽目錄的時(shí)候,可以遍歷圖書(shū)類(lèi)別的層次,查看屬于各個(gè)類(lèi)別的圖書(shū)列表,并且客戶(hù)可以針對(duì)某項(xiàng)具體的書(shū)目查看更詳細(xì)的信息,以便決定是否購(gòu)買(mǎi)或者放入購(gòu)物車(chē)以供將來(lái)的選擇參考。查看圖書(shū)模塊:當(dāng)消費(fèi)者通過(guò)瀏覽圖書(shū)類(lèi)別的目錄或者執(zhí)行高級(jí)搜索搜索到某一圖書(shū)之后,
26、就可以查看該圖書(shū)的所有相關(guān)信息,包括書(shū)名、作者、出版社、原來(lái)價(jià)格、打折情況、實(shí)際價(jià)格、圖書(shū)的描述等更為詳細(xì)的信息,以便決定是否購(gòu)買(mǎi)或者放入購(gòu)物車(chē)以供將來(lái)的選擇參考。高級(jí)搜索模塊:后臺(tái)管理模塊和銷(xiāo)售模塊中都提供了高級(jí)搜索功能。在銷(xiāo)售模塊中,圖書(shū)的高級(jí)搜索是出于購(gòu)買(mǎi)的目的,緊接高級(jí)搜索的下一個(gè)功能是對(duì)圖書(shū)的預(yù)定操作。對(duì)于圖書(shū)的高級(jí)搜索系統(tǒng)提供了多條件組合查詢(xún)、邏輯組配、限定范圍,包括按書(shū)類(lèi)、作者、出版社等內(nèi)容任意一項(xiàng)或幾項(xiàng)的內(nèi)容進(jìn)行查詢(xún),同時(shí)支持模糊查找功能。選擇圖書(shū)模塊:當(dāng)查看完圖書(shū)之后,選擇要購(gòu)買(mǎi)的圖書(shū),消費(fèi)用戶(hù)就能夠?qū)⑵浞诺剿麄兊奶摂M購(gòu)物車(chē)中。管理購(gòu)物車(chē)模塊:電子商務(wù)的核心是購(gòu)物車(chē),消費(fèi)客戶(hù)
27、能夠查看虛擬購(gòu)物車(chē)內(nèi)的所有圖書(shū),并且可以刪除所選擇的訂單或者修改該訂單購(gòu)買(mǎi)圖書(shū)的數(shù)量。當(dāng)客戶(hù)刪除訂單或者修改數(shù)量之后,系統(tǒng)會(huì)重新計(jì)算各訂單的價(jià)格以及總價(jià)格,如果顧客的購(gòu)物車(chē)為空,就不能夠執(zhí)行購(gòu)買(mǎi)操作,此時(shí)會(huì)彈出一個(gè)友好的警告信息。查看購(gòu)物記錄模塊:在查看和管理了購(gòu)物車(chē)之后,顧客就可以為選擇的圖書(shū)作出購(gòu)買(mǎi)的決定??蛻?hù)能夠?yàn)g覽購(gòu)買(mǎi)記錄上的所有有關(guān)圖書(shū)信息,如購(gòu)買(mǎi)日期、是否配送、應(yīng)付總額等(應(yīng)付總額是未配送圖書(shū)價(jià)格之和)。3.33.3 系統(tǒng)管理員使用案例系統(tǒng)管理員使用案例在網(wǎng)上書(shū)店系統(tǒng)需要強(qiáng)大的后臺(tái)管理功能,而且只有具有系統(tǒng)管理員權(quán)限的用戶(hù)才可以使用該功能。后臺(tái)管理主要是對(duì)書(shū)籍和客戶(hù)資料的管理,具體
28、包括:對(duì)書(shū)目的查詢(xún)、添加、修改、刪除;對(duì)圖書(shū)銷(xiāo)售的統(tǒng)計(jì)、客戶(hù)的管理、訂單的管理等。網(wǎng)上書(shū)店系統(tǒng)后淮陰師范學(xué)院畢業(yè)論文(設(shè)計(jì))13臺(tái)管理流程如圖 3_3 所示:訂單管理客戶(hù)管理添加新書(shū)高級(jí)搜索銷(xiāo)售統(tǒng)計(jì)簡(jiǎn)單搜索刪除書(shū)目更新修改圖 3_3 網(wǎng)上書(shū)店系統(tǒng)后臺(tái)管理流程具體模塊功能解釋如下:搜索模塊:搜索分為簡(jiǎn)單搜索和高級(jí)搜索兩種,它們都是為了更新對(duì)書(shū)目信息而提供的。簡(jiǎn)單搜索只能通過(guò)書(shū)號(hào)進(jìn)行的搜索(如果輸入的格式不正確,將會(huì)彈出提示信息);高級(jí)搜索提供了多條件組合查詢(xún)、邏輯組配、限定范圍,具體包括:按書(shū)類(lèi)、作者、出版社等內(nèi)容任意一項(xiàng)或幾項(xiàng)的內(nèi)容進(jìn)行查詢(xún)。另外,為了增強(qiáng)查詢(xún)能力系統(tǒng)還提供模糊查詢(xún)功能,即把符
29、合模糊條件的書(shū)目一一列出。一般情況下,高級(jí)搜索的下一個(gè)鏈接功能是更新對(duì)書(shū)目信息的修改以及刪除該書(shū)的兩個(gè)功能。添加新書(shū)模塊:把最新出版的書(shū)上架,添加該書(shū)的詳細(xì)信息。訂單管理模塊:把所有的未配送的書(shū)對(duì)應(yīng)的顧客聯(lián)系方式等詳細(xì)信息列出,其下一個(gè)鏈接是列出某一顧客所定購(gòu)所有書(shū)的書(shū)名、數(shù)量、定購(gòu)日期、所需的金額等詳細(xì)信息,便于管理員配送出去。本模塊實(shí)現(xiàn)根據(jù)客戶(hù)的訂單,把圖書(shū)配送出去。銷(xiāo)售統(tǒng)計(jì)模塊:為了了解書(shū)店的銷(xiāo)售業(yè)績(jī),我們必須對(duì)所有的圖書(shū)銷(xiāo)售情況進(jìn)行匯總,銷(xiāo)售統(tǒng)計(jì)模塊將完成此項(xiàng)功能,系統(tǒng)可以按照?qǐng)D書(shū)分類(lèi)、作者、出版社、銷(xiāo)售日期等內(nèi)容或任意幾項(xiàng)內(nèi)容的多條件組合查詢(xún)、邏輯組配、限定范圍來(lái)對(duì)所銷(xiāo)售的圖書(shū)情況進(jìn)
30、行統(tǒng)淮陰師范學(xué)院畢業(yè)論文(設(shè)計(jì))14計(jì)(同時(shí)支持模糊查找功能),包括銷(xiāo)售數(shù)量以及銷(xiāo)售總額,是一個(gè)比較完整的模塊??蛻?hù)管理模塊:該模塊是管理員負(fù)責(zé)管理本網(wǎng)上書(shū)店的所有用戶(hù)信息。主要功能包括查找(支持模糊查找)、刪除用戶(hù)信息。用戶(hù)被分為兩類(lèi):管理員和普通用戶(hù)(在線注冊(cè)的新用戶(hù)默認(rèn)是普通用戶(hù)) 。3.43.4 系統(tǒng)的其他功能模塊介紹系統(tǒng)的其他功能模塊介紹在線統(tǒng)計(jì)模塊:該模塊是為了統(tǒng)計(jì)本網(wǎng)站訪問(wèn)的歷史總?cè)藬?shù)和當(dāng)前的在線人數(shù),這也是很大商業(yè)性網(wǎng)站使用的模塊之一。新聞組模塊:此模塊的主要功能是為客戶(hù)提供最新的有關(guān)業(yè)內(nèi)新聞,社會(huì)焦點(diǎn)新聞,如何時(shí)將有何種新書(shū)將與讀者見(jiàn)面,以及文化出版界有關(guān)新聞。在線投票模塊:
31、該模塊的主要功能是讓顧客投票表決,了解本書(shū)店的運(yùn)行情況。以上這些模塊也是很多商業(yè)性網(wǎng)站經(jīng)常使用的模塊,主要是為了提高網(wǎng)站的服務(wù)質(zhì)量,以提高用戶(hù)對(duì)網(wǎng)站的忠誠(chéng)度。4 4 數(shù)據(jù)庫(kù)設(shè)計(jì)數(shù)據(jù)庫(kù)設(shè)計(jì)該系統(tǒng)采用 SQL Server2000 作為后臺(tái)數(shù)據(jù)庫(kù)進(jìn)行存儲(chǔ)所有與系統(tǒng)相關(guān)的數(shù)據(jù)。根據(jù)系統(tǒng)功能需要主要包括以下數(shù)據(jù)表:圖書(shū)基本信息數(shù)據(jù)表(book)、圖書(shū)價(jià)格數(shù)據(jù)表(bookprice)、用戶(hù)信息數(shù)據(jù)表(Users)、用戶(hù)訂單數(shù)據(jù)表(Orders)、在線人數(shù)統(tǒng)計(jì)數(shù)據(jù)表(CountPeople)、在線投票數(shù)據(jù)表(Vote)以及新聞組數(shù)據(jù)表(NewsType、NewsDetails)。4.14.1 數(shù)據(jù)模型數(shù)據(jù)
32、模型數(shù)據(jù)模型是對(duì)現(xiàn)實(shí)世界數(shù)據(jù)的抽象表示,其主要目的是規(guī)劃具體事務(wù)處理使用到的數(shù)據(jù),建立相應(yīng)的數(shù)據(jù)庫(kù),保持與應(yīng)用程序開(kāi)發(fā)之間的簡(jiǎn)潔性,有利于數(shù)據(jù)庫(kù)的規(guī)范化、性能優(yōu)化以及數(shù)據(jù)的簡(jiǎn)潔性。4.1.14.1.1 E_RE_R 模型模型ER 模型是數(shù)據(jù)進(jìn)行第一層抽象的表示方法。它的主要成分包括:實(shí)體、聯(lián)系和屬性。使用這三種成分,我們可以建立許多數(shù)據(jù)庫(kù)應(yīng)用系統(tǒng)的 E_R 模型。對(duì)于網(wǎng)上書(shū)店系統(tǒng)中使用到的實(shí)體和屬性可以定義如下(其中帶下劃線的屬性為主屬性):淮陰師范學(xué)院畢業(yè)論文(設(shè)計(jì))15圖書(shū)基本信息數(shù)據(jù)表(圖書(shū)編號(hào),ISBN 號(hào),書(shū)名,作者,出版社,圖書(shū)類(lèi)別,圖書(shū)描述);圖書(shū)價(jià)格數(shù)據(jù)表(價(jià)格編號(hào),原價(jià),折扣
33、價(jià));用戶(hù)信息數(shù)據(jù)表(用戶(hù)名,用戶(hù)類(lèi)型,密碼,電話,家庭住址,郵政編碼);用戶(hù)訂單數(shù)據(jù)表(訂單號(hào),圖書(shū)編號(hào),用戶(hù)名,定購(gòu)數(shù)量,定購(gòu)日期,購(gòu)買(mǎi)日期,是否購(gòu)買(mǎi),是否配送);在線人數(shù)統(tǒng)計(jì)數(shù)據(jù)表(人數(shù));在線投票數(shù)據(jù)表(投票編號(hào),投票項(xiàng),得票數(shù));新聞?lì)愋蛿?shù)據(jù)表(類(lèi)型編號(hào),類(lèi)型名稱(chēng));新聞詳細(xì)信息數(shù)據(jù)表(新聞編號(hào),標(biāo)題, 類(lèi)型編號(hào),點(diǎn)擊率 ,作者, 更新時(shí)間,詳細(xì)內(nèi)容)。4.1.24.1.2 聯(lián)系定義聯(lián)系定義E_R 模型的“聯(lián)系”用于刻畫(huà)實(shí)體之間的關(guān)聯(lián)。一種完整的方式是對(duì)局部結(jié)構(gòu)中任意兩個(gè)實(shí)體類(lèi)型,依據(jù)需求分析的結(jié)果,考察局部結(jié)構(gòu)中任意兩個(gè)實(shí)體類(lèi)型之間是否存在聯(lián)系。若有聯(lián)系,進(jìn)一步確定是 1:N,M:
34、N,還是 1:1 等。還要考察一個(gè)實(shí)體類(lèi)型內(nèi)部是否存在聯(lián)系,兩個(gè)實(shí)體類(lèi)型之間是否存在聯(lián)系,多個(gè)實(shí)體類(lèi)型之間是否存在聯(lián)系等等。本系統(tǒng)的部分實(shí)體與聯(lián)系的 E_R 模型如圖 4_1 所示:淮陰師范學(xué)院畢業(yè)論文(設(shè)計(jì))16nm用戶(hù)信息圖書(shū)信息定購(gòu)郵政編碼用戶(hù)名密碼書(shū)名家庭住址電話用戶(hù)類(lèi)型圖書(shū)編號(hào)作者出版社ISBN 號(hào)圖書(shū)描述圖書(shū)類(lèi)別定購(gòu)數(shù)量用戶(hù)名圖書(shū)編號(hào)訂單號(hào)是否購(gòu)買(mǎi)是否配送定購(gòu)日期購(gòu)買(mǎi)日期擁有圖書(shū)價(jià)格價(jià)格編號(hào)折扣價(jià)原價(jià)114.24.2 數(shù)據(jù)表設(shè)計(jì)數(shù)據(jù)表設(shè)計(jì)根據(jù)系統(tǒng)分析和功能的說(shuō)明,可以將該系統(tǒng)的邏輯數(shù)據(jù)結(jié)構(gòu)劃分為六個(gè)基本邏輯塊。4.2.14.2.1 圖書(shū)信息模塊圖書(shū)信息模塊 該模塊主要用于存放系統(tǒng)中
35、網(wǎng)站銷(xiāo)售的所有的書(shū)目基本信息,是本系統(tǒng)關(guān)鍵的數(shù)據(jù)部分。圖書(shū)基本信息數(shù)據(jù)表(book):圖書(shū)價(jià)格數(shù)據(jù)表(bookprice):圖 4_1 網(wǎng)上書(shū)店系統(tǒng) ER 圖淮陰師范學(xué)院畢業(yè)論文(設(shè)計(jì))174.2.24.2.2 用戶(hù)信息模塊用戶(hù)信息模塊用戶(hù)信息模塊模塊用來(lái)存儲(chǔ)普通用戶(hù)和管理員的信息,只構(gòu)造一個(gè)非常簡(jiǎn)單的用戶(hù)信息數(shù)據(jù)表(Users),具體如下: 4.2.34.2.3 訂單模塊訂單模塊用戶(hù)訂單數(shù)據(jù)表(Orders)存儲(chǔ)了訂單上的各項(xiàng)圖書(shū)的購(gòu)買(mǎi)詳細(xì)記錄,其詳細(xì)設(shè)計(jì)參數(shù)如下:4.2.44.2.4 新聞組模塊新聞組模塊新聞?lì)悇e數(shù)據(jù)表(NewsType)用于存儲(chǔ)新聞的類(lèi)別數(shù)據(jù),其詳細(xì)設(shè)計(jì)參數(shù)如下:新聞詳細(xì)
36、信息數(shù)據(jù)表(NewsDetails),參數(shù)如下:淮陰師范學(xué)院畢業(yè)論文(設(shè)計(jì))184.2.54.2.5 在線人數(shù)統(tǒng)計(jì)模塊在線人數(shù)統(tǒng)計(jì)模塊在線人數(shù)統(tǒng)計(jì)數(shù)據(jù)表(CountPeople),其參數(shù)如下:4.2.64.2.6 在線投票模塊在線投票模塊在線投票數(shù)據(jù)表(Vote), 其參數(shù)如下:4.34.3 存儲(chǔ)過(guò)程設(shè)計(jì)存儲(chǔ)過(guò)程設(shè)計(jì)通過(guò)封裝數(shù)據(jù)訪問(wèn)邏輯,數(shù)據(jù)服務(wù)層中的存儲(chǔ)過(guò)程就可以在應(yīng)用服務(wù)類(lèi)和數(shù)據(jù)存儲(chǔ)之間提供一個(gè)抽象層,應(yīng)用服務(wù)類(lèi)型只需要執(zhí)行存儲(chǔ)過(guò)程,并傳遞所需的參數(shù),即可以得到存儲(chǔ)過(guò)程返回的預(yù)期返回值或者結(jié)果集。其主要的優(yōu)點(diǎn)是:一是提高系統(tǒng)的性能,提高代碼的執(zhí)行效率;二是增強(qiáng)數(shù)據(jù)庫(kù)系統(tǒng)的安全性;三是提高代
37、碼的重用度。4.3.14.3.1 書(shū)目管理書(shū)目管理書(shū)目管理的存儲(chǔ)過(guò)程主要包括查詢(xún)、更新和刪除網(wǎng)上書(shū)店系統(tǒng)數(shù)據(jù)庫(kù)中的圖書(shū)基本信息數(shù)據(jù)表(book)、圖書(shū)價(jià)格數(shù)據(jù)表(bookprice)中的數(shù)據(jù),具體存儲(chǔ)過(guò)程定義如下:增加圖書(shū)基本信息,其存儲(chǔ)過(guò)程代碼如下:CREATE PROCEDURE BookAdd (BID int, BISBN varchar(16), BName varchar(50),BAuthor varchar(50), BPress varchar (50), BGroup 淮陰師范學(xué)院畢業(yè)論文(設(shè)計(jì))19int,BDescribe varchar(300) ) AS inser
38、t into Book(BID, BISBN, BName, BAuthor, BPress, BGroup, BDescribe ) values (BID, BISBN, BName, BAuthor, BPress, BGroup, BDescribe)刪除圖書(shū)基本信息,其存儲(chǔ)過(guò)程代碼如下:CREATE PROCEDURE BookDelete (BID int)AS delete book where BID=BID查詢(xún)圖書(shū)基本信息,其存儲(chǔ)過(guò)程代碼如下:CREATE PROCEDURE BookList AS Select PID, PPrice, PDiscount, BID, BN
39、ame, BAuthor, BPressfrom BookPrice,Book where BookPrice.pid=Book.bid 更新圖書(shū)基本信息,其存儲(chǔ)過(guò)程代碼如下:CREATE PROCEDURE BookModify (BID int, BISBN varchar(16), BName varchar(50),BAuthor varchar(50), BPress varchar (50), BGroup int,BDescribe varchar(300) )AS update Book set BISBN=BISBN, BName=BName, BAuthor=BAuthor
40、,BPress=BPress, BGroup=BGroup, BDescribe =BDescribe Where BID=BID增加圖書(shū)價(jià)格信息,其存儲(chǔ)過(guò)程代碼如下:CREATE PROCEDURE BookPriceAdd (PID int, PID int, PPrice money, PDiscount float )AS insert into BookPrice(PID, PPrice, PDiscount) values(PID, PPrice, PDiscount )刪除圖書(shū)價(jià)格信息,其存儲(chǔ)過(guò)程代碼如下:CREATE PROCEDURE BookPriceDelete (PID
41、 int )AS delete BookPrice where PID=PID更新圖書(shū)價(jià)格信息,其存儲(chǔ)過(guò)程代碼如下:CREATE PROCEDURE BookPriceModify (PID int, PPrice money, PDiscount float) AS update BookPrice set PPrice=PPrice, PDiscount=PDiscountWhere PID=PID淮陰師范學(xué)院畢業(yè)論文(設(shè)計(jì))20獲取當(dāng)前圖書(shū)的最大的編號(hào), 其存儲(chǔ)過(guò)程代碼如下:CREATE PROCEDURE GetBookMaxBID maxbid int outputAs select
42、 maxbid=max(bid) from Book4.3.24.3.2 用戶(hù)信息用戶(hù)信息用戶(hù)信息的存儲(chǔ)過(guò)程主要包括查詢(xún)、添加、刪除網(wǎng)上書(shū)店系統(tǒng)數(shù)據(jù)庫(kù)中的用戶(hù)信息數(shù)據(jù)表(Users)中的數(shù)據(jù)。有如下存儲(chǔ)過(guò)程:增加用戶(hù)信息,其存儲(chǔ)過(guò)程代碼如下:CREATE PROCEDURE UserAdd(UID varchar (50) , UPassword varchar (50), UPower int,UPhoneNumber varchar(50), UHomeAdress varchar(50),UPostalCode varchar(50) )as insert into Users (UID
43、, UPassword, UPower, UPhoneNumber, UHomeAdress, UPostalCode) values(UID, UPassword, 2, UPhoneNumber, UHomeAdress, UPostalCode)刪除用戶(hù)信息,其存儲(chǔ)過(guò)程代碼如下:CREATE PROCEDURE UserDelete(UID varchar (50) )as delete Users where UID=UID查詢(xún)用戶(hù)信息,其存儲(chǔ)過(guò)程代碼如下:CREATE PROCEDURE UserList As select UID, UPassword,UPhoneNumber,
44、UHomeAdress, UPostalCode, UPower from Users用戶(hù)登錄身份驗(yàn)證,其存儲(chǔ)過(guò)程代碼如下:CREATE PROCEDURE UserLoginUid varchar(50), UPassword varchar(50)As select * from users where uid=Uid and UPassword=UPassword4.3.34.3.3 訂單管理訂單管理訂單處理存儲(chǔ)過(guò)程主要包括選擇、插入和更新系統(tǒng)數(shù)據(jù)庫(kù)中的用戶(hù)訂單數(shù)據(jù)表(Orders)的數(shù)據(jù),其存儲(chǔ)過(guò)程有:插入新訂單, 其存儲(chǔ)過(guò)程代碼如下:CREATE PROCEDURE OrderAdd
45、 (OBID int, OUID varchar(50), OQuantity int, 淮陰師范學(xué)院畢業(yè)論文(設(shè)計(jì))21ODate datetime)as insert into Orders (OBID , OUID , OQuantity , ODate , OBuy)values (OBID , OUID , OQuantity , ODate , 0)刪除訂單, 其存儲(chǔ)過(guò)程代碼如下:CREATE PROCEDURE OrderDelete(OID int)as delete Orders where OID=OID更新訂單, 其存儲(chǔ)過(guò)程代碼如下:CREATE PROCEDURE Or
46、derModify(OID int, OQuantity int)as update Orders set OQuantity=OQuantity where OID=OID以上是網(wǎng)上書(shū)店系統(tǒng)的數(shù)據(jù)庫(kù)設(shè)計(jì)的基本過(guò)程,主要包括數(shù)據(jù)模型的建立,數(shù)據(jù)表的定義以及存儲(chǔ)過(guò)程的定義。5 5 網(wǎng)上書(shū)店系統(tǒng)主要網(wǎng)上書(shū)店系統(tǒng)主要/ /關(guān)鍵技術(shù)關(guān)鍵技術(shù)本章節(jié)介紹了系統(tǒng)實(shí)現(xiàn)過(guò)程中的關(guān)鍵技術(shù),主要包括:數(shù)據(jù)庫(kù)連接模塊的設(shè)計(jì)、銷(xiāo)售模塊的設(shè)計(jì)及其它模塊的設(shè)計(jì)三部分內(nèi)容,具體如下:5.15.1 數(shù)據(jù)庫(kù)連接模塊設(shè)計(jì)數(shù)據(jù)庫(kù)連接模塊設(shè)計(jì)5.1.15.1.1 實(shí)現(xiàn)與數(shù)據(jù)庫(kù)連接常用的四種方法實(shí)現(xiàn)與數(shù)據(jù)庫(kù)連接常用的四種方法本設(shè)計(jì)嘗試使
47、用了連接數(shù)據(jù)庫(kù)的常用的以下四種方法:(1)建立一個(gè)數(shù)據(jù)庫(kù)連接類(lèi)(DB.cs) ,主要代碼如下:public static SqlConnection CreateCon()/建立連接字符串 SqlConnection con=new SqlConnection(server=.;uid=sa;pwd=;database=BookShopping); return con; /返回值是連接字符串每當(dāng)需要連接數(shù)據(jù)庫(kù)時(shí)調(diào)用(DB.cs)即可,主要代碼如下:private void Page_Load(object sender, System.EventArgs e)/調(diào)用連接字符串,建立連接對(duì)象,
48、數(shù)據(jù)適配器 SqlDataAdapter 對(duì)象,本地?cái)?shù)據(jù)集,把數(shù)據(jù)綁定到 DataList 上 if(!this.IsPostBack ) SqlConnection con=DB.CreateCon ();/調(diào)用連接字符串淮陰師范學(xué)院畢業(yè)論文(設(shè)計(jì))22 con.Open ();/打開(kāi)連接SqlDataAdapter sda=new SqlDataAdapter(select * from book ,bookprice where book.bid=bookprice.pid and BGroup=1,con);DataSet ds=new DataSet ();/創(chuàng)建并填充 DataSe
49、tsda.Fill (ds);this.dlt_class1 .DataSource =ds;this.dlt_class1 .DataBind ();con.Close (); /使用后關(guān)閉連接此種方法的好處是建立一個(gè)數(shù)據(jù)庫(kù)連接類(lèi),每當(dāng)需要連接數(shù)據(jù)庫(kù)時(shí)調(diào)用(DB.cs)即可,方便、快捷。(2)在 Web 配置文件中(Web.config)自定義一個(gè)連接字符串,該字符串作為常量被使用,主要代碼如下: /在 XML 文檔中定義連接字符串每當(dāng)需要連接字符串時(shí),從文件 Web.config 中讀取連接字符串。主要代碼如下:private void Page_Load(object sender, S
50、ystem.EventArgs e) if(!this.IsPostBack )string strcon=ConfigurationSettings.AppSettings dsn;/獲得連接字符串SqlConnection con=new SqlConnection(strcon);con.Open (); 使用時(shí)需要調(diào)用域名空間 using System.Configuration ;(3)在 Global.asax 文件的 Application 對(duì)象中定義一個(gè)數(shù)據(jù)庫(kù)連接字符串,該字符串作為常量被調(diào)用,主要代碼如下:protected void Application_Start(Ob
51、ject sender, EventArgs e)Applicationsqlconstr=server=.;uid=sa;pwd=;database=BookShopping;private void DataBindToDg() SqlConnection con=new SqlConnection (string)Applicationsqlconstr);/首先把Application對(duì)象類(lèi)型強(qiáng)制轉(zhuǎn)換為字符串類(lèi)型 ,淮陰師范學(xué)院畢業(yè)論文(設(shè)計(jì))23獲得連接字符串con.Open (); (4)在需要連接數(shù)據(jù)庫(kù)時(shí),每次都直接編寫(xiě)連接字符串的代碼,無(wú)需調(diào)用。主要代碼如下:private v
52、oid ImageButton1_Click(object sender, System.Web.UI.ImageClickEventArgs e)SqlConnection con=new SqlConnection (server=.;database=bookshopping;uid=sa;pwd=;);con.Open ();此種方法雖然較為麻煩,但是很直觀明了。5.25.2 銷(xiāo)售模塊設(shè)計(jì)銷(xiāo)售模塊設(shè)計(jì)5.2.15.2.1 新用戶(hù)注冊(cè)模塊的實(shí)現(xiàn)新用戶(hù)注冊(cè)模塊的實(shí)現(xiàn)在同一個(gè)頁(yè)面使用控件 Panel 是否隱藏來(lái)控制注冊(cè)的流程界面的顯示(頁(yè)面采用流式布局)主要實(shí)現(xiàn)代碼如下:private vo
53、id btn_next1_Click(object sender, System.EventArgs e) if(this.RadioButtonList1.SelectedValue=同意)/ this.Panel1 .Visible =false;this.Panel2 .Visible =true; if(this.RadioButtonList1 .SelectedValue =不同意)Response.Write ( confirm(您真的不同意該協(xié)議嗎 ?);/ 使用本地腳本語(yǔ)言,彈出確認(rèn)信息對(duì)話框?yàn)榱朔乐褂脩?hù)注冊(cè)的用戶(hù)名相同,造成混亂。本人采用了自定義驗(yàn)證控件,功能是在該頁(yè)面提交
54、時(shí),新用戶(hù)注冊(cè)時(shí)使用的用戶(hù)名,系統(tǒng)將會(huì)查詢(xún)數(shù)據(jù)庫(kù)中是否存在,如果存在,該頁(yè)面無(wú)效,提交不成功,主要實(shí)現(xiàn)代碼如下:private void CustomValidator1_ServerValidate(object source, System.Web.UI.WebControls.ServerValidateEventArgs args) string struid=args.Value ;SqlConnection con=new SqlConnection (server=.;database=BookShopping;uid=sa;pwd=;);淮陰師范學(xué)院畢業(yè)論文(設(shè)計(jì))24con.
55、Open ();SqlCommand cmd=new SqlCommand (select count(*) from users where uid=+struid+,con);int count=Convert.ToInt32(cmd.ExecuteScalar ();if(count0)args.IsValid =false; /驗(yàn)證未能通過(guò)else args.IsValid =true; /驗(yàn)證通過(guò)使用存儲(chǔ)過(guò)程,提高系統(tǒng)性能,先定義參數(shù)類(lèi)型,然后給參數(shù)賦值;其中的密碼使用 MD5 算法進(jìn)行加密,提高了系統(tǒng)的安全性,關(guān)鍵技術(shù)的實(shí)現(xiàn)代碼如下:private void btn_done_Cl
56、ick(object sender, System.EventArgs e)if(this.Page .IsValid ) SqlConnection con=DB.CreateCon (); con.Open ();SqlCommand cmd=new SqlCommand (UserAdd,con); /調(diào)用存儲(chǔ)過(guò)程cmd.CommandType =CommandType .StoredProcedure ; /將命令類(lèi)型轉(zhuǎn)化為存儲(chǔ)過(guò)程cmd.Parameters .Add (UID,SqlDbType.VarChar ); /添加參數(shù),定義參數(shù)類(lèi)型cmd.Parameters .Add
57、(UPassword,SqlDbType.VarChar );cmd.Parameters .Add (UPower,SqlDbType.Int );cmd.Parameters .Add (UPhoneNumber,SqlDbType.VarChar );cmd.Parameters .Add (UHomeAdress,SqlDbType.VarChar );cmd.Parameters .Add (UPostalCode,SqlDbType.VarChar );cmd.Parameters UID.Value =this.tbx_uid .Text .ToString ();/給參數(shù)賦值c
58、md.ParametersUPassword.Value=System.Web .Security.FormsAuthentication.HashPasswordForStoringInConfigFile(this.tbx_pwd .Text,MD5);/ 使用 MD5 算法進(jìn)行加密cmd.Parameters UPower.Value =2;cmd.ParametersUPhoneNumber.Value=this.tbx_phonenumber.Text .ToString ();cmd.ParametersUHomeAdress.Value=this.tbx_homeadress .
59、Text .ToString ();淮陰師范學(xué)院畢業(yè)論文(設(shè)計(jì))25cmd.Parameters UPostalCode.Value =this.tbx_postalcode.Text .ToString ();cmd.ExecuteNonQuery ();con.Close (); 5.2.25.2.2 用戶(hù)登陸模塊的實(shí)現(xiàn)用戶(hù)登陸模塊的實(shí)現(xiàn)用戶(hù)登陸時(shí),用 Sessionuid記錄用戶(hù)的用戶(hù)名,它貫穿于應(yīng)用程序的整個(gè)生命周期,作用是標(biāo)記某一用戶(hù)的定購(gòu)及購(gòu)買(mǎi)記錄。并且根據(jù)用戶(hù)的權(quán)限的不同,賦予不同的 Sessionflag標(biāo)記,是顧客或管理員進(jìn)入各自的頁(yè)面的憑據(jù),其它非法用戶(hù)則不可進(jìn)入。主要實(shí)現(xiàn)
60、代碼如下:if(dr.Read ()/保存當(dāng)前用戶(hù)名及用戶(hù)權(quán)限 Sessionuid=drUID;Sessionupower=drUPower;this.lbl_hy.Text =歡迎您!+Sessionuid;if(drUPower.ToString ()=1) Sessionflag1=well;Response.Redirect (BookManage.aspx); /進(jìn)入管理員界面else Sessionflag2=ok; /普通用戶(hù),界面不變 5.2.35.2.3 高級(jí)搜索模塊的實(shí)現(xiàn)高級(jí)搜索模塊的實(shí)現(xiàn)這里提供了多條件組合查詢(xún)、邏輯組配、限定范圍,包括按書(shū)類(lèi)、作者、出版社等內(nèi)容的任意一
61、項(xiàng)或幾項(xiàng)的內(nèi)容進(jìn)行查詢(xún),同時(shí)支持模糊搜索功能。主要實(shí)現(xiàn)代碼如下:public void DataBindToDg() SqlConnection con=DB.CreateCon ();con.Open ();string strsearch=select * from book ,bookprice where book.bid=bookprice.pid;if(this.tbx_bid.Text .ToString ()!=)/如果“書(shū)號(hào)”有輸入 strsearch=strsearch+ and bid= +Convert.ToInt16 (this.tbx_bid .Text .ToSt
62、ring ();淮陰師范學(xué)院畢業(yè)論文(設(shè)計(jì))26if(this.tbx_bname .Text .ToString() !=) /如果“書(shū)名”有輸入strsearch=strsearch+ and bname like %+this.tbx_bname .Text .ToString ()+%;if(this.tbx_isbn .Text .ToString ()!=)/如果“ISBN 號(hào)”有輸入strsearch=strsearch+ and bisbn=+this.tbx_isbn .Text .ToString ()+;if(this.tbx_press .Text .ToString
63、()!=)/如果“書(shū)出版社”有輸入strsearch=strsearch+ and bpress like %+this.tbx_press .Text .ToString ()+%;if(this.tbx_author.Text .ToString ()!= ) /如果“書(shū)作者”有輸入 strsearch=strsearch+ and bauthor like %+this.tbx_author .Text .ToString ()+%;if(this.ddl_class.SelectedItem .Value .ToString() !=-1)/如果“書(shū)類(lèi)型”有輸入,1 為未選 strse
64、arch=strsearch+ and BGroup=+(Convert.ToInt32 (this.ddl_class .SelectedItem .Value .ToString ();SqlDataAdapter sda=new SqlDataAdapter (strsearch,con);DataSet ds=new DataSet ();sda.Fill (ds);this.dg_searchresult .DataSource =ds;淮陰師范學(xué)院畢業(yè)論文(設(shè)計(jì))27this.dg_searchresult.DataBind (); con.Close ();為了增強(qiáng)個(gè)性化,使界面
65、美觀、友好,在 DataGrid 上實(shí)現(xiàn)一般項(xiàng)與交替項(xiàng)出現(xiàn)顏色交替的效果。主要實(shí)現(xiàn)代碼如下:private void dg_searchresult_ItemDataBound(object sender, System.Web.UI.WebControls.DataGridItemEventArgs e)if(e.Item.ItemType=ListItemType.Item|e.Item.ItemType=ListItemType.AlternatingItem ) /實(shí)現(xiàn)一般項(xiàng)與交替項(xiàng)出現(xiàn)顏色交替的效果e.Item.Attributes.Add(onmouseover,c=this.st
66、yle.backgroundColor,this.style.backgroundColor=9966ff);/保存現(xiàn)有顏色,賦予新的顏色e.Item .Attributes .Add (onmouseout,this.style.backgroundColor=c);/恢復(fù)原有顏色5.2.45.2.4 購(gòu)物車(chē)模塊的實(shí)現(xiàn)購(gòu)物車(chē)模塊的實(shí)現(xiàn)根據(jù)用戶(hù)登陸時(shí)記錄的 Sessionflag標(biāo)記,檢測(cè)該用戶(hù)是否有權(quán)限進(jìn)入該頁(yè)面,如果是非法用戶(hù),則跳轉(zhuǎn)到提示為登陸錯(cuò)誤的頁(yè)面。實(shí)現(xiàn)的主要代碼如下:private void Page_Load(object sender, System.EventArgs e)/判斷用戶(hù)是否是合法用戶(hù),即已成功登陸的用戶(hù),且為普通用戶(hù),非管理員if(Sessionflag2=null|Sessionflag2.ToString ()!=ok) Response.Redirect (LoginFail.aspx); 針對(duì)常用的代碼,采用代碼封裝技術(shù),減少代碼的冗余度,提高代碼的重用度。public SqlDataAdapter resda()/返回 SqlDataAdap
- 溫馨提示:
1: 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
2: 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
3.本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
5. 裝配圖網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 人教版必修五《林教頭風(fēng)雪山神廟》ppt課件
- 人教版《分?jǐn)?shù)的意義和性質(zhì)》(完美版)課件
- 正比例函數(shù)及性質(zhì)
- 企業(yè)戰(zhàn)略環(huán)境分析
- 前列腺增生3課件
- 煉鐵基礎(chǔ)非高爐煉鐵課件
- 小兒腹瀉小講課分析課件
- 職業(yè)經(jīng)理人的壓力管理課件
- 街道改造PPT方案展示-項(xiàng)目概況案例分析現(xiàn)存建筑質(zhì)量設(shè)計(jì)理念課件
- 2022年北師大版小學(xué)數(shù)學(xué)《小數(shù)目物品平均分》課件
- 作文指導(dǎo)--場(chǎng)面描寫(xiě)-PPT
- 肺癌診斷和治療的幾個(gè)問(wèn)題
- 一下《王二小》
- 第八章專(zhuān)題八(教育精品)
- 六年級(jí)數(shù)學(xué)下冊(cè) 正負(fù)數(shù) 2課件 人教新課標(biāo)