基于NET的網上圖書銷售系統的設計與實現畢業論文_第1頁
基于NET的網上圖書銷售系統的設計與實現畢業論文_第2頁
基于NET的網上圖書銷售系統的設計與實現畢業論文_第3頁
基于NET的網上圖書銷售系統的設計與實現畢業論文_第4頁
基于NET的網上圖書銷售系統的設計與實現畢業論文_第5頁
已閱讀5頁,還剩66頁未讀, 繼續免費閱讀

下載本文檔

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

文檔簡介

1、 畢業設計(論文)中文題目:網上圖書銷售系統 學 院:北京交通大學遠程與繼續教育學院 專 業:計算機科學與技術 姓 名:于倩 學 號:08648573 指導教師: 張麗 2010年10月 25 日更多經典畢業論文: HYPERLINK /mydoc-4354614-1.html&folderId=62133 /mydoc-4354614-1.html&folderId=62133北京交通大學畢業設計(論文)成績評議年級08秋層次專升本專業計算機科學與技術姓名于倩題目網上圖書銷售系統指導教師評閱意見成績評定: 指導教師:年 月 日評閱教師意見 評閱教師:年 月 日答辯小組意見答辯小組負責人: 年

2、 月 日北京交通大學畢業設計(論文)任務書本任務書下達給:設計(論文)題目:web 方向一、設計(論述)內容:本次設計課題是“基于.Net平臺的WEB應用程序開發設計”,即使用微軟.NET技術開發應用程序。基于此大前提下,具體設計任務可在如下課題中選擇或自行選擇適當課題(需經指導教師批準). Web新聞系統(多級新聞管理)目標:實現多級新聞管理,后臺添加、編輯、刪除新聞,前臺新聞分類顯示;用戶管理、用戶權限等功能.企業網站管理系統目標:實現企業新聞信息、產品信息的發布和站內搜索系統等功能.在線留言系統目標:實現發表留言、填好詳細信息和內容即可留言管理留言; 必須管理員登陸,查看帖,對帖可以進行

3、回復和刪除功能。等。.博客管理系統目標:實現基本博客功能.在線圖書銷售目標:圖書在線銷售,實現圖書查詢、添加、刪除、客戶訂單操作等基本電子商務網站功能。.在線音樂網站目標:提供網絡音樂在線收聽、下載、查詢、發布等服務。以上課題可以分組(每組2人)開發,亦可獨立開發;二、基本要求:.所有課題盡量采用多層開發模型,即需體現界面層、業務邏輯層、數據庫層;.對于基于網絡的web應用程序必須實現所謂的前臺呈現后臺管理。原則上小組人員分別負責前臺與后臺的開發;.課題必須編寫詳細的需求分析文檔,貼近客觀現實,具有一定的實用價值;.功能上以實現基本目標為主要目的,對于擴展功能在時間允許的情況下盡量實現,即功能

4、開發的主次問題;對于無法實現但有必要的功能應在需求文檔中體現出來。.分工合作,密切配合,小組課題必須構成統一整體;.對設計中出現的問題認真記錄,并積極尋找解決的方法。三、重點研究的問題:、軟件軟件需求說明、源代碼、可執行程序、簡單的操作說明。、設計文檔需求說明書、數據模型(ERD)、功能結構圖、數據庫設計、主要界面設計。四、主要技術指標:PC機、網絡三劍客、Visual Studio.Net開發平臺、Access、SQL2000數據庫。五、其他要說明的問題畢業設計進度安排:第一周:查閱相關資料,軟件需求分析。第二周:根據需求分析做項目詳細設計。第三周:代碼實現。第四周:代碼實現。第五周:項目發

5、布與功能測試、畢業論文編寫。第六周:完善畢業論文準備畢業答辯。下達任務日期:2010 年 08 月 10 日 要求完成日期:2010年 10月 25日 答辯日期: 2010年 11月 13 日指導教師:開 題 報 告題 目:基于.NET的網上圖書銷售系統的設計與實現報告人:計算機科學與技術 于倩 2010年 08月 15 日一、文獻綜述隨著Internet的迅速崛起,網絡信息化的發展,在線圖書銷售作為一種典型的Web電子商務系統也迅速的發展并深入人們的日常生活中。更多的人更愿意足不出戶就可以挑選購買自己喜歡的各種書籍,這樣大大縮短了購書的時間,提高了效率。而且,圖書因其具有標識精晰、規格統一、

6、特征容易描述、同種商品個體之間無差異等特性而能成為發展電子商務的最為理想的商品類型??梢姡W上圖書銷售系統跨越了時間和空間的限制,給商業流通領域帶來了不一樣的變革,也給消費者帶來了便捷。只要網絡發展沒有停止,網上圖書銷售的發展就不會停止。二、選題的目的和意義本課題的目標就是是將圖書銷售由傳統的商店模式向在線銷售的轉變,同時還對銷售的定單和圖書的種類等信息進行在線管理,其意義就在于以此來實現人們不出門就能夠便捷的買到自己喜歡的各種書籍,向客戶展示出一種新穎的購書理念。網上購書的方式必將日趨被大家所接受。三、研究重點內容:本系統采用B/S(Browser/Server)結構進行設計,使用SQL S

7、erver 2000構建數據庫,并在.NET環境下使用Visual C#.net語言開發的一個功能完善的網上圖書銷售系統。其具有一定的實用性,用戶可以在網上瀏覽圖書信息,查找圖書資料,將感興趣的書籍加入收藏夾,或放入購物車并下訂單購買;同時,管理員也可以對整個系統的信息和數據進行管理,可以管理庫存書信息、分類信息、出版社信息、用戶信息和訂單信息。四、進度計劃:8月15日-8月22日:查閱相關資料,軟件需求分析。8月23日-8月31日:根據需求分析做項目詳細設計。9月1日-9月30日:代碼實現。 10月1-10月7日:項目發布與功能測試、畢業論文編寫。 10月8日-10月15:完善畢業論文準備畢

8、業答辯。五、指導教師意見:指導教師: 2010年 08月15 日中 期 報 告題 目:基于.NET的網上圖書銷售系統的設計與實現報告人:計算機科學與技術 于倩總體設計 功能劃分 本軟件系統功能 可分為兩大部分:(1)用戶使用功能模塊 (2)管理員管理功能模塊 功能描述用戶使用功能模塊:為用戶提供服務??蛻暨M行登錄或者注冊,進入界面 后可進行圖書瀏覽、查看、顯示、收藏、訂單、購物車等功能使用。 管理員管理功能模塊:實現管理員對書籍的管理功能。管理員可對書籍進行庫存、出版商、訂單、分類信息的管理,還可進行用戶查詢等功能。 框架(框圖)系統基本結構功能模塊結構進展情況程序編制已基本完成,現在正在進行

9、修改和調試。四、指導教師意見結 題 驗 收完成日期 2010年9月27日二、完成質量整個系統采用了B/S結構進行設計,使用SQLServer 2000數據庫,并在.NET環境下使用Visual C#.net語言開發,是一個功能較完善的網上圖書銷售系統,具有一定的實用性和安全性。存在問題 雖然整個系統實現了基本的一些功能,但是,要想成為一個完善的網上書籍銷售系統,還有很多需要改進的地方,尤其是訂單管理方面。目前網絡上購物的付款方式以網上銀行為主。但由于時間和所學有限并未添加此項功能接口,今后將進一步完善。四、結論隨著互聯網的普及,網上購物已經越來越受到大眾的接受與喜愛。網上銷售書籍將會逐漸進入人

10、們的日常生活中,并為我們帶來極大的樂趣與便捷。與此同時,ASP.NET作為.NET平臺的重要組成部分,在網絡系統開發上有著很大的優勢。整個系統按照B/S結構設計,加之SQL Server數據庫的使用,對于提高我們所學并將其應用于實際有著極其重要的幫助。今后我會繼續努力學習,進一步完善解決系統中存在的問題!指導教師:張麗 2010年10月25日基于.NET的網上圖書銷售系統的設計與實現摘 要隨著Internet的迅速崛起,網絡信息化的發展,在線圖書銷售作為一種典型的Web電子商務系統也迅速的發展并深入人們的日常生活中。更多的人更愿意足不出戶就可以挑選購買自己喜歡的各種書籍,這樣大大縮短了購書的時

11、間,提高了效率??梢?,網上圖書銷售系統跨越了時間和空間的限制,給商業流通領域帶來了不一樣的變革,也給消費者帶來了便捷。本系統采用B/S結構進行設計,是在.NET環境下使用Visual C#.net語言開發的一個功能完善的網上圖書銷售系統。其具有一定的實用性,用戶可以在網上瀏覽圖書信息,查找圖書資料,將感興趣的書籍加入收藏夾,或放入購物車并下訂單購買;同時,管理員也可以對整個系統的信息和數據進行管理,可以管理庫存書信息、分類信息、出版社信息、用戶信息和訂單信息。此外,本論文采用的分析方法和設計過程具有一定的普遍性,可以應用到其它系統的開發設計當中。關鍵詞:網上購書系統;.NET;電子商務;數據庫

12、The Design and Realization of Web Bookshop Management System Based on .NETAbstractWith the rapid rise of Internet, the development of network information technology, web bookshop system as a typical electronic commerce system also develops rapidly and deeps into peoples life. More and more people co

13、uld be willing to select and buy their favorite books at home, so that is greatly reducing the time of shopping, and improving the efficiency. Obviously, the web bookshop management system has crossed the constraint of the time and the space, it not only brings a different change to the commercial d

14、omain, but also brings convenient to the consumers. The system used B/S structure and developed a well-functioning online book sales system with the use of Visual C#.net language based on .NET. Also, the system has some practicality, customers can browse the details of books on Internet, search info

15、rmation of books, and add the books which they like to the favorites, or put them to the shopping cart and place an order to buy them. At the same time, Administrators can manage the entire systems information and data, as the information of inventory, category, publishers, customers and orders. In

16、addition, the analysis method and design process in the thesis have some universality, and can be applied to design other application system.Key words:Web bookshop system; .NET; Electronic commerce; Database目 錄TOC o 1-3 h z u HYPERLINK l _Toc174257554 1引言 PAGEREF _Toc174257554 h 1 HYPERLINK l _Toc17

17、4257555 1.1課題背景 PAGEREF _Toc174257555 h 1 HYPERLINK l _Toc174257556 1.2本課題研究內容 PAGEREF _Toc174257556 h 1 HYPERLINK l _Toc174257557 1.3本課題研究的意義 PAGEREF _Toc174257557 h 1 HYPERLINK l _Toc174257558 2網上圖書銷售系統相關技術 PAGEREF _Toc174257558 h 1 HYPERLINK l _Toc174257559 2.1.NET開發平臺及C.NET開發語言 PAGEREF _Toc17425

18、7559 h 1 HYPERLINK l _Toc174257560 2.2微軟企業庫 PAGEREF _Toc174257560 h 2 HYPERLINK l _Toc174257561 2.3三層應用程序模型 PAGEREF _Toc174257561 h 2 HYPERLINK l _Toc174257562 2.4信息安全性 PAGEREF _Toc174257562 h 3 HYPERLINK l _Toc174257563 3網上圖書銷售系統規劃設計PAGEREF _Toc174257563 h 3 HYPERLINK l _Toc174257564 3.1需求分析 PAGERE

19、F _Toc174257564 h 3 HYPERLINK l _Toc174257565 3.2系統基本結構 PAGEREF _Toc174257565 h 4 HYPERLINK l _Toc174257566 3.3系統設計 PAGEREF _Toc174257566 h 4 HYPERLINK l _Toc174257567 3.3.1系統模塊設計 PAGEREF _Toc174257567 h 4 HYPERLINK l _Toc174257568 3.3.2數據庫設計 PAGEREF _Toc174257568 h 5 HYPERLINK l _Toc174257569 4網上圖書

20、銷售系統開發實現 PAGEREF _Toc174257569 h 9 HYPERLINK l _Toc174257570 4.1用戶功能模塊實現 PAGEREF _Toc174257570 h 9 HYPERLINK l _Toc174257571 4.1.1用戶注冊登錄 PAGEREF _Toc174257571 h 9 HYPERLINK l _Toc174257572 4.1.2圖書瀏覽 PAGEREF _Toc174257572 h 13 HYPERLINK l _Toc174257573 4.1.3圖書顯示 PAGEREF _Toc174257573 h 14 HYPERLINK l

21、 _Toc174257574 4.1.4圖書搜索 PAGEREF _Toc174257574 h 15 HYPERLINK l _Toc174257575 4.1.5收藏夾 PAGEREF _Toc174257575 h 15 HYPERLINK l _Toc174257576 4.1.6購物車 PAGEREF _Toc174257576 h 15 HYPERLINK l _Toc174257577 4.1.7圖書訂單 PAGEREF _Toc174257577 h 19 HYPERLINK l _Toc174257578 4.2管理員功能模塊實現 PAGEREF _Toc174257578

22、h 20 HYPERLINK l _Toc174257579 4.2.1圖書管理 PAGEREF _Toc174257579 h 20 HYPERLINK l _Toc174257580 4.2.2分類信息管理 PAGEREF _Toc174257580 h 23 HYPERLINK l _Toc174257581 4.2.3出版商信息管理 PAGEREF _Toc174257581 h 24 HYPERLINK l _Toc174257582 4.2.4用戶信息管理 PAGEREF _Toc174257582 h 25 HYPERLINK l _Toc174257583 4.2.5訂單管理

23、PAGEREF _Toc174257583 h 25 HYPERLINK l _Toc174257584 結 論 PAGEREF _Toc174257584 h 26 HYPERLINK l _Toc174257585 參考文獻 PAGEREF _Toc174257585 h 26引言課題背景隨著Internet的迅速崛起,網絡信息化的發展,在線圖書銷售作為一種典型的Web電子商務系統也迅速的發展并深入人們的日常生活中。更多的人更愿意足不出戶就可以挑選購買自己喜歡的各種書籍,這樣大大縮短了購書的時間,提高了效率。而且,圖書因其具有標識精晰、規格統一、特征容易描述、同種商品個體之間無差異等特性而

24、能成為發展電子商務的最為理想的商品類型。可見,網上圖書銷售系統跨越了時間和空間的限制,給商業流通領域帶來了不一樣的變革,也給消費者帶來了便捷。只要網絡發展沒有停止,網上圖書銷售的發展就不會停止。本課題研究內容本系統采用B/S(Browser/Server)結構進行設計,使用SQL Server 2000構建數據庫,并在.NET環境下使用Visual C#.net語言開發的一個功能完善的網上圖書銷售系統。其具有一定的實用性,用戶可以在網上瀏覽圖書信息,查找圖書資料,將感興趣的書籍加入收藏夾,或放入購物車并下訂單購買;同時,管理員也可以對整個系統的信息和數據進行管理,可以管理庫存書信息、分類信息、

25、出版社信息、用戶信息和訂單信息。本課題研究的意義本課題的目標就是是將圖書銷售由傳統的商店模式向在線銷售的轉變,同時還對銷售的定單和圖書的種類等信息進行在線管理,其意義就在于以此來實現人們不出門就能夠便捷的買到自己喜歡的各種書籍,向客戶展示出一種新穎的購書理念。網上購書的方式必將日趨被大家所接受。網上圖書銷售系統相關技術.NET開發平臺及C.NET開發語言.NET框架是Microsoft公司推出的一種全新的開發平臺,提供了統一的、面向對象并且可以擴展的編程類庫和完善的集成開發環境,大大簡化了應用程序的開發過程,并且具有良好的移植性和安全性。ASP.NET是建立在公共語言運行庫上的Web編程框架,

26、相對于ASP而言,ASP.NET提供了更強的性能、更方便的工具支持、更好的平臺支持和靈活性。其一大革命性進步是可以將應用程序邏輯與表示代碼清楚地分開,這樣一來Web應用程序的開發人員可以使用和Windows桌面程序開發類似的編程模型,從而大大降低了開發難度。同時,ASP.NET在進行用戶界面開發和基礎程序結構生成時具有很多優勢。首先,ASP.NET是一個已編譯的、基于.NET的開發環境,利用整個.NET框架,開發人員可以方便的進行程序開發;其次,ASP.NET可以無縫地與其它HTML編輯器及其編程工具一起工作,使得Web開發更加方便;再次,在ASP.NET中利用.NET框架中的ADO.NET的

27、強大功能,可以高效便捷的訪問數據庫,ASP.NET提供了簡單的模型,該模型使開發人員能夠編寫應用程序的運行邏輯,并且保留了會話狀態功能;最后,.NET框架和ASP.NET中提供了默認授權和驗證方案,可以根據需要方便地移除、添加或者替換這些方案。Visual C#.NET語言是.NET平臺首推的開發語言,是一種全新的、面向對象的編程語言。C語言從C+語言發展而來,它同時吸取了C/C+和Java語言的優點,可以快速地編寫各種基于Microsoft .NET平臺的應用程序。C#語言使開發者用更少的代碼做更多的事,同時也不易出錯,提高了編程效率和安全性。微軟企業庫眾所周知,重復編寫數據訪問的代碼是十分

28、繁瑣的,實際上很多系統中都會有類似的模塊,比如配置的保存和讀取、寫日志、異常的處理等,大多數情況下開發人員需要在每個系統中編寫具有類似功能的子模塊,因此雖然它們之間只存在細微的區別,但是代碼必須做修改才能夠滿足要求。微軟公司提供的企業庫正是為了解決這些問題而推出的,開發人員無需修改代碼,只要修改幾個配置文件,就可以在不同的系統中實現類似的功能??梢?,企業庫大大減少了系統連接數據庫的代碼,帶來了方便。企業庫(EnterpriseLibraryJune2005)是微軟推出的開源項目,它為企業級開發提供了功能強大的多個應用程序塊。該企業庫的設計思想是為了協助開發商解決企業級應用開發過程中所面臨的一系

29、列共性的問題, 如安全、日志、數據訪問、配置管理等,并將這些廣泛使用的應用程序塊集成封裝至企業庫的程序包中。企業庫由七個子模塊組成,分別是配置管理應用程序塊(Configuration Application Block)、數據訪問應用程序塊(Data Access Application Block)、安全應用程序塊(Security Application Block)、日志及儀表盤管理應用程序塊(Logging and Instrumentation Application Block)、加密應用程序塊(Cryptography Application Block)、異常處理應用程序塊(

30、Exception Handling Application Block)、緩存應用程序塊(Caching Application Block),這七個應用程序塊幾乎覆蓋了企業級架構開發的核心環節。可見,企業庫具有可選擇、可擴展、實用、強大、易用性和規范性等特性。三層應用程序模型本課題在系統設計上采用了三層應用程序模型。所謂的“三層應用程序模型”是將系統按照功能的邏輯層次進行劃分的,分別是表示層、業務邏輯層和數據訪問層,以此實現模塊化的設計。數據訪問層顧名思義是用來處理系統對數據庫的操作,系統中所有數據庫的調用都通過數據訪問層實現。業務邏輯層處于表示層和數據訪問層之間,它一方面調用數據訪問層的

31、類和方法實現系統中的業務規則,一方面封裝相應的調用方法供表示層調用。表示層主要包括了系統的頁面呈現和相關控件的代碼。這種多層的應用程序體系結構具有以下一些優點,首先,程序代碼在各個層次之間實現松耦合和模塊化;其次,每個層次的代碼可重用,維護性更好;最后,可以將各個層次在物理上部署到多個層次中,實現部署的可擴展性。信息安全性在大多數系統中,用戶的密碼信息在數據庫中是以明文的方式存放的,數據庫管理員稍有疏忽就有可能導致用戶的隱私泄漏,尤其是對于一些涉及金融、商業領域的網絡應用,這一點漏洞將會導致十分嚴重的后果。所以,為了加強本系統信息的安全性,在用戶登錄模塊中,對密碼這樣的敏感信息進行加密是十分必

32、要的。本課題使用了一種常見的哈希加密算法MD5加密算法。MD5加密算法是不可逆的,經過哈希加密的數據是沒有相應的解密算法回到原狀的,在應用中是通過比較兩個數據的哈希值是否相等,從而達到校驗的目的。本課題中,在新客戶注冊的時候,對客戶設置的登錄密碼用MD5加密算法進行加密,那么存入數據庫的將是客戶登錄密碼的MD5哈希值,在登錄驗證時根據用戶輸入的密碼計算響應的MD5哈希值進行比較??梢姡ㄟ^MD5算法實現了數據的加密存儲和驗證,同時,MD5加密是不可逆的,即使惡意攻擊者獲得了數據庫的訪問權限,也仍然無法得知用戶的密碼信息,從而提高了系統的安全性。網上圖書銷售系統規劃設計需求分析網上圖書銷售系統首

33、先應該方便用戶瀏覽、購買圖書,同時需要由系統管理員進行管理和維護,由此分為前臺用戶功能和后臺管理員功能兩個方面。前臺用戶功能:為了方便用戶購買圖書,網上圖書銷售系統應該提供以下幾種用戶功能。用戶注冊登錄:用戶進行注冊,登錄。圖書瀏覽:以列表方式顯示圖書信息供用戶瀏覽。圖書顯示:顯示圖書的詳細信息。圖書搜索:使用搜索功能使用戶快速地找到所喜歡的圖書。收藏夾:用戶可以先將自己感興趣的圖書收藏起來,以便下次登錄后查看相關信息,如果打算購買時再放入購物車中。購物車:這是網上圖書銷售系統的基本元素。用戶找到所喜歡的圖書時,可以將其放入購物車中,再繼續查看其它圖書。圖書訂單:用戶下訂單購買圖書,由管理員定

34、期負責處理,根據訂單信息向用戶送貨。后臺管理員功能:管理員負責維護整個系統的運行,管理系統所有的信息和數據,應該提供以下功能。圖書管理:維護網上圖書銷售系統中的所有圖書信息。分類信息管理:維護系統中的所有分類信息。出版商信息管理:維護系統中的所有出版商信息。用戶信息管理:顯示所有注冊用戶的信息。訂單管理:定期對用戶訂單進行處理,向用戶送貨。系統基本結構由于B/S(Browser/Server)結構具有較好的獨立性、可伸縮性和安全性,適合于不同數據庫之間的互連,并且便于管理維護,因此整個系統采用客戶端、Web服務器及數據庫服務器的B/S結構進行設計。基本結構如圖2-1所示。圖3-1 系統基本結構

35、利用IIS架構Web服務器,用于連接客戶端和數據庫服務器。對于客戶端發出的需要對數據庫進行訪問的請求,Web服務器負責客戶端與數據庫服務器的網絡通信,并將相關數據嵌入返回給客戶端的Web頁面;對于客戶端發出的不需要對數據庫進行訪問的請求,Web服務器將直接處理這些請求,并將最終生成的Web頁面發往客戶端瀏覽器。系統設計系統模塊設計分為用戶功能模塊設計和管理員功能模塊設計兩方面,用戶登錄后,可以進行圖書瀏覽、下訂單等操作;管理員登錄后,可以進行圖書管理、分類信息管理、出版商信息管理、用戶信息管理和訂單管理等操作。用戶功能模塊設計:普通用戶的各個功能模塊,具體設計如圖3-2所示:圖3-2 用戶功能

36、模塊管理員功能模塊設計:管理員負責管理整個系統所有的信息和數據,并做相應的一些處理。其功能模塊如圖3-3所示。圖3-3 管理員功能模塊數據庫設計數據庫主要由9個數據表組成。Books(圖書信息表),Items(圖書項信息表),Categories(圖書分類信息表)存儲圖書的分類信息,ItemCategory(圖書項與分類關聯信息表),Publishers(出版商信息表)存儲出版商信息,Customers(客戶信息表)存儲用戶注冊信息,Favorites(收藏夾信息表)存儲用戶的收藏夾信息,Orders(訂單信息表)存儲訂單的各項信息,OrderItems(訂單項信息表)存儲訂單具體的購買信息。

37、從而,可詳細設計出各數據庫對象,包括數據表和存儲過程。數據表:圖書相關信息表分別如表3-1、表3-2、表3-3、表3-4、表3-5所示。表3-1 圖書信息表BooksBooks(ItemId為主鍵,PublisherId為外鍵)列(屬性)名中文名稱類型寬度是否允許為空ItemId圖書項ID號int4NOT NULLPublisherId出版商ID號int4NOT NULLAuthor作者名nvarchar40NOT NULLISBNISBN號char10NOT NULLSaleNum已銷售數量int4NOT NULL表3-2 圖書項信息表ItemsItems(PKId為主鍵)列(屬性)名中文名

38、稱類型寬度是否允許為空PKId圖書項唯一ID int4NOT NULLName書名nvarchar255NOT NULLImageFileSpace圖書封面圖文件地址nvarchar255NULLDescription說明nvarchar2000NULLUnitPrice單價Momey8NOT NULL表3-3 圖書分類信息表CategoriesCategories(PKId為主鍵)列(屬性)名中文名稱類型寬度是否允許為空PKId分類唯一IDint4NOT NULLDescription分類說明nvarchar255NULL表3-4 圖書項與分類關聯信息表ItemCategoryItemCat

39、egory(ItemId為主鍵,CategoryId為外鍵)列(屬性)名中文名稱類型寬度是否允許為空ItemId圖書項ID號int4NOT NULLCategoryId分類ID號int4NOT NULL表3-5 出版商信息表PublishersPublishers(PKId為主鍵)列(屬性)名中文名稱類型寬度是否允許為空PKId出版商唯一IDint4NOT NULLName出版商名稱nvarchar40NOT NULL用戶相關信息表分別如表3-6、表3-7所示。表3-6 客戶信息表CustomersCustomers(PKId為主鍵)列(屬性)名中文名稱類型寬度是否允許為空PKId客戶唯一ID

40、int4NOT NULLEmail客戶Emailnvarchar50NOT NULLPassword客戶登錄密碼binary24NULLName客戶名稱nvarchar40NULL表3-7 收藏夾信息表FavoritesFavorites(PKId為主鍵,CustomerId、ItemId為外鍵)列(屬性)名中文名稱類型寬度是否允許為空PKId收藏夾ID號int4NOT NULLCustomerId客戶ID號int4NOT NULLItemId圖書項ID號Int4NOT NULL訂單相關信息表分別如表3-8、表3-9所示。表3-8 訂單信息表OrdersOrders(PKId為主鍵,Custo

41、merId為外鍵)列(屬性)名中文名稱類型寬度是否允許為空PKId訂單唯一IDint4NOT NULLCustomerId客戶ID號int4NULLStatus訂單狀態int4NULLOrderData訂單生成日期datetime8NULLShipToName收件人名稱nvarchar40NULLShipToAddress送貨地址nvarchar255NOT NULLSubTotal總價Momey8NULL表3-9 訂單項信息表OrderItemsOrderItems(OrderId和ItemId為主鍵)列(屬性)名中文名稱類型寬度是否允許為空OrderId訂單ID號int4NOT NULLI

42、temId圖書項ID號int4NOT NULLUnitPrice單價money8NOT NULLQuantity購買數量Int4NOT NULL存儲過程:因為存儲過程可以在程序中被多次調用,而不必多次重復編寫該存儲過程的SQL語句,所以數據庫中建立了大量的存儲過程,便于將相關信息加入到數據庫中。與客戶相關的存儲過程有:新客戶注冊(CustomerRegister),客戶登錄(CustomerLogin),修改客戶信息(EditCustomer),獲取所有客戶的信息(GetCustomers),獲取單個用戶的信息(GetCustomerById)。與圖書相關的存儲過程有:新增圖書(AddBook

43、),刪除圖書(DelBook),修改圖書信息(EditBook),獲取所有圖書信息(GetAllBooks),根據圖書項ID獲取單本圖書信息(GetBookById),根據分類ID獲取圖書信息(GetBooksByCategoryId),根據分類ID獲取熱門書圖書信息(GetPopBooksByCategoryId),根據書名獲取圖書信息(GetBooksByTitle),根據關鍵詞獲取圖書信息(GetBooksByKeyword),根據ISBN獲取圖書信息(GetBooksByISBN),根據出版商獲取圖書信息(GetBooksByPublisherId)根據作者獲取圖書信息(GetBook

44、sByAuthor)。與出版商相關的存儲過程有:新增出版商(AddPublisher),刪除出版商(DelPublisher),修改出版商信息(EditPublisher),獲取所有出版商信息(GetPublishers)。與圖書分類相關的存儲過程有:新增圖書分類(AddCategory),刪除圖書分類(DelCategory),修改圖書分類說明(EditCategory),獲取圖書分類信息(GetCategories)。與收藏夾相關的存儲過程有:新增收藏記錄(AddFavorite),刪除收藏信息(DelFavorite),根據客戶ID獲取收藏記錄(GetFavoritesByCustome

45、rId)。與訂單相關的存儲過程有:獲取訂單信息(GetOrders),獲取單條訂單信息(GetOrderById),根據客戶ID獲取訂單信息(GetOrdersByCustomerId),根據狀態獲取訂單信息(GetOrdersByStatus),根據日期獲取訂單信息(GetOrdersByDate),提交訂單(SubmitOrder),修改訂單(EditOrder),取消訂單(CancelOrder),接受訂單(AcceptOrder),確定訂單(ConfirmOrder),撤銷訂單(RevokeOrder),PopFirstWord ,插入訂單明細記錄(InsertOrderDetails

46、ByList),插入單條訂單項(InsertOrderDetail)。由于該系統建立的存儲過程很多,所以在此就只列舉出一個存儲過程的SQL腳本。新增圖書存儲過程AddBook的SQL腳本如下:CREATE PROCEDURE AddBook Name NVARCHAR(255), ImageFileSpace NVARCHAR(255), Description NVARCHAR(2000), UnitPrice MONEY, PublisherId INT, Author NVARCHAR(40), ISBN NCHAR(13), CategoryId INT, ItemId INT = N

47、ULL OUTPUT output可以返回一個值AS begin tran -事務 -新增Items表記錄 insert Items (Name, ImageFileSpace, Description, UnitPrice) select Name,ImageFileSpace,Description,UnitPrice select ItemId = IDENTITY -獲取數據表中最后一條插入數據的IDENTITY值-新增Books表記錄 insert Books (ItemId, PublisherId, Author,ISBN) select ItemId,PublisherId,A

48、uthor,ISBN-新增ItemCategory表記錄 insert ItemCategory (ItemId,CategoryId) select ItemId,CategoryId commit tran return 0GO網上圖書銷售系統開發實現用戶功能模塊實現用戶功能模塊主要包括注冊登錄、圖書瀏覽、圖書顯示、圖書搜索、購物車、收藏夾、圖書訂單這幾個部分。在程序設計中,各模塊后臺編碼部分的設計實現是重點和難點,因此論文將著重說明模塊的后臺編碼部分,對于頁面設計部分只作了簡單說明。用戶注冊登錄用戶首先填寫相關信息進行注冊,之后就可以登錄到本系統中購買圖書。注冊模塊的主要功能是把用戶的注

49、冊信息寫到數據庫中。同時,為了減少用戶輸入錯誤,注冊模塊需要對相關信息作必要的驗證。利用ASP.NET提供的驗證控件可以方便的驗證用戶輸入,這里將幾個驗證控件結合起來實現比較完整的驗證功能。在注冊頁面設計中,使用RequiredFieldValidator控件檢查用戶是否在輸入框中填寫了必要的文字,確保用戶不跳過輸入,使用RegularExpressionValidator控件檢查輸入是否符合正則表達式,使用CompareValidator控件對比兩次密碼輸入是否相同。部分代碼如下:Email:密碼:重復輸入密碼:用戶注冊頁面設計如圖4-1所示。圖4-1 用戶注冊頁面用戶輸入相應信息后,單擊“

50、注冊”按鈕,可將用戶信息插入到數據庫中的Customers數據表中。該功能由單擊事件處理函數btnRegister_Click()來實現,部分程序代碼如下:private void btnRegister_Click(object sender, System.EventArgs e)if ( CustomerSystem.Register(tbEmail.Text, tbUserName.Text, tbPassword.Text) )lblMessage.Visible = true;lblMessage.Text = SUCCESS_MESSAGE;ltLink.Visible = tr

51、ue;ltLink.Text = LINK_STRING;elselblMessage.Visible = true;lblMessage.Text = ERR_MESSAGE;程序中調用了業務邏輯層的CustomerSystem.Register( ),來實現將注冊信息添加到數據庫中去,其中針對用戶設置的密碼是先通過MD5加密算法加密后再添加到數據庫中去的。CustomerSystem.Register( )類的代碼如下:public static bool Register(string strEmail, string strName, string strPassword)int iR

52、et = -1;tryMD5 md5 = MD5.Create();/MD5加密算法byte btPassword = md5.ComputeHash(Encoding.Unicode.GetBytes(strPassword);Customer c = new Customer(strEmail, btPassword, strName);iRet = _customers.CustomerRegister(c);catch(Exception ex)bool rethrow = ExceptionPolicy.HandleException(ex, Logging Policy);if (

53、rethrow)throw;return iRet = 0;程序中又定義了Common命名空間中的公共類Customer的對象,還調用了數據訪問層DataAcess中的CustomerRegister()方法,以此通過微軟企業庫連接數據庫中的用戶注冊存儲過程CustomerRegister。Customer類的代碼如下:public class Customerpublic Customer(string strEmail, byte btPassword, string strName)_email = strEmail;_password = btPassword;_name = strN

54、ame;private string _email;private byte _password;private string _name;public string Emailget return _email;set _email = value;public byte Passwordget return _password;set _password = value;public string Nameget return _name;set _name = value;CustomerRegister()的代碼如下:public int CustomerRegister(Custom

55、er c)string sqlCommand = CustomerRegister;/為執行存儲過程進行準備,參數賦值DBCommandWrapper dbCommandWrapper = _db.GetStoredProcCommandWrapper(sqlCommand); dbCommandWrapper.AddInParameter(Email, DbType.String, c.Email);dbCommandWrapper.AddInParameter(Password, DbType.Binary, c.Password);dbCommandWrapper.AddInParame

56、ter(Name, DbType.String, c.Name);dbCommandWrapper.AddParameter(RETURN_VALUE, DbType.Int32, ParameterDirection.ReturnValue, return, DataRowVersion.Default, null);_db.ExecuteNonQuery(dbCommandWrapper);/執行存儲過程return (int)dbCommandWrapper.GetParameterValue(RETURN_VALUE);在數據庫設計中,用戶注冊Email地址是關鍵,它的值是唯一的,不能

57、重復,如果重復,企業庫和數據庫就會拋出異常,并且終止執行SQL語句。根據數據庫是否產生異常及異常的代碼,就可以較好的實現模塊功能,并且給用戶顯示友好的提示信息。用戶注冊后,在登錄頁面輸入Email和密碼可以登錄到系統中。登錄頁面如圖4-2所示。圖4-2 登錄頁面登錄模塊驗證程序根據數據庫中已有的注冊信息,對客戶端發送過來的Email和密碼進行驗證。判斷該Email地址及相應的密碼在數據庫中是否存在,進而可進行購買圖書等操作。輸入信息,點擊“登錄”按鈕將執行的部分程序代碼如下:private void btnLogin_Click(object sender, System.EventArgs

58、e)int iRet = CustomerSystem.Login(Email, Password);if(Email=)&(Password=admin)SessionUserName=;/通過session驗證管理員Response.Redirect(/admin/Default.aspx);/進入管理員頁面elseif (iRet 0)FormsAuthentication.RedirectFromLoginPage(iRet.ToString(), false);/重定向elselblMessage.Visible = true;lblMessage.Text = LOGIN_FAIL

59、_MESSAGE;如果Email為并且Password為admin,就進入后臺管理員頁面,其它用戶成功登錄后則進入前臺圖書銷售頁面。圖書瀏覽圖書瀏覽使用2種方式實現:分類瀏覽和熱門書推薦。頁面設計中,兩種方式都使用了ASP.NET中的DataList控件來綁定數據,以列表方式顯示。因為datalist自定義模塊比datagrid更能夠顯示豐富多變的數據列表。分類瀏覽和熱門書推薦的實現都差不多,唯一的差異就是熱門書推薦部分只顯示銷售量前4的圖書。分類瀏覽圖書頁面的執行結果如圖4-3所示。當用戶點擊相關類別鏈接時,就可以實現分類瀏覽。這些鏈接包含查詢字符串,在Web服務器中通過解析這些字符串來確定

60、用戶所點擊的鏈接。當點擊“藝術”鏈接時,頁面上半部分顯示熱門書推薦,下半部分顯示全部圖書列表,顯示結果如圖4-4所示。圖4-3 分類瀏覽頁面 圖4-4 分類瀏覽顯示結果在分類瀏覽頁面Category.aspx的實現過程中,“收藏夾”按鈕只有在用戶登錄的情況下才顯示,在DataList控件里ItemCreate事件的相應函數中添加了相應的代碼進行判斷。其后臺的部分代碼如下:private void dlBook_ItemCreated(object sender, System.Web.UI.WebControls.DataListItemEventArgs e)/DataList.ItemCr

溫馨提示

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

評論

0/150

提交評論