基于Web Services的商務(wù)網(wǎng)站研究畢業(yè)論文_第1頁
基于Web Services的商務(wù)網(wǎng)站研究畢業(yè)論文_第2頁
基于Web Services的商務(wù)網(wǎng)站研究畢業(yè)論文_第3頁
基于Web Services的商務(wù)網(wǎng)站研究畢業(yè)論文_第4頁
基于Web Services的商務(wù)網(wǎng)站研究畢業(yè)論文_第5頁
已閱讀5頁,還剩81頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、廣東師范畢業(yè)論文基于web services的商務(wù)網(wǎng)站研究摘要介紹了web 服務(wù)的體系結(jié)構(gòu)和一些主要的相關(guān)技術(shù),在分析了web services體系結(jié)構(gòu)的基礎(chǔ)上,針對當前網(wǎng)上書店系統(tǒng)存在的一些缺陷,研究并給出了一個基于web services的網(wǎng)上書店的設(shè)計方案。該網(wǎng)上書店分為前臺服務(wù)和后臺管理兩部分,主要功能模塊包括圖書管理、購物車管理、訂單管理、用戶管理、系統(tǒng)管理等。在總體結(jié)構(gòu)上,采用了現(xiàn)今流行的多層體系結(jié)構(gòu)和組件技術(shù),邏輯上劃分成數(shù)據(jù)層、中間層和表示層,表示層運用asp.net的網(wǎng)頁技術(shù),中間層由web services組件提供業(yè)務(wù)服務(wù),數(shù)據(jù)層采用microsoft sql server

2、 2000數(shù)據(jù)庫系統(tǒng)。關(guān)鍵字:三層體系結(jié)構(gòu),組件,web服務(wù),網(wǎng)上書店,asp.netabstractit is introduced web services architecture and some of the major related technologies. based on the analysis of the web services architecture and the current system online bookstore existing some shortcomings, we give a research-based web services o

3、nline bookstore design programs. the online bookstore is divided into two parts: prospects services and management background. and the main functional modules make of library management, a shopping cart management, order management, user management, and systems management. in the overall structure,

4、the introduction of the current epidemic of multi-storey structure and components technology, logically divided into data layer, middle layer and presentation layer. the presentation layer use asp.net website technology, the middle layer provide operational services from components of web services,

5、and the data layer use microsoft sql server 2000 database system.keywords:three-tier architecture,components,web services,online bookshop,asp.net目錄摘要i第一章 緒論- 1 -第二章 相關(guān)知識- 3 -2.1 asp.net簡介- 3 -2.1.1 asp.net的新性能- 3 -2.2 xml web service簡介- 4 -2.2.1 簡單對象訪問協(xié)議soap- 5 -2.2.2 web服務(wù)描述語言wsdl- 6 -2.2.3通用發(fā)現(xiàn)、說明和

6、集成uddi- 7 -第三章 網(wǎng)站功能分析及設(shè)計- 9 -3.1 需求分析- 9 -3.2 總體體系結(jié)構(gòu)圖- 9 -3.3 網(wǎng)站功能模塊設(shè)計- 10 -3.4 網(wǎng)站功能模塊示意圖- 11 -3.4.1 圖書管理模塊示意圖- 11 -3.4.2 購物車管理模塊示意圖- 14 -3.4.3 訂單管理模塊示意圖- 14 -3.4.4 用戶管理模塊示意圖- 17 -3.4.5 管理員信息管理模塊示意圖- 19 -第四章 網(wǎng)站數(shù)據(jù)庫層設(shè)計及實現(xiàn)- 21 -4.1 數(shù)據(jù)庫分析- 21 -4.2 數(shù)據(jù)庫設(shè)計- 23 -4.2.1 數(shù)據(jù)表設(shè)計- 23 -4.2.2 各數(shù)據(jù)表的相互聯(lián)系- 26 -第五章 中間層

7、設(shè)計及實現(xiàn)- 27 -5.1 databasewebservice- 27 -5.1.1 功能描述- 27 -5.1.2 接口描述- 27 -5.1.3 設(shè)計過程及編碼- 28 -5.1.4 測試- 31 -5.1.5 客戶端調(diào)用- 33 -5.2 bookwebservice- 33 -5.2.1 功能描述- 33 -5.2.2 接口描述- 33 -5.2.3 設(shè)計過程及編碼- 34 -5.2.4 測試- 43 -5.2.5 客戶端調(diào)用- 44 -5.3 其它web服務(wù)- 44 -5.3.1 commentwebservice- 44 -5.3.2 orderwebservice- 44 -

8、5.3.3 customerwebservice- 45 -5.3.4 adminwebservice- 46 -第六章 表示層設(shè)計及實現(xiàn)- 49 -6.1 clientwebapplication應用程序- 49 -第七章 系統(tǒng)部署- 65 -7.1 部署前的準備- 65 -7.1.1 創(chuàng)建web安裝程序- 65 -7.1.2 數(shù)據(jù)庫的備份- 68 -7.1.3 運行環(huán)境的配置- 69 -7.2 部署圖- 69 -7.2.1 表示層部署圖- 69 -7.2.2 中間層部署圖- 70 -7.3 部署過程- 70 -7.3.1 表示層部署過程- 70 -7.3.2 中間層部署過程- 71 -7.

9、3.3 數(shù)據(jù)庫部署過程- 72 -7.4 部署完成的測試- 73 -結(jié)論- 75 -參考文獻:- 77 -致謝- 79 -附錄a 搭建開發(fā)平臺和運行環(huán)境- 81 -a.1 windows.net framework安裝- 81 -a.2 microsoft visual studio.net 2003安裝- 82 -a.3 microsoft sql server 2000安裝- 84 -a.4 客戶端軟件安裝- 86 -附錄b 工作說明- 87 -第一章 緒論.net是微軟公司的xml web服務(wù)平臺,它是為了解決互聯(lián)網(wǎng)應用存在的普通問題而預先建立的基礎(chǔ)設(shè)施。即將程序開發(fā)的側(cè)重點從連接到互聯(lián)

10、網(wǎng)的單一網(wǎng)站或設(shè)備上,轉(zhuǎn)移到計算機、設(shè)備和服務(wù)群組上,使其通力合作,提供更加廣泛、更加豐富的解決方案。用戶將能夠控制信息的傳送方式、時間和內(nèi)容。計算機、設(shè)備和服務(wù)將能夠相輔相成,從而提供豐富的服務(wù),而不是像信息孤島那樣,由用戶提供惟一的集成。網(wǎng)上商店,目前已累見不鮮,但基于web services并在.net平臺上開發(fā)的就寥若晨星。本次畢業(yè)設(shè)計題目:“基于web services的商務(wù)網(wǎng)站研究”,主要目的是通過在.net平臺上開發(fā)網(wǎng)站這一實例詳細介紹web services的應用及功能。通過實際的操作深入了解web services這一現(xiàn)今流行的技術(shù),當然也包括學習web服務(wù)器控件、用戶控件、

11、數(shù)據(jù)綁定技術(shù)、多層分布式設(shè)計等。本網(wǎng)上書店系統(tǒng)是基于集中統(tǒng)一規(guī)劃的數(shù)據(jù)庫數(shù)據(jù)管理新模式設(shè)計的。在對書本、用戶、訂單、管理員信息的管理,其實是對書本、用戶、訂單、管理員數(shù)據(jù)的管理。它的開發(fā)過程也就是多層分布式應用程序的創(chuàng)建過程,其中包括:數(shù)據(jù)層、中間層、表示層,開發(fā)多層分布式應用程序的一個可能的方案是一次創(chuàng)建一層,多半是從數(shù)據(jù)層開始,然后移到中間層業(yè)務(wù)規(guī)則對象,最后創(chuàng)建用戶界面層。對于開發(fā)工具我們選擇:internet information services 6.0(iis 6.0) + microsoft visual studio.net 2003 + microsoft sql serv

12、er 2000。在附錄里,我們會介紹他們的安裝過程。本網(wǎng)上書店的整個設(shè)計及實現(xiàn)過程,我們采取的是分工合作的模式:陳棣燃同學負責表示層的設(shè)計及實現(xiàn);陳韶記同學負責中間層和數(shù)據(jù)層的設(shè)計及實現(xiàn)。相應的,該論文的編寫,我們采取的是誰做那塊,就負責那塊的編寫,而其余部分,就是大家共同努力的結(jié)果了。詳細分工,請參看附錄b 工作說明。第二章 相關(guān)知識2.1 asp.net簡介asp.net是microsoft.net的一部分,作為戰(zhàn)略產(chǎn)品,不僅僅是 active server page (asp) 的下一個版本;它還提供了一個統(tǒng)一的 web 開發(fā)模型,其中包括開發(fā)人員生成企業(yè)級 web 應用程序所需的各種服

13、務(wù)。asp.net 的語法在很大程度上與 asp 兼容,同時它還提供一種新的編程模型和結(jié)構(gòu),可生成伸縮性和穩(wěn)定性更好的應用程序,并提供更好的安全保護??梢酝ㄟ^在現(xiàn)有 asp 應用程序中逐漸添加 asp.net 功能,隨時增強 asp 應用程序的功能。asp.net 是一個已編譯的、基于 .net 的環(huán)境,可以用任何與 .net 兼容的語言(包括 visual basic .net、c# 和 jscript .net等)創(chuàng)作應用程序。另外,任何 asp.net 應用程序都可以使用整個 .net framework。開發(fā)人員可以方便地獲得這些技術(shù)的優(yōu)點,其中包括托管的公共語言運行庫環(huán)境、類型安全、

14、繼承等等。asp.net 可以無縫地與 wysiwyg html 編輯器或其他編程工具(包括 microsoft visual studio .net)一起工作。這不僅使得 web 開發(fā)更加方便,而且還能提供這些工具必須提供的所有優(yōu)點,包括開發(fā)人員可以用來將服務(wù)器控件拖放到 web 頁的 gui (graphical user interface 的簡稱,即圖形用戶接口)和完全集成的調(diào)試支持。微軟為asp.net設(shè)計了這樣一些策略:易于寫出結(jié)構(gòu)清晰的代碼、代碼易于重用和共享、可用編譯類語言編寫等等,目的是讓程序員更容易開發(fā)出web應用,滿足計算向web轉(zhuǎn)移的戰(zhàn)略需要。2.1.1 asp.net

15、的新性能asp.net提供了穩(wěn)定的性能、優(yōu)秀的升級性、更快速的開發(fā)、更簡便的管理、全新的語言以及網(wǎng)絡(luò)服務(wù)。貫穿整個asp.net的主題就是系統(tǒng)幫用戶做了大部分不重要的瑣碎的工作。l 全新的構(gòu)造 新的asp.net引入代碼托管(managed code)這樣一個全新概念,橫貫整個視窗開發(fā)平臺。受管代碼在ngws runtime下運行,而ngws runtime是一個時間運行環(huán)境,它管理代碼的執(zhí)行,使程序設(shè)計更為簡便。l 高效率 對于一個程序,速度是一件非常令人渴望的東西。一旦代碼開始工作,接下來你就得盡可能地讓它運作得快些快些再快些。在asp中你只有盡可能精簡你的代碼,以至于不得不將它們移植到一

16、個僅有很少一點性能的部件中。而現(xiàn)在,asp.net會妥善地解決這一問題。l 易控制 在asp.net里,你將會擁有一個“data-bounds” (數(shù)據(jù)綁定),這意味著它會與數(shù)據(jù)源連接,并會自動裝入數(shù)據(jù),使控制工作簡單易行。l 語言支持 asp.net支持多種語言,支持編譯類語言,支持比如vb、vc+、c#等,它比這些編譯類語言運行速度快,更適合編寫大型應用。l 更好的升級能力 快速發(fā)展的分布式應用也需要更快速、更模塊化、更易操作、更多平臺支持和重復利用性更強的開發(fā),需要一種新的技術(shù)來適應不同的系統(tǒng),網(wǎng)絡(luò)應用和網(wǎng)站需要提供一種更加強大的可升級的服務(wù)。asp.net能夠適應上面的要求。l 讓你的

17、生活更簡單 對于今天的web程序員來說,最大的挑戰(zhàn)就是不斷變化的瀏覽器兼容性以及它們不斷升級的復雜性。在保證頁面能在所有瀏覽器下工作的同時,又得盡量使用每個瀏覽器的最新屬性來建立更具交互性的頁面,這簡直就是一場噩夢。更加可怕的是,需要對不同的用戶設(shè)備建立不同的網(wǎng)頁。最簡單的解決辦法就是動態(tài)地對不同的用戶生成不同的輸出,或者就是對不同的用戶寫多個頁面。大多數(shù)開發(fā)者都會選擇第一種方法。但是,這就意味著用戶的每次點擊都會讓服務(wù)器判斷應該向用戶顯示什么。而通過asp.net,我們可以看到一個新的服務(wù)控制的概念,它封裝了一些普通的任務(wù),提供了一種清晰的編程模塊,有助于管理和處理不同的用戶類型。簡單地說,

18、asp.net把這些過程自動化了。2.2 xml web service簡介xml web service 是在 internet上進行分布式計算的基本構(gòu)造塊,它通過 soap在 web 上提供軟件服務(wù),使用 wsdl文件進行說明,并通過 uddi 進行注冊。開放的標準以及對用戶和應用程序之間的通信和協(xié)作的關(guān)注產(chǎn)生了這樣一種環(huán)境,在這種環(huán)境下,xml web service 成為應用程序集成的平臺。應用程序是通過使用多個不同來源的 xml web service 構(gòu)造而成的,這些服務(wù)相互協(xié)同工作,而不管它們位于何處或者如何實現(xiàn)。xml web service 體系結(jié)構(gòu)的主要優(yōu)點之一是:允許在不

19、同平臺上、以不同語言編寫的各種程序以基于標準的方式相互通信。相對以前的方案而言,xml web service 的另一大優(yōu)點是使用標準的 web 協(xié)議 :xml、http 和 tcp/ip。許多公司都已經(jīng)建立了 web 基礎(chǔ)結(jié)構(gòu),同時它們的員工在維護方面也都具備相應的知識和經(jīng)驗。因此,引入 xml web service 與引入以前的技術(shù)相比,其成本要低得多。有多少個構(gòu)建 xml web service 的公司,就可能有多少種 xml web service 定義。不過幾乎所有定義都具有以下共同點: l xml web service 通過標準的 web 協(xié)議向 web 用戶提供有用的功能。多

20、數(shù)情況下使用 soap 協(xié)議。 l xml web service 可以非常詳細地說明其接口,這使用戶能夠創(chuàng)建客戶端應用程序與它們進行通信。這種說明通常包含在稱為 web 服務(wù)說明語言 (wsdl) 文檔的 xml 文檔中。 l xml web service已經(jīng)過注冊,以便潛在用戶能夠輕易地找到這些服務(wù),這是通過通用發(fā)現(xiàn)、說明和集成 (uddi) 來完成的。 接下來我們就介紹一下這三種技術(shù)。2.2.1 簡單對象訪問協(xié)議soapsoap(simple object access protocol)是 xml web service 的通信協(xié)議。它是一種規(guī)范,用來定義消息的xml格式,這是規(guī)范中

21、所必需的部分。包含在一對soap元素中的、結(jié)構(gòu)正確的xml段就是 soap 消息。soap 規(guī)范的其他部分介紹如何將程序數(shù)據(jù)表示為 xml,以及如何使用 soap 進行遠程過程調(diào)用 (rpc)。這些可選的規(guī)范部分用于實現(xiàn) rpc 形式的應用程序,其中客戶端將發(fā)出一條 soap 消息(包含可調(diào)用函數(shù),以及要傳送到該函數(shù)的參數(shù)),然后服務(wù)器將返回包含函數(shù)執(zhí)行結(jié)果的消息。目前,多數(shù) soap 實現(xiàn)方案都支持 rpc 應用程序,這是因為習慣于開發(fā) com 或 corba 應用程序的編程人員熟悉 rpc 形式。soap 還支持文檔形式的應用程序,在這類應用程序中,soap 消息只是 xml 文檔的一個包

22、裝。文檔形式的 soap 應用程序非常靈活,許多新的 xml web service 都利用這一特點來構(gòu)建使用 rpc 難以實現(xiàn)的服務(wù)。soap 規(guī)范的最后一個可選部分定義了包含 soap 消息的 http 消息的樣式。此 http 綁定非常重要,因為幾乎所有當前的 os(以及許多以前的 os)都支持 http。http 綁定雖然是可選的,但幾乎所有 soap 實現(xiàn)方案都支持 http 綁定,因為它是 soap 的唯一標準協(xié)議。由于這一原因,人們通常誤認為 soap 必須使用 http。其實,有些實現(xiàn)方案也支持 msmq、mq 系列、smtp 或 tcp/ip 傳輸,但由于 http 非常普遍

23、,幾乎所有當前的 xml web service 都使用它。由于 http 是 web 的核心協(xié)議,因此大多數(shù)組織的網(wǎng)絡(luò)基礎(chǔ)結(jié)構(gòu)都支持 http。如今,已經(jīng)建立了用于 http 的安全保護、監(jiān)視和負載平衡的基礎(chǔ)結(jié)構(gòu)。開始使用 soap 時,最容易混淆的是 soap 規(guī)范及其許多實現(xiàn)方案之間的差異。多數(shù)使用 soap 的用戶并不直接編寫 soap 消息,而是使用 soap 工具包來創(chuàng)建和分析 soap 消息。這些工具包通常將函數(shù)調(diào)用從某種語言轉(zhuǎn)換為 soap 消息。例如,microsoft soap toolkit 2.0 將 com 函數(shù)調(diào)用轉(zhuǎn)換為 soap,而 apache toolkit

24、將 java 函數(shù)調(diào)用轉(zhuǎn)換為 soap。函數(shù)調(diào)用的類型和支持的參數(shù)的數(shù)據(jù)類型隨每個 soap 實現(xiàn)方案的不同而不同,因此適用于一個工具包的函數(shù)可能并不適用于另一個工具包。這并不是 soap 的限制,而是所使用的特定實現(xiàn)方案的限制。到目前為止,soap 最引人注目的特征是它可以在許多不同的軟件和硬件平臺上實現(xiàn)。這意味著 soap 可用于鏈接企業(yè)內(nèi)部和外部的不同系統(tǒng)。過去曾試過多種方法以提出一個可用于系統(tǒng)集成的通用通信協(xié)議,但它們都沒有像soap一樣獲得廣泛的認可。為什么呢?因為與許多早期的協(xié)議相比,soap 更小巧,而且更易于實現(xiàn)。例如,dce 和 corba 的實現(xiàn)需要數(shù)年時間,所以只發(fā)布了很

25、少幾個實現(xiàn)方案。而 soap 可以利用現(xiàn)有的 xml 分析器和http庫完成大部分艱苦的工作,因此 soap 實現(xiàn)方案在數(shù)月內(nèi)便可完成。這就是為什么現(xiàn)在已經(jīng)有 70 多個 soap 實現(xiàn)方案的原因。當然,soap 并不具備 dce 或 corba 的全部功能,雖然功能減少了,但由于其復雜程度大大降低了,因此 soap 更易于應用。2.2.2 web服務(wù)描述語言wsdlwsdl(web services description language)表示web服務(wù)說明語言。我們可以認為 wsdl 文件是一個 xml 文檔,用于說明一組 soap 消息以及如何交換這些消息。換句話說,wsdl 對于 s

26、oap 的作用就像idl對于 corba 或 com 的作用。由于 wsdl 是 xml 文檔,因此很容易進行閱讀和編輯;但大多數(shù)情況下,它由軟件生成和使用。wsdl文件用于說明消息格式的表示法以 xml 架構(gòu)標準為基礎(chǔ),這意味著它與編程語言無關(guān),而且以標準為基礎(chǔ),因此適用于說明可從不同平臺、以不同編程語言訪問的 xml web service 接口。除說明消息內(nèi)容外,wsdl 還定義了服務(wù)的位置,以及使用什么通信協(xié)議與服務(wù)進行通信。也就是說,wsdl 文件定義了編寫使用 xml web service 的程序所需的全部內(nèi)容。有幾種工具可以讀取 wsdl 文件,并生成與 xml web ser

27、vice 通信所需的代碼。其中一些最強大的工具可在 microsoft visual studio.net 中找到。當前,許多 soap 工具包都包括從現(xiàn)有程序接口生成 wsdl 文件的工具,但卻幾乎沒有直接用于編寫 wsdl 的工具,而且 wsdl 的工具支持也很不完整。但不久就會出現(xiàn)編寫 wsdl 文件的工具,接著還會有生成代理和存根的工具(與 com idl 工具很相似),這些工具將成為多數(shù) soap 實現(xiàn)方案的一部分。到那時,wsdl 將成為創(chuàng)建 xml web service 的 soap 接口的首選方法。2.2.3通用發(fā)現(xiàn)、說明和集成uddiuddi(universal descr

28、iption discovery and integration)是 web 服務(wù)的黃頁。與傳統(tǒng)黃頁一樣,您可以搜索提供所需服務(wù)的公司,閱讀以了解所提供的服務(wù),然后與某人聯(lián)系以獲得更多信息。當然,你也可以提供 web 服務(wù)而不在uddi中注冊,就像在地下室開展業(yè)務(wù),依靠的是口頭吆喝;但是如果您希望拓展市場,則需要 uddi 以便能被客戶發(fā)現(xiàn)。uddi 目錄條目是介紹所提供的業(yè)務(wù)和服務(wù)的 xml 文件。uddi 目錄條目包括三個部分?!鞍醉摗苯榻B提供服務(wù)的公司:名稱、地址、聯(lián)系方式等等;“黃頁”包括基于標準分類法(例如 north american industry classification

29、 system 和 standard industrial classification)的行業(yè)類別;“綠頁”詳細介紹了訪問服務(wù)的接口,以便用戶能夠編寫應用程序以使用 web 服務(wù)。服務(wù)的定義是通過一個稱為類型模型(或tmodel)的 uddi 文檔來完成的。多數(shù)情況下,tmodel 包含一個 wsdl 文件,用于說明訪問 xml web service 的 soap 接口,但是tmodel非常靈活,可以說明幾乎所有類型的服務(wù)。uddi 目錄還包含若干種方法,可用于搜索構(gòu)建您的應用程序所需的服務(wù)。例如,您可以搜索特定地理位置的服務(wù)提供商或者搜索特定的業(yè)務(wù)類型。之后,uddi 目錄將提供信息、聯(lián)

30、系方式、鏈接和技術(shù)數(shù)據(jù),以便您確定能滿足需要的服務(wù)。到現(xiàn)在為止,我們已經(jīng)知道了如何與 xml web service 通信 (soap),xml web service 是怎樣進行說明的 (wsdl),以及如何查找 xml web service (uddi)。這些內(nèi)容構(gòu)成了一套基本規(guī)范,為應用程序的集成和聚合提供了基礎(chǔ)。根據(jù)這些基本規(guī)范,我們可以構(gòu)建實際的解決方案,并從中獲益。但在這里卻有了一個問題:我們要怎樣用這個xml web service呢?有一個很簡單的方法,就是創(chuàng)建代理對象。.net xml web服務(wù)代理(通常簡稱為代理)是連接.net framework和xml web服務(wù)的

31、一座橋梁,它使得編程人員可以方便快速的使用服務(wù)。在visual studio.net里,可以自動創(chuàng)建代理對象,因此編程人員無需詳細了解底層技術(shù)。這就大大減少了出錯的概率,這也是為何我們選用visual studio.net 2003作為開發(fā)工具的原因之一。在以下的章節(jié)中,我們將介紹如何用asp.net創(chuàng)建xml web service,及如何使用代理對象來使用所創(chuàng)建的xml web service提供的服務(wù)。第三章 網(wǎng)站功能分析及設(shè)計3.1 需求分析網(wǎng)上書店系統(tǒng)主要是處理網(wǎng)上購書和庫存的系統(tǒng)。一個典型的網(wǎng)上書店系統(tǒng)應該提供具有圖書分類檢索和搜索、購物車管理、在線訂單、商品推薦、顧客評論等功能和

32、強大的后臺管理功能。根據(jù)網(wǎng)上書店基本需求,本系統(tǒng)需要完成的任務(wù)如下:l 書籍信息管理:管理員對書類和書本的添加、刪除、修改、查詢的操作,查看書籍的庫存,如果書籍低于安全庫存能及時進貨。l 訂單信息管理:管理員可以查詢新訂單、歷史訂單及刪除歷史訂單,通過訂單上的信息可以進行送貨及了解書本銷售情況。l 在線購物管理:用戶可以瀏覽不同類別的所有書本信息,也可以對書本進行查找,網(wǎng)上書店可以實現(xiàn)類別、書名、作者、出版社等綜合搜索功能,也可以查看用戶對書籍的評語,只當注冊用戶登錄后,才能對書籍進行評論。用戶無需登錄,就可以把喜愛的若干書籍放入購物車,同一本書也可以購買多冊;同時可以修改里面的購書情況,直至

33、購書完畢,確定所需書籍無誤后提交訂單,但此時系統(tǒng)會檢測用戶是否已經(jīng)登錄,如還沒登錄,就會引導用戶登錄。只有登錄后的用戶才能成功提交訂單。l 用戶管理:分前臺服務(wù)和后臺管理兩部分。在前臺服務(wù)中,用戶必須注冊才能成功購買店內(nèi)書籍,用戶注冊成為會員后,系統(tǒng)會在數(shù)據(jù)庫中添加用戶信息,包括用戶名、用戶密碼、住址、聯(lián)系電話等,用戶可自行修改個人資料;在后臺管理中,管理員可以對用戶的注冊信息進行查看,并對用戶的注冊信息進行驗證(通過,或者刪除)。l 管理員信息管理:管理員可以更新自己的個人信息。3.2 總體體系結(jié)構(gòu)圖在本設(shè)計中,我們將創(chuàng)建一個多層的分布式商務(wù)網(wǎng)站(網(wǎng)上書店)。此商務(wù)網(wǎng)站由三個邏輯層組成:數(shù)據(jù)

34、層、中間層和表示層。數(shù)據(jù)層是 sql server 中的數(shù)據(jù)庫。中間層處理如何訪問數(shù)據(jù)以及如何將數(shù)據(jù)分發(fā)到客戶端。表示層由基于 web 的應用程序組成。圖3.1描述了此商務(wù)網(wǎng)站的體系結(jié)構(gòu)。web客戶端應用程序web窗體業(yè)務(wù)邏輯的web servicesbookwebservice,orderwebservice,customerwebservicecommentwebserviceadminwebservice表示層中間層數(shù)據(jù)層jy_estore數(shù)據(jù)庫對數(shù)據(jù)庫操作的web servicesdatabasewebservice通過soap調(diào)用web services通過soap調(diào)用web ser

35、vices圖3.1 體系結(jié)構(gòu)圖3.3 網(wǎng)站功能模塊設(shè)計 根據(jù)對網(wǎng)上書店系統(tǒng)的需求分析,網(wǎng)上書店系統(tǒng)應該包括圖書管理模塊、訂單管理模塊、購物車管理模塊、用戶管理模塊和管理員信息管理模塊。l 圖書管理模塊圖書管理包括前臺與后臺。前臺是面向顧客的,它允許用戶瀏覽圖書列表、快速查詢所需要的圖書、查看和添加圖書評論;后臺是面向管理員的,允許管理員添加、刪除、修改、查詢書類與書籍。需要注意的一點是,在刪除書籍的時候,不能把它真的從數(shù)據(jù)庫里刪除,只能把它的狀態(tài)設(shè)為0(不可用)。因為如果真的把它從數(shù)據(jù)庫里刪除的話,會引起數(shù)據(jù)的不完整性。l 購物車管理模塊顧客可以把要買的圖書放入購物車,可以查看、刪除、修改購物

36、車的內(nèi)容,確認購物情況無誤后可以提交訂單。l 訂單管理模塊前臺訂單主要實現(xiàn)用戶結(jié)賬功能,當然也包括顧客查看歷史訂單的功能。后臺訂單功能模塊包括顯示新訂單信息和顯示訂單的詳細信息。顯示新訂單負責顯示所有的新訂單記錄,顯示訂單詳細信息負責顯示某個指定訂單的詳細信息,包括用戶名稱、所訂書籍名稱及數(shù)量、金額、聯(lián)系電話、地址信息。l 用戶管理模塊用戶管理模塊包含用戶注冊、用戶登錄、修改用戶個人信息(以上為前臺服務(wù))和管理員驗證用戶注冊信息(這個為后臺管理的)等功能。l 管理員信息管理模塊管理員更新自己的個人信息。3.4 網(wǎng)站功能模塊示意圖3.4.1 圖書管理模塊示意圖該模塊有兩部分:前臺服務(wù)和后臺管理。

37、 圖書管理模塊的前臺服務(wù)示意圖index.aspxallbookincategory.aspxsearchbook.aspxbookdetail.aspxsearchbookresult.aspx表示層中間層book.asmx對書籍操作的web服務(wù)database.asmx對數(shù)據(jù)庫操作的web服務(wù)jy_estore數(shù)據(jù)庫數(shù)據(jù)層每類銷量前二的書籍某類全部書籍信息某書籍詳細信息搜索結(jié)果comment.asmx對書籍評論操作的web服務(wù)書籍評論信息 圖書管理模塊的后臺管理示意圖managebook.aspxaddbookcategory.aspxaddorupdatesa

38、festock.aspxdelbook.aspxdelbookcategory.aspx表示層searchbook.aspxbooksearchresult.aspxbook.asmx對書籍操作的web服務(wù)中間層database.asmx對數(shù)據(jù)庫操作的web服務(wù)jy_estore數(shù)據(jù)庫數(shù)據(jù)層搜索結(jié)果添加書類刪除書類得需進貨書籍添加書籍刪除書籍更新安全庫存量comment.asmx對數(shù)據(jù)庫操作的web服務(wù)書籍評論addbookcover.aspx、addbook.aspx3.4.2 購物車管理模塊示意圖showcart.aspxbook.asmx對書籍操作的web服務(wù)中間層表示層jy_estor

39、e數(shù)據(jù)庫database.asmx對數(shù)據(jù)庫操作的web服務(wù)數(shù)據(jù)層得到書籍信息3.4.3 訂單管理模塊示意圖該模塊有兩部分:前臺服務(wù)和后臺管理。 訂單管理模塊前臺服務(wù)示意圖orderdetail.aspxcheckout.aspxorder.asmx對訂單操作的web服務(wù)下訂信息歷史訂單表示層中間層數(shù)據(jù)層jy_estore數(shù)據(jù)庫database.asmx對數(shù)據(jù)庫操作的web服務(wù) 訂單管理模塊后臺管理示意圖manageorder.aspxdelivergoodsyet.aspxorder.asmx對訂單操作的web服務(wù)表示層中間層數(shù)據(jù)層jy_estore數(shù)據(jù)庫datab

40、ase.asmx對數(shù)據(jù)庫操作的web服務(wù)orderdetail.aspxcustomer.asmx對顧客操作的web服務(wù)delivergoodsdetail.aspxordersearchresult.aspx注:頁面與訂單web服務(wù)的數(shù)據(jù)流都是訂單信息;而與顧客web服務(wù)的數(shù)據(jù)流則是顧客信息。3.4.4 用戶管理模塊示意圖該模塊同樣分為前臺服務(wù)和后臺管理兩部分。 用戶管理模塊前臺服務(wù)示意圖register.aspxchangeinformation.aspxgetpassword.aspxlogin.aspx中間層數(shù)據(jù)層jy_estore數(shù)據(jù)庫database.asmx對數(shù)據(jù)庫

41、操作的web服務(wù)customer.asmx對顧客操作的web服務(wù)表示層顧客注冊信息顧客密碼信息登錄信息顧客新信息 用戶管理模塊后臺管理示意圖managecustomer.aspxcustsearchresult.aspxcustomerdetail.aspxcustomer.asmx對顧客信息操作的web服務(wù)數(shù)據(jù)層jy_estore數(shù)據(jù)庫database.asmx對數(shù)據(jù)庫操作的web服務(wù)中間層表示層顧客詳細信息新注冊顧客信息搜索結(jié)果3.4.5 管理員信息管理模塊示意圖manageadmininfo.aspxadmin.asmx對管理員信息操作的web服務(wù)數(shù)據(jù)層jy_estore數(shù)

42、據(jù)庫database.asmx對數(shù)據(jù)庫操作的web服務(wù)中間層表示層新管理員信息第四章 網(wǎng)站數(shù)據(jù)庫層設(shè)計及實現(xiàn)一個成功的系統(tǒng),是由: 50%的“數(shù)據(jù)庫”+ 50%的“程序”所組成,數(shù)據(jù)庫設(shè)計的好壞是一個關(guān)鍵。如果把企業(yè)的數(shù)據(jù)比做生命所必需的血液,那么數(shù)據(jù)庫的設(shè)計就是應用中最重要的一部分。4.1 數(shù)據(jù)庫分析根據(jù)上一章對網(wǎng)上書店的功能分析及設(shè)計,該系統(tǒng)的e-r模型共有八個實體:l 書類(編號,名稱,狀態(tài))l 書籍信息(編號,條形碼,類別編號,書名,作者,出版社,出版日期,價格,封面名稱,書本介紹,銷售量,庫存量,狀態(tài))l 圖書評論(編號,書的isbn,用戶名,評論內(nèi)容,日期)l 用戶信息(編號,用戶

43、名,密碼,地址,電話,提取密碼問題,問題答案)l 訂單(編號,用戶編號,日期,總額,狀態(tài))l 訂單項(編號,所屬訂單號,圖書isbn,數(shù)量,小計)l 安全庫存信息(編號,安全庫存量)l 管理員信息(編號,姓名,密碼)各實體的e-r圖及相互聯(lián)系如下圖:管理員安全庫存編號姓名密碼編號安全庫存書類編號名稱狀態(tài)書籍編號條形碼類別編號書名作者書本介紹銷售量庫存量狀態(tài)屬于封面名稱評論編號日期評論內(nèi)容用戶名編號訂單項書的isbn顧客訂單用戶名密碼提取密碼問題電話地址問題答案數(shù)量圖書isbn所屬訂單號編號小計編號用戶編號日期狀態(tài)總額存在包含評論包含下訂n11n11n1n11n出版社出版日期價格4.2 數(shù)據(jù)庫設(shè)

44、計4.2.1 數(shù)據(jù)表設(shè)計根據(jù)上一節(jié)的e-r模型,可得下列數(shù)據(jù)表:1.書本種類信息表如下:表4.1 bookcategories書本種類信息表 列 名是否主鍵 類型是否為空說 明默認值id是intnot null 書類編號-name-varchar-書類名稱-status-bit-狀態(tài)12.書本信息表如下:表4.2 books書本信息表 列 名是否主鍵 數(shù)據(jù)類型是否為空說明默認值id-int- 編號-isbn是varcharnot null條形碼-categoryid-int-書類編號-name-varchar-名稱-author-varvhar-作者-publisher-varchar-出版社

45、-publishdate-datetime-出版日期-price-money-價格-covername-varchar-封面名-description-text-介紹-sale-int-銷售量0stock-int-庫存0status-bit-狀態(tài)13.書本評論信息表如下:表4.3 bookcomments書本評論信息表 列 名是否主鍵數(shù)據(jù)類型是否為空說明默認值id是intnot null 編號-bookisbn-varchar-書本條形碼-customername-varchar-用戶名-comment-text-評論-commentdate-datetime-評論日期-4.用戶信息表如下:表

46、4.4 customerinformations 用戶信息表 列 名是否主鍵數(shù)據(jù)類型是否為空說明默認值id是intnot null 編號- name-varchar-名稱-password-varchar-密碼-address-varchar-地址-telephone-varchar-電話-question-varchar-取回密碼問題-answer-varchar-取回密碼答案-status-bit-狀態(tài)05.訂單信息表如下:表4.5 orders訂單信息表 列 名是否主鍵數(shù)據(jù)類型是否為空說明默認值id是intnot null 訂單編號-customerid-int-用戶編號-orderda

47、te-datetime-訂單日期-status-int-狀態(tài)0total-money-總額-6.訂單項信息表如下:表4.6 orderitems 訂單類信息表 列 名是否主鍵數(shù)據(jù)類型是否為空說明默認值id是intnot null 編號-orderid-int-所屬訂單號-bookisbn-datetime-書本條形碼-quantity-int-數(shù)量-total-money-小計-7.安全庫存信息表如下:表4.7 safestock安全庫存信息表 列 名是否主鍵數(shù)據(jù)類型是否為空說明默認值id是intnot null 庫存編號-safestock-int-庫存量08.管理員信息表如下:表4.8 a

48、dmins管理員信息表 列 名是否主鍵數(shù)據(jù)類型是否為空說明默認值id是intnot null 編號-name-varchar-姓名-password-varchwr-密碼-4.2.2 各數(shù)據(jù)表的相互聯(lián)系第五章 中間層設(shè)計及實現(xiàn)中間層是用戶界面和后臺數(shù)據(jù)庫的連接橋梁,負責對整個網(wǎng)上書店系統(tǒng)的業(yè)務(wù)進行處理。為了使本網(wǎng)上書店系統(tǒng)更加通用且方便與其他應用系統(tǒng)集成或者交換商業(yè)信息,中間層實現(xiàn)為多個asp.net web server項目(包括databasewebservice、bookwebservice、commentwebservice、customerwebservice、orderwebser

49、vice、adminwebservice),在web服務(wù)器上運行,從而任何平臺的客戶端都可以通過標準的internet協(xié)議調(diào)用該業(yè)務(wù)邏輯,所以第三方使用它可以快速構(gòu)建具有基本功能的網(wǎng)上書店系統(tǒng)。5.1 databasewebservice5.1.1 功能描述這個web服務(wù)的功能主要是對數(shù)據(jù)庫進行基本操作的。5.1.2 接口描述提供了三個公共接口(方法):public void exenonquery(string strsql)進行插入、更新、刪除操作,沒有返回值。public int exescalar(string strsql)進行查詢操作,返回結(jié)果集中的第一行的第一列,該返回值被強行轉(zhuǎn)

50、化成整形。public dataset getdataset(string strsql)進行查詢操作,返回一個數(shù)據(jù)集。5.1.3 設(shè)計過程及編碼1、 打開visual studio.net,在文件菜單中選擇新建項目,接著在彈出的“新建項目”中的“新建類型”選擇“visual studio c#項目”,在“模板”中選擇“asp.net web服務(wù)”,最后輸入要保存該項目的位置(一定要放在iis的根目錄或者是它的虛擬目錄下),按確定就可以了。如圖5.1圖5.1 新建asp.net web服務(wù)2、 在解決方案資源管理器中打開web.config配置文件,在節(jié)之間添加 其它保持默認配置就可以了。3、

51、 在解決方案資源管理器中把service1.asmx改名為database.asmx,接著雙擊database.asmx.cs視圖設(shè)計器,就出現(xiàn)代碼編輯窗口了。完整代碼如下:/database.asmx.cs using system;using system.collections;using system.componentmodel;using system.data;using system.diagnostics;using system.web;using system.web.services;using system.configuration;using system.data.sqlclient;namespace databasewebservicewebservice(namespace=http:/localhost/jy_estore_webservices/,name=databasewebservice,description=對數(shù)據(jù)庫的一些基本操作。)public class database : system.web.services.webservice/數(shù)據(jù)庫連接語句protected strin

溫馨提示

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

評論

0/150

提交評論