畢業(yè)設計論文視頻點播系統(tǒng)_第1頁
畢業(yè)設計論文視頻點播系統(tǒng)_第2頁
畢業(yè)設計論文視頻點播系統(tǒng)_第3頁
畢業(yè)設計論文視頻點播系統(tǒng)_第4頁
畢業(yè)設計論文視頻點播系統(tǒng)_第5頁
已閱讀5頁,還剩37頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、北京理工大學繼續(xù)教育學院畢業(yè)設計(論文)北京理工大學繼續(xù)教育學院畢業(yè)設計任務書類別: 高起本專 業(yè): 計算機科學與技術班 級: 計算機科學與技術A班姓 名: 劉海括畢業(yè)設計題目: 視頻點播系統(tǒng) 指導教師姓名: 宋 曄 負責人簽字: 年 月 日題目:視頻點播系統(tǒng) 本系統(tǒng)是一個小型系統(tǒng),采用SQL Server數(shù)據(jù)庫,將HTML、ASP.NET及JavaScript完美融合,力求界面美觀、操作流暢、易于實現(xiàn)。視頻點播系統(tǒng)根據(jù)流媒體傳輸原理,在校園局域網(wǎng)的基礎上實現(xiàn)了用戶信息管理、視頻文件的添加、刪除、修改及在線播放和搜索功能。任務要求:1、 任務內容描述:1開發(fā)工具SQL Server,ASP.N

2、ET .NET Framework2系統(tǒng)主要功能:(1)操作員管理:能夠實現(xiàn)后臺管理添加、刪除、修改操作員。(2)用戶管理:能夠對前臺注冊的用戶進行管理。(3)視頻管理:能夠對視頻資料進行上傳、修改以及刪除。(4)分類管理:能夠對電影的分類進行維護。(5)評論管理:能夠對用戶的評價進行管理。三進度安排1第一階段:要求完成系統(tǒng)需求分析;2第二階段:要求完成系統(tǒng)設計;3第三階段:要求完成系統(tǒng)實現(xiàn)與測試;4第四階段:要求完成畢業(yè)設計論文的撰寫。指導教師簽字: 年 月 日北京理工大學繼續(xù)教育學院畢業(yè)論文論文題目:視頻點播系統(tǒng)專業(yè): 計算機科學與技術班級: 計算機科學與技術A班姓名: 劉海括學號:a05

3、7摘 要VOD(Video On Demand) 即交互式多媒體視頻點播,是隨著計算機技術和網(wǎng)絡通訊技術的發(fā)展,綜合了計算機技術、通訊技術而迅速新興的一門綜合性技術。它利用了網(wǎng)絡和視頻技術的優(yōu)勢,徹底改變了過去收看節(jié)目的被動方式,實現(xiàn)了節(jié)目的按需收看和任意點播,集動態(tài)影視圖、聲音、文字等信息為一體,為用戶提供實時、交互,按需點播服務的系統(tǒng)。視頻點播系統(tǒng)根據(jù)流媒體傳輸原理,在校園局域網(wǎng)的基礎上實現(xiàn)了用戶信息管理、視頻文件的添加、刪除、修改及在線播放和搜索功能。本系統(tǒng)是一個小型系統(tǒng),采用SQL Server數(shù)據(jù)庫,將HTML、ASP.NET及JavaScript完美融合,力求界面美觀、操作流暢、易

4、于實現(xiàn)。 本文結合平臺開發(fā)實例,闡述了基于Web的交互式視頻點播系統(tǒng)的原理、軟件結構和設計實現(xiàn),并在此基礎上對網(wǎng)絡優(yōu)化作相應的探索。關鍵字:視頻點播,SQL Server,ASP.NETV目 錄摘 要I目 錄II第1章 緒 論5第2章 需求分析62.1 系統(tǒng)可行性分析62.1.1 技術可行性分析62.1.2 經濟可行性分析62.1.3 管理可行性分析62.2 系統(tǒng)功能需求72.3 開發(fā)工具介紹72.3.1 ASP.NET72.3.2 SQL Server數(shù)據(jù)庫82.3.3 .NET Framework9第3章 系統(tǒng)設計113.1 系統(tǒng)總體功能設計113.2 系統(tǒng)角色設計123.3 系統(tǒng)數(shù)據(jù)庫設

5、計143.3.1 邏輯結構設計143.3.2 數(shù)據(jù)表設計16第4章 系統(tǒng)詳細設計184.1 普通用戶功能設計184.1.1 系統(tǒng)注冊頁面184.1.2 會員登錄224.1.3 電影搜索244.1.4 信息查看及修改244.1.5 密碼修改264.1.6 電影詳細信息274.2管理員功能設計284.2.1 操作員管理284.2.2 影片管理29VII4.2.3 分類管理344.2.4 用戶管理354.2.5 評論管理35第5章 系統(tǒng)的發(fā)布和運行365.1 發(fā)布網(wǎng)站365.2 IIS配置36總 結39致 謝41參考文獻42I第1章 緒 論隨著時代進步,人類對于信息存儲方式和質量的要求也日漸提高。最

6、初,人們沒有發(fā)明文字,就用一些物體來記錄發(fā)生的大事,比如古代波斯人就用繩子來記錄發(fā)生的事,又或者畫圖來記錄發(fā)生的大事;隨后人們發(fā)明了文字,擁有文字的民族就運用文字來記錄過去所發(fā)生的重大事件而形成歷史,比如中國古代的二十四史;到了19世紀人類發(fā)明了相機,用照片記錄人類歷史,到了二戰(zhàn)后期,美國人發(fā)明了世界第一臺計算機,直到現(xiàn)在計算機和內存在不斷地更新和發(fā)展,并且到了今天互聯(lián)網(wǎng)也發(fā)展到了一個繁榮階段,幾乎每時每刻都有龐大的數(shù)據(jù)量在互聯(lián)網(wǎng)上傳輸,人們需要的存儲的信息也記錄到內存中,而現(xiàn)在人們所需要記錄的數(shù)據(jù)形式也有較大的改變,比如某些重要的需要記錄的新聞,相對用照片或者文字來說,用視頻形式表現(xiàn)出來則更

7、具體。 眾所周知,現(xiàn)在人們通過視頻圖像來獲取的信息大部分來源于互聯(lián)網(wǎng)和電視,但是電視往往不能第一時間將新的消息傳達給人們,因此互聯(lián)網(wǎng)相對電視來看,更適合將重大新聞的視頻圖像傳達給用戶。而且,視頻對于人們來說已經不僅僅拘泥于只是用來做存儲重要新聞信息的手段,更傾向不同人群的不同需求,比如現(xiàn)在的一些拍客,喜歡把自己拍到的有趣的一些東西給朋友分享,或者一些學者為了能讓學生們,而通過互聯(lián)網(wǎng),能更方便快捷實現(xiàn)人們對不同的視頻的不同需求??梢酝ㄟ^這樣一種網(wǎng)站,將最新消息視頻,或者用戶自己的自拍視頻,以及電視劇、電影劇集、綜藝節(jié)目,或者一些教學視頻,免費提供給用戶,可以滿足用戶的不用需求,人們只要登錄網(wǎng)站便

8、可查詢查看當天或者當前時段最受關注的視頻信息,或者查詢自己所需的視頻信息并觀看,用戶僅需注冊賬號,將自己的視頻上傳到網(wǎng)站,供大家分享,而當天新聞視頻,也可以上傳到網(wǎng)站,這樣人們可以直接第一時間點擊觀看。這樣,人們無需等待電視固定時段的新聞,而是隨時隨地的就能了解每時每刻,世界各地都發(fā)生了什么,注冊后的會員也可以管理自己的視頻,如果自己的視頻不方便與人們分享,還可以對視頻進行刪除等操作。視頻點播VOD出現(xiàn)的最初動力是人們對廣播電視的更高需求。在傳統(tǒng)的電視中,觀眾完全是被動的。節(jié)目提供者播放什么節(jié)目,觀眾就只能觀看什么節(jié)目,節(jié)目的播放時間也是無法按照觀眾的意愿改變的。盡管電視臺可以提供很多的節(jié)目,

9、但要想完整地收看到一個自己滿意的節(jié)目,對于許多人來講也是不太容易做到的,因為在快節(jié)奏的現(xiàn)代生活中,許多人不可能為了看某一個電視節(jié)目而預先安排自己的時間。被動收看節(jié)目的人們希望能夠按照自己的需要自由地點播節(jié)目。視頻點播的出現(xiàn)正迎合了人們的這種需求,這種信息服務方式符合人們對信息資源更深層次的需要。第 37 頁 共 42 頁第2章 需求分析2.1 系統(tǒng)可行性分析2.1.1 技術可行性分析系統(tǒng)的主要技術難度是解決并發(fā)流數(shù)。國外許多大公司推出的專有視頻服務器可以支持幾百個并發(fā)流,但價格相當昂貴。國內的幾個廠家采用的是高檔服務器作為視頻服務器,可以支持幾十個流,最多100個。采用服務器替代專有視頻服務器

10、硬件成本大大降低,但單臺服務器的并發(fā)數(shù)和硬盤擴充的極限太小,不能滿足大型的市場需求。現(xiàn)在的軟件開發(fā)語言有很多種,但一定要找一個功能強大,易學易用易掌握且適合自己的語言也就不多了。本系統(tǒng)經過多種語言的優(yōu)缺點的對比之后,采用的是ASP.NET作為本系統(tǒng)的開發(fā)平臺,以SQL Server作后臺的數(shù)據(jù)庫。2.1.2 經濟可行性分析軟件的經濟可行性是指軟件所能帶來的經濟效益與開發(fā)設計所需要的投資相比,是否相適宜,同時還要看此軟件能否真正給用戶帶來足夠的經濟效益,開發(fā)的這套系統(tǒng)正是考慮系統(tǒng)開發(fā)的成本而設計。本系統(tǒng)的開發(fā)在經濟上是完全可行的。開發(fā)此軟件不需要大量的經費,而且是個人獨立設計,可以節(jié)省許多費用,

11、同時也可提高個人的實際動手能力。綜合以上技術特點,為了降低成本,采用PC服務器作為視頻服務器,而且PC服務器的性能還在不斷提高,支持的并發(fā)數(shù)也在增加。PC服務器作為視頻服務器的方案正逐步取代以前的專有視頻服務器。為了解決多并發(fā)流數(shù),采用多臺PC服務器以集群的形式,通過控制網(wǎng)關完成服務器之間的協(xié)調,提高系統(tǒng)的利用率??刂凭W(wǎng)關以及集群服務器技術是技術增值點。另外,由于采用集群形式,不要求PC服務器實現(xiàn)最大流數(shù),可以采用低檔PC服務器和IDE硬盤,這樣又可以提高單臺視頻服務器的性能價格比。經過預研和測試,服務器的瓶頸不在CPU,這樣可以用低檔CPU和主板。采用IDE RAID卡和7200轉IDE硬盤

12、的服務器仍可支持三、四十個并發(fā)流。控制網(wǎng)關的技術經過前 期的預研也是可行的。系統(tǒng)的整個方案都是自行開發(fā)并在通用的軟硬件平臺上運行 ,具有較強的靈活性。2.1.3 管理可行性分析管理可行性是指是否適合管理人員的管理,由于本系統(tǒng)不需要大量的人員來維持維護,只需要幾個人來維護數(shù)據(jù)庫、視頻信息,人員信息等,通過現(xiàn)有的管理制度,在管理方面是可行的。綜上所述,此系統(tǒng)能夠確定開發(fā),在技術和經濟等方面都可行,并且能實現(xiàn)低投入和視頻點播上傳。因此,視頻點播系統(tǒng)的開發(fā)是完全可行的。2.2 系統(tǒng)功能需求網(wǎng)上視頻點播系統(tǒng)是一種能夠在線播放視頻、上傳視頻的網(wǎng)站,目的是希望人們既能觀看別人視頻,也能自己上傳自己的視頻,滿

13、足當今人們的精神需要。視頻點播系統(tǒng)應該有以下功能:包括用戶的注冊、登錄、視頻查詢、視頻上傳、視頻播放、用戶信息修改、視頻信息修改、刪除用戶,刪除視頻文件、新建管理員。并具有角色和權限控制來保證系統(tǒng)功能完善。該系統(tǒng)的角色和權限分別如下:角色主要有:超級管理員、普通管理員、普通用戶。超級管理員的權限及功能主要包括操作員管理、用戶管理、視頻管理、分類管理和評論管理。(1)操作員管理:能夠實現(xiàn)后臺管理添加、刪除、修改操作員。(2)用戶管理:能夠對前臺注冊的用戶進行管理。(3)視頻管理:能夠對視頻資料進行上傳、修改以及刪除。(4)分類管理:能夠對電影的分類進行維護。(5)評論管理:能夠對用戶的評價進行管

14、理。普通管理員主要進行用戶管理、視頻管理、分類管理和評論管理。普通用戶主要進行電影的搜索、觀看、評論以及個人信息的維護。2.3 開發(fā)工具介紹2.3.1 ASP.NET ASP.NET 不僅僅是 Active Server Page (ASP) 的下一個版本;它還提供了一個統(tǒng)一的 Web 開發(fā)模型,其中包括開發(fā)人員生成企業(yè)級 Web 應用程序所需的各種服務。ASP.NET 的語法在很大程度上與 ASP 兼容,同時它還提供一種新的編程模型和結構,可生成伸縮性和穩(wěn)定性更好的應用程序,并提供更好的安全保護??梢酝ㄟ^在現(xiàn)有 ASP 應用程序中逐漸添加 ASP.NET 功能,隨時增強 ASP 應用程序的功

15、能。ASP.NET是一個已編譯的、基于 .NET 的環(huán)境,可以用任何與 .NET 兼容的語言(包括 Visual Basic .NET、C# 和 JScript .NET.)創(chuàng)作應用程序。另外,任何 ASP.NET 應用程序都可以使用整個 .NET Framework。開發(fā)人員可以方便地獲得這些技術的優(yōu)點,其中包括托管的公共語言運行庫環(huán)境、類型安全、繼承等等。ASP.NET 可以無縫地與 WYSIWYG HTML 編輯器和其他編程工具(包括 Microsoft Visual Studio .NET)一起工作。這不僅使得 Web 開發(fā)更加方便,而且還能提供這些工具必須提供的所有優(yōu)點,包括開發(fā)人員

16、可以用來將服務器控件拖放到 Web 頁的 GUI 和完全集成的調試支持。當創(chuàng)建ASP.NET 應用程序時,開發(fā)人員可以使用 Web 窗體或XML Web services,或以他們認為合適的任何方式進行組合。每個功能都能得到同一結構的支持,能夠使用身份驗證方案,緩存經常使用的數(shù)據(jù),或者對應用程序的配置進行自定義,這里只是列出幾種可能性而已。2.3.2 SQL Server數(shù)據(jù)庫ASP.NET所支持的數(shù)據(jù)庫很多,因此根據(jù)實際需要來使用最合理的數(shù)據(jù)庫。數(shù)據(jù)庫分為平面數(shù)據(jù)庫和關系數(shù)據(jù)庫,但平面數(shù)據(jù)庫會使存儲空間被重復和浪費,而關系數(shù)據(jù)庫則是由若干個平面數(shù)據(jù)庫連接在一起而形成的,采用關系數(shù)據(jù)庫,用戶不

17、僅能像在平面數(shù)據(jù)庫管理中那樣搜索各個獨立的記錄,而且能夠建立一個記錄集合與另一個記錄集合的關系,就能使用戶的效率更高,操作更簡捷。數(shù)據(jù)庫,簡單而言就是要存儲這些大量的數(shù)據(jù)而且要能正確的存儲。數(shù)據(jù)會隨著時間的增加,而積累,導致數(shù)據(jù)量日漸龐大。常常需要快速地在大量的數(shù)據(jù)中,找出設備的存儲記錄,同時也希望數(shù)據(jù)能有一定的保密性。而數(shù)據(jù)的最終作用,就是提供決策分析的信息。如果不能利用大量數(shù)據(jù)的分析,以最快的速度找到要找尋的數(shù)據(jù),則數(shù)據(jù)只是簡單的資料羅列而己。由最基本的元素組合成數(shù)據(jù)叫記錄(Record)。由相同性質的記錄組合起來叫表(Table),相關的表組合起來就叫數(shù)據(jù)庫 (Database)。處理數(shù)

18、據(jù)的建立、查詢、更新等工作的程序就叫做數(shù)據(jù)庫管理系統(tǒng)(Database Management System, DBMS)??v向的每一列叫做字段,橫向組合起來就成為一條記錄所有記錄的集合就是表,與其他相關的表組合起來就叫做數(shù)據(jù)庫。數(shù)據(jù)庫應用系統(tǒng)是以數(shù)據(jù)庫為基礎的信息管理系統(tǒng)。手工方式的數(shù)據(jù)處理是繁瑣的重復勞動。因此,也就有低效率、準確性差以及復雜化等缺點的不可避免性,隨著計算機的出現(xiàn),開辟了電子數(shù)據(jù)處理的新紀元。本系統(tǒng)采用SQL Server 2005作為后臺開發(fā)工具,其特點如下: Internet 集成SQL Server 2005數(shù)據(jù)庫引擎提供完整的XML支持。它還具有構成最大的Web站點的

19、數(shù)據(jù)存儲組件所還需的可伸縮性、可用性和安全功能。SQL Server 2005程序設計模型與Windows DNA構架集成,用以開發(fā)Web應用程序,并且SQL Server 2005支持English Query和Microsoft搜索服務等功能,在Web應用程序中包含了用戶友好的查詢和強大的搜索功能。 可伸縮性和可用性同一個數(shù)據(jù)庫引擎可以在不同的平臺上使用,從運行Microsoft Windows 7的便攜式電腦,到運行Microsoft Windows 2005數(shù)據(jù)中心版的大型多處理器服務器。SQL Server 2005企業(yè)版支持聯(lián)合服務器、索引視圖和大型內存支持等功能,使其得以升級到最

20、大Web站點所需要的性能級別。SQL Server 2005 與Windows NT和Windows 2005故障轉移群集共同支持不間斷地將故障即時轉移到備份服務器。SQL Server 2005還引入了日志傳送功能,使您得以在可用性要求較低的環(huán)境中維護備用服務器。 企業(yè)級數(shù)據(jù)庫功能SQL Server 2005關系數(shù)據(jù)庫引擎支持當今苛刻的數(shù)據(jù)處理所需的功能。數(shù)據(jù)庫引擎充分保護數(shù)據(jù)完整性,同時將管理上使并發(fā)修改數(shù)據(jù)庫用戶的開銷減到最小。SQL Server 2005分布式查詢使您可以引用來自不同的分布式事務支持充分保護任何分布式數(shù)據(jù)更新的完整性。復制同樣使您能維護多個數(shù)據(jù)復本,同時確保單獨的數(shù)

21、據(jù)復本保持同步??蓪⒁唤M數(shù)據(jù)復制到多個移動的脫機用戶,使這些用戶自主地工作,然后將他們所做的修改合并回發(fā)到服務器。 易于安裝、部署和使用SQL Server 2005中包括一系列管理和開發(fā)工具,這些工具可改進在多個站點上安裝、部署、管理和使用SQL Server 2005的過程。SQL Server 2005還支持基于標準的、與Windows DNA集成的程序設計模型,使SQL Server 2005數(shù)據(jù)庫和數(shù)據(jù)倉庫的使用成為生成強大的可伸縮系統(tǒng)的無縫部分。這些功能使您得以快速交付SQL Server應用程序,使客戶只需最少的安裝和管理開銷即可實現(xiàn)這些應用程序。 數(shù)據(jù)倉庫SQL Server

22、2005中包括析取和分析匯總數(shù)據(jù)以進行聯(lián)機分析處理(OLAP)的工具。SQL Server中還包括一些工具,可用來直觀地設計數(shù)據(jù)庫并通過English Query來分析數(shù)據(jù)。2.3.3 .NET Framework .NET Framework 是一個集成在 Windows 中的組件,它支持生成和運行下一代應用程序與 XML Web Services.NET Framework 旨在實現(xiàn)下列目標:提供一個一致的面向對象的編程環(huán)境,而無論對象代碼是在本地存儲和執(zhí)行,還是在本地執(zhí)行但在 Internet 上分布,或者是在遠程執(zhí)行的。提供一個將軟件部署和版本控制沖突最小化的代碼執(zhí)行環(huán)境。提供一個可提

23、高代碼(包括由未知的或不完全受信任的第三方創(chuàng)建的代碼)執(zhí)行安全性的代碼執(zhí)行環(huán)境。提供一個可消除腳本環(huán)境或解釋環(huán)境的性能問題的代碼執(zhí)行環(huán)境。使開發(fā)人員的經驗在面對類型大不相同的應用程序(如基于 Windows 的應用程序和基于 Web 的應用程序)時保持一致。按照工業(yè)標準生成所有通信,以確?;?.NET Framework 的代碼可與任何其他代碼集成。.NET Framework 的目的就是要讓建立Web Services 以及因特網(wǎng)應用程序的工作變的簡單,它就相當于微軟Web Services 引擎許多程序設計師和使用者,非??释幸粋€完善而且透明清楚的基礎架構,來建立Web Service

24、s(因特網(wǎng)服務).NET Framework 就是為了這個需求,而提供的基礎架構。.NET Framework 提供了應用程序模型及關鍵技術,讓開發(fā)人員容易以原有的技術來產生、布署,并可以繼續(xù)發(fā)展具有高安全、高穩(wěn)定,并具高延展的Web Services對于.NET Framework 而言,所有的組件都可以成為Web Services,Web Services 只不過是另一種型態(tài)的組件罷了微軟將COM(Component Object Model,組件對象模型)的優(yōu)點整合進來,它可以不用像COM 那么嚴謹?shù)膩硭ㄦi兩個對象,.NET Framework 以松散的方式來栓鎖Web Services

25、 這種型態(tài)的組件這樣的結果讓開發(fā)人員非常容易的發(fā)展出強而有力的Web 服務組件,提高了整體的安全及可靠性,并且大大的增加系統(tǒng)的延展性。第3章 系統(tǒng)設計3.1 系統(tǒng)總體功能設計視頻點播系統(tǒng)主要實現(xiàn)的功能是視頻的播放,視頻上傳。該系統(tǒng)的功能模塊包括:用戶權限管理模塊、用戶信息管理模塊、用戶信息查詢模塊、視頻文件管理模塊、視頻文件查詢模塊等。如圖3-1所示。3.2 系統(tǒng)角色設計本系統(tǒng)按照功能可將角色分為超級管理員、普通管理員、普通會員。每種角色具有不同的權限。超級管理員:負責網(wǎng)站用戶信息和視頻信息的管理,以及欄目信息的維護。普通管理員:可以實現(xiàn)視頻信息的維護。普通用戶:采用先注冊后登錄的方式進入管理

26、網(wǎng)站,在網(wǎng)站中可以在線瀏覽視頻信息,搜索視頻信息,以及在線觀看視頻信息及評論。 以下為三個角色的用例圖:3.3 系統(tǒng)數(shù)據(jù)庫設計3.3.1 邏輯結構設計(1)視頻信息實體屬性圖在線視頻點播系統(tǒng)中要有視頻內容,視頻是在線視頻點播系統(tǒng)中密不可分的部分,因此要創(chuàng)建視頻信息實體,用來保存視頻的詳細信息。視頻信息實體E-R圖,如圖3-5所示。(2)用戶信息實體屬性圖用戶是在線視頻點播系統(tǒng)的使用者,是在線視頻點播系統(tǒng)的重要組成部分,用戶信息E-R圖,如圖3-6所示。(3)系統(tǒng)整體實體屬性圖在線視頻點播系統(tǒng)的流程是用戶登錄網(wǎng)站若用戶名不存在,則需先注冊用戶信息,注冊完用戶信息后,用戶輸入自己的賬號及密碼登錄系

27、統(tǒng),在用戶登錄成功后系統(tǒng)根據(jù)登錄的帳號信息與數(shù)據(jù)庫表中的數(shù)據(jù)進行對比判斷是普通用戶是否存在,如果存在戶,用戶可以在線瀏覽網(wǎng)站提供的信息以及視頻內容,可以根據(jù)自己的喜好搜索視頻,用戶在點擊視頻后,系統(tǒng)會顯示視頻的詳細信息,用戶可以點擊收看該視頻,系統(tǒng)會根據(jù)用戶點擊播放情況獲得視頻編號以及點擊時間,添加到數(shù)據(jù)庫的點擊排行榜中,信息內容會反饋到網(wǎng)站的點擊排行榜中。此外,用戶可以在線修改自己的賬號信息以及密碼。如果管理員登錄,管理員需要對網(wǎng)站的節(jié)目信息進行管理,及時修改和刪除已經過時的視頻內容,以及發(fā)布新的視頻供用戶觀看,系統(tǒng)會將最新發(fā)布的視頻信息添加到數(shù)據(jù)庫視頻信息表中,并反饋到網(wǎng)站點擊排行榜中“最

28、新視頻”欄顯示。在線視頻點播系統(tǒng)的整體系統(tǒng)E-R圖,如圖3-7所示。圖3-7 整體系統(tǒng)3.3.2 數(shù)據(jù)表設計通過以上的需求分析及邏輯處理,本系統(tǒng)數(shù)據(jù)庫中的數(shù)據(jù)表包括:分用戶表(Users)、視頻信息表(Movies)、視頻類型表(MovieType)、評論表(Messages)、管理員表(Managers)。(1) 用戶表(Users):本表主要記錄用戶的基本信息。如表3-1所示。表3-1 Users表列名字段名解釋字段類型主鍵字段說明Uid用戶IDInt表的主鍵,不為空,自增長,唯一Uname用戶名Nvarchar(16)不為空,唯一Birth出生日期SmallDateTime不為空Sex性

29、別Nvarchar(2)不為空Upwd密碼Nvarchar(64)不為空Uemail郵箱Nvarchar(30)不為空Udate注冊時間SmallDateTime不為空Upwdmd5密碼MD5加密Nvarchar(64)不為空Utele聯(lián)系電話Nvarchar(11)(2) 視頻類型表(MovieType):主要記錄視頻的類型。如表3-3所示。表3-3 MovieType表列名字段名解釋字段類型主鍵字段說明Mtype電影類型Int表的主鍵,不為空,惟一TypeName類型名Nvarchar(10)不為空 (3) 管理員表(Managers):主要記錄管理員的用戶名和密碼。如表3-4所示。表3-

30、4 Managers表列名字段名解釋字段類型主鍵字段說明Uname管理員名Nvarchar(16)表的主鍵,不為空,惟一Upwd密碼Nvarchar(64)不為空Upwdmd5密碼md5加密Nvarchar(64)不為空 (4) 視頻信息表(Movies):主要記錄視頻的相關信息。如表3-2所示。表3-2 Movies表列名字段名解釋字段類型主鍵字段說明Mid電影序號Int表的主鍵,不為空,自增長,唯一Mname電影名Nvarchar(30)不為空nation地區(qū)Nvarchar(15)不為空direct導演Nvarchar(8)不為空Mstar主演Nvarchar(50)不為空Mtime上映

31、時間SmallDateTime不為空Maddtime上傳時間SmallDateTime不為空Mlanguage語種Nvarchar(10)不為空Mtype類型Int不為空,為MovieType中Mtype外鍵Mmsg簡介Nvarchar(200)不為空Mpatch電影路徑Nvarchar(50)不為空Mimagepatch封面路徑Nvarchar(50)不為空Mcount點擊數(shù)Int默認為0Uname上傳者Nvarchar(16)不為空(5) 評論表(Messages):主要記錄用戶對視頻的相關評論。如表3-5所示。表3-5 Messages表列表字段名解釋字段類型主鍵字段說明Mid電影序號I

32、nt表的主鍵,不為空,惟一Uname用戶名Nvarchar(16)表的主鍵,不為空,惟一Msgcontent評論內容Nvarchar(120)不為空Addtime評論時間SmallDateTime不為空第4章 系統(tǒng)詳細設計本系統(tǒng)的詳細設計與實現(xiàn)主要分為普通用戶功能和管理員功能的設計和實現(xiàn)。本系統(tǒng)中要經常對數(shù)據(jù)庫進行添加、刪除、修改等操作。為了避免重復寫相同的代碼,將對數(shù)據(jù)庫的基本操作封裝到一個類中。這樣每次需要對數(shù)據(jù)庫進行操作的時候,只要直接調用這個封裝好的類就可以實現(xiàn)對數(shù)據(jù)庫的增加、刪除、修改等操作。本系統(tǒng)的文件夾結構如下:(1)App_Code:App_Code文件夾是ASP.NET應用程

33、序包含的7個默認文件夾之一,本系統(tǒng)中添加App_Code文件夾來包含源代碼文件sql.cs和checkcode.cs。(2)App_Data:此文件夾中放置系統(tǒng)數(shù)據(jù)庫文件。(3)images:此文件夾中放置系統(tǒng)界面搭建所用的圖片信息(4)f_ images:此文件夾中放置視頻的封面,最新發(fā)布的節(jié)目的圖片信息將保存在此文件下。(5)Movies:此文件夾放置節(jié)目文件最新發(fā)布的節(jié)目文件將保存在此文件夾下。(6)NeatUpload:此文件中放置了本系統(tǒng)所使用的上傳控件。(7)Manager:此文件夾中放置了實現(xiàn)后臺系統(tǒng)的所有頁面文件。4.1 普通用戶功能設計4.1.1 系統(tǒng)注冊頁面只有注冊后的用戶

34、才可以進入本系統(tǒng)。當注冊成功后會跳轉到一個提示頁面,過3秒后會進入本系統(tǒng)的主頁面。此時會將用戶名保存到Session“Uname”中,以便后面的調用。具體流程如圖4-1所示。主要代碼如下: if (String.Compare(Request.CookiesCheckCode.Value,checkit.Text.ToString(), true) != 0) Lcheck.Text = 驗證碼錯誤,請輸入正確的驗證碼。; checkit.Text = ; return; else Lcheck.Text = ; string _Username = Username.Text.ToStrin

35、g(); string _Pwd = Pwd.Text.ToString(); string _sex = DropDownList1.SelectedValue.ToString(); string _Email = Email.Text.ToString(); DateTime _Birth = Convert.ToDateTime(txt_StartTime.Text); string _Utele = Phone.Text; sql submit = new sql(this.Response); try submit.Inset_Data(_Username, _Birth, _se

36、x, _Pwd, _Email, _Utele); catch (Exception ex1) Response.Write(alert(注冊失?。?; Response.Redirect(zhuce.aspx); SessionUname = _Username; Response.Redirect(NextHop.aspx); public int Check_User() sql checkname = new sql(this.Response); int Uname_length = Username.Text.ToString().Length; if (Uname_length

37、12) Label8.Text = 長度不符; Username.Text = ; Username.Focus(); return 0; else int i = 1; int check = checkname.Check_Uname1(Username.Text.ToString(), i); if (check = 1) Label8.Text = 用戶已存在; Username.Text = ; return 0; else Label8.Text = 用戶可用; return 1; 4.1.2 會員登錄剛進入本系統(tǒng)時,會顯示最新電影的封面,只有注冊后的用戶才可以進入本系統(tǒng)。在注冊時

38、自動進行用戶名檢測,對用戶的輸入格式進行自動檢測。具體流程如圖4-3所示。主要代碼如下:int login_check, i = 1; sql login = new sql(this.Response); int login_name = login.Check_Uname1(TextBox1.Text.ToString(), i); if (login_name = 1) login_check = login.Check_password(TextBox1.Text.ToString(), TextBox2.Text.ToString(), i); if (login_check = 1

39、) if (String.Compare(Request.CookiesCheckCode.Value, TextBox3.Text.ToString(), true) != 0) Label5.Text = 驗證碼輸入有誤!; TextBox3.Text = ; else SessionUname = TextBox1.Text.ToString(); Response.Redirect(master.aspx); else Label5.Text = 用戶名或密碼錯誤; else Label5.Text = 用戶不存在; 4.1.3 電影搜索 可以根據(jù)電影名、主演、導演對是電影信息進行查找

40、。主要代碼如下:SessionName = TextBox1.Text.Trim().ToString(); SessionSelectName= DropDownList1.SelectedValue.ToString(); Response.Redirect(/master.aspx?type=101);在主頁顯示代碼如下:str = select * from Movies ,MovieType where Movies.Mtype=MovieType.Mtype and +SessionSelectName.ToString()+ like % + SessionName.ToStri

41、ng()+%;DataSet ds = new DataSet();SqlDataAdapter sda = new SqlDataAdapter(str, conn);sda.Fill(ds, Movies); this.DataList1.DataSource = ds.TablesMovies.DefaultView;DataList1.DataBind();pds.DataSource = ds.TablesMovies.DefaultView;4.1.4 信息查看及修改根據(jù)Session“Uname”查找出個人信息。主要代碼如下:protected void bt_Click(obj

42、ect sender, EventArgs e) string Sex = DropDownList1.SelectedValue.ToString(); string Uemail = Uemail_txt.Text; DateTime Birth = Convert.ToDateTime(Bitrh_txt.Text); string Utele = Utele_txt.Text; conn.ConnectionString = connection; string str = Update Users set Sex=Sex, Birth=Birth,Uemail=Uemail,Utel

43、e=Utele where Uname = + SessionUname + ; SqlCommand ud = new SqlCommand(str, conn); conn.Open(); ud.Parameters.Add(Sex, SqlDbType.NVarChar, 2, Sex); ud.Parameters.Add(Uemail, SqlDbType.NVarChar, 30, Uemail); ud.Parameters.Add(Birth, SqlDbType.SmallDateTime, 4, Birth); ud.Parameters.Add(Utele, SqlDbT

44、ype.NVarChar, 13, Utele); ud.ParametersSex.Value = Sex; ud.ParametersUemail.Value = Uemail; ; ud.ParametersBirth.Value = Birth; ud.ParametersUtele.Value = Utele; ud.ExecuteNonQuery(); conn.Close(); this.data(); conn.Dispose(); Response.Write(alert(修改成功!); public void data() conn.ConnectionString = c

45、onnection; string str = select * from Users where Uname = + SessionUname + ; SqlDataAdapter sd = new SqlDataAdapter(str, conn); sd.Fill(dt); Uname_txt.Text = dt.Rows0Uname.ToString(); Uemail_txt.Text = dt.Rows0Uemail.ToString(); Utele_txt.Text = dt.Rows0Utele.ToString(); DateTime date =Convert.ToDat

46、eTime(dt.Rows0Birth); Bitrh_txt.Text = date.ToShortDateString(); DropDownList1.SelectedValue = dt.Rows0Sex.ToString(); conn.Dispose(); protected void bt1_Click(object sender, EventArgs e) DropDownList1.Enabled = true; Bitrh_txt.Enabled = true; Uemail_txt.Enabled = true; Utele_txt.Enabled = true; 4.1

47、.5 密碼修改 用戶可以通過輸入舊密碼來對密碼進行修改。圖4-7 密碼修改頁面主要代碼如下: protected void Button1_Click(object sender, EventArgs e) if (TextBox1.Text = | TextBox2.Text = | TextBox3.Text = ) Response.Redirect(ChangePwd.aspx); else int login_check, i = 1; sql login = new sql(this.Response); string Upwd = TextBox2.Text.ToString()

48、; login_check = login.Check_password(SessionUname.ToString(), TextBox1.Text.ToString(), i); if (login_check = 1) SqlConnection conn = login.Connection_string(); string str = Update Users set Upwd=Upwd where Uname= + SessionUname.ToString() + ; SqlCommand ud = new SqlCommand(str, conn); conn.Open(); ud.Parameters.Add(Upw

溫馨提示

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

評論

0/150

提交評論