JSP電影網(wǎng)的設計與實現(xiàn)_第1頁
JSP電影網(wǎng)的設計與實現(xiàn)_第2頁
JSP電影網(wǎng)的設計與實現(xiàn)_第3頁
JSP電影網(wǎng)的設計與實現(xiàn)_第4頁
JSP電影網(wǎng)的設計與實現(xiàn)_第5頁
已閱讀5頁,還剩38頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、 密級: JINGGANGSHAN UNIVERSITY本科畢業(yè)論文(設計) 題目 JSP電影網(wǎng)的設計與實現(xiàn) 姓 名 譚斌 學 號 學 院 電子與信息工程學院 專 業(yè) 軟件工程 班 級 09軟件本(1)班 指導教師 曾憲文 起訖時間 2012.1.1-2013.5.10 教 務 處 印 制 【摘 要】本課題基于JSP以及SQL Sever2005數(shù)據(jù)庫技術,實現(xiàn)在線電影網(wǎng)的設計。該系統(tǒng)可以實現(xiàn)前臺的影片在線播放、影片下載、影片評論、找回密碼等功能,也可實現(xiàn)后臺的會員管理、影片管理、投票管理、新聞管理、公告管理等功能。該系統(tǒng)采用B/S結構模型,基于java Web開發(fā)該系統(tǒng),給用戶提供了足不出戶

2、便可在線看影片的方便。論文首先論述了系統(tǒng)的開發(fā)背景和設計目標,并對系統(tǒng)開發(fā)所采用的技術進行相應的簡單介紹。在系統(tǒng)分析中,對系統(tǒng)的模型進行簡單分析,明確系統(tǒng)的操作流程,并對系統(tǒng)進行可行性分析,確定在目前的條件下,jsp電影網(wǎng)運行是可行的。在需求分析結果的基礎上,對系統(tǒng)的功能模塊進行劃分。接著對系統(tǒng)中的數(shù)據(jù)庫進行模型設計,包括數(shù)據(jù)流圖、實體聯(lián)系圖及數(shù)據(jù)表結構。在系統(tǒng)的設計與實現(xiàn)中,確定系統(tǒng)的開發(fā)思想以及開發(fā)環(huán)境,并對系統(tǒng)中的JavaBean和Servlet代碼進行設計。最后給出了系統(tǒng)中模塊的詳細設計與實現(xiàn),并對系統(tǒng)模塊涉及到的關鍵源代碼進行了詳細的分析。【關鍵詞】SQL Sever2005數(shù)據(jù)庫;

3、 在線電影網(wǎng); javaBean 【Abstract】【Abstract】: This subject is based on JSP and SQL Sever2005 to achieve the design of movie online website. This system attain to the foreground system such as movieonline playing, films downloading, films comments, retrieving the password etc.Moreover, it can realize some f

4、unctions of background system such as membermanagement, film management, voting management, news management, and announcement management and so on. It adopts the B/S structure model and based on a Java Web which offers convenience for the user.The paper first discusses the system development backgro

5、und and design goal, and system development techniques used in A simple introduction of the corresponding. In the system analysis, the system model analysis simple, clear the operation process of the system, and the system feasibility analysis, identified in the present conditions, the JSP film is f

6、easible. Based on the demand analysis, the function of the system module division. Then the database on the system model design, including data flow diagrams, entity relationship diagram and data table structure. In the system design and implementation, to determine the systems development idea and

7、development environment, and the design to the system of JavaBean and Servlet code. Finally, the detailed design and implementation of system modules, and the system module involves the key source code are analyzed in detail. 【Keywords】:SQL Sever2005;Database;Movie online;javaBean目 錄第1章 緒 論71.1 系統(tǒng)背景

8、71.2 系統(tǒng)目的71.3 可行性研究81.4 需求分析91.4.1 系統(tǒng)需求91.4.2 性能需求91.4.3應用需求分析91.4.4運行需求分析101.4.5 其他需求分析10第2章 相關技術介紹112.1 JSP技術簡介112.2 JSP工作原理112.3 JSP體系結構112.4 JSP的特點122.5 SQL Server 2005 數(shù)據(jù)庫122.6系統(tǒng)數(shù)據(jù)庫連接132.7 B/S模式與C/S模式的比較分析17第3章 系統(tǒng)分析193.1系統(tǒng)介紹193.2系統(tǒng)需求分析193.2.1系統(tǒng)功能模塊圖193.2.2系統(tǒng)用例圖203.2.3影片管理活動圖213.2.4用戶狀態(tài)圖213.2.5電

9、影管理類圖223.2.4主界面導航圖223.3 功能模塊介紹233.3.1用戶系統(tǒng)管理模塊233.3.2用戶其他管理模塊233.3.3用戶影片管理模塊233.3.4管理員系統(tǒng)管理模塊233.3.5管理員其他管理模塊233.3.6管理員影片管理模塊233.3.7管理員用戶管理模塊24第4章 數(shù)據(jù)庫創(chuàng)建和結構設計254.1數(shù)據(jù)庫設計254.2主要表結構26第5章 系統(tǒng)功能的具體實現(xiàn)295.1系統(tǒng)運行環(huán)境295.2主要界面295.2.1主界面295.2.2管理員登錄315.2.3后臺主頁面335.2.4后臺用戶管理界面345.2.5后臺影片管理影片編輯界面345.2.6電影界面36結論39致謝40參

10、考文獻41 第1章 緒 論1.1 系統(tǒng)背景隨著現(xiàn)代技術的快速發(fā)展,互聯(lián)網(wǎng)的普及也隨之成正比。 2012年7月15日,中國互聯(lián)網(wǎng)絡信息中心(CNNIC)Error! Reference source not found.在北京發(fā)布了第26次中國互聯(lián)網(wǎng)絡發(fā)展狀況統(tǒng)計報告。報告報道:“截至2012年6月底,我國網(wǎng)民規(guī)模達7.2億人,互聯(lián)網(wǎng)普及率持續(xù)上升增至50.8%”。隨著網(wǎng)絡的普及,越來越多的應用出現(xiàn)在網(wǎng)絡上,這使得越來越多的人對圖片、文章、多媒體視頻等應用的不滿足,而在線電影網(wǎng)得到了異常迅猛的發(fā)展。近年來,Internet技術得到迅速的發(fā)展,已經(jīng)成為計算機產(chǎn)業(yè)的一個技術熱點。促成Internet

11、高速發(fā)展的因素之一就是Web技術。Web技術由最初的靜態(tài)HTML發(fā)展到動態(tài)網(wǎng)頁技術DHTML,CGI(Command Gateway Interface),腳本語言與ASP(Active Server Pages)后來居上,并且大有取代CGI的趨勢。Web已經(jīng)不再局限于僅僅提供大量的信息服務,Web技術的發(fā)展使得那些具有交互動態(tài)頁面、有條理的數(shù)據(jù)庫查詢、豐富信息內(nèi)容的頁面成為最吸引人的網(wǎng)頁。瀏覽Web有著執(zhí)行Windows程序一樣的感覺和操作性。隨著Internet技術的發(fā)展,它已經(jīng)成為一種操作平臺,為用戶提供強大的服務,例如網(wǎng)上購物,網(wǎng)上電子商務,社會信息數(shù)據(jù)庫服務等。 作為計算機發(fā)展最迅速

12、的領域之一的數(shù)據(jù)庫技術,已經(jīng)形成了一整套獨有的理論,并廣泛地應用于人們的生產(chǎn)和生活中。數(shù)據(jù)庫技術與網(wǎng)站的結合是當今Web技術的一個熱點。有了數(shù)據(jù)庫的支持,可以擴展網(wǎng)頁的功能,可以方便地設計出交互式頁面,可以構造功能強大的后臺管理系統(tǒng),可以為網(wǎng)站的更新、維護提供極大的方便。因此,作為網(wǎng)絡開發(fā)者或管理者,數(shù)據(jù)庫知識是必不可少的。視頻流媒體服務一直被認為是互聯(lián)網(wǎng)服務中的一個熱點領域,但是由于技術、內(nèi)容以及帶寬等方面的限制,一直沒有實現(xiàn)預料中的發(fā)展。目前,視頻壓縮技術已經(jīng)取得了重大的進步,視頻流媒體的傳輸速度、品質(zhì)以及成本控制都得到了很大的改善,為視頻媒體傳輸創(chuàng)造了有利條件,同時寬帶網(wǎng)絡的普及也使得多

13、數(shù)家庭用戶具備了享受網(wǎng)絡視頻服務的條件。In-Stat/MDR預計,到2013年,這個數(shù)字將超過5億。InStat/MDR預計,視頻訂閱服務最繁榮的市場將出現(xiàn)在亞洲,預計2013年亞洲市場視頻媒體訂閱服務的營業(yè)額將達到25億美元,但是美國的市場潛力也不可忽視,有調(diào)查報告表明,美國消費者對收費互聯(lián)網(wǎng)內(nèi)容服務的接受程度正在跳躍式地提高。這個前景誘人的市場將成為網(wǎng)絡巨人們逐鹿的舞臺,在線視頻服務正在面臨這個各種各樣的變化,各家大型的媒體公司和服務提供商都有機會分食這個大蛋糕。1.2 系統(tǒng)目的現(xiàn)在我國的信息管理水平還比較落后,這樣的機制已經(jīng)不能適應時代的發(fā)展,因為它浪費了許多人力和物力,在信息時代傳統(tǒng)

14、的管理方法必然被計算機為基礎的信息管理所取代。軟件作為一項有力的工具,只能當此種工具,與我們的實踐相結合起來的時候,才具有重大的社會價值及使用價值。因此根據(jù)目前實際的情況開發(fā)這樣一套管理系統(tǒng)是十分必要的。隨著科學技術的不斷提高,計算機科學技術日漸成熟,其強大的功能已為人們深刻認識,它已進入人類社會的各個領域并發(fā)揮著越來越重要的作用。作為計算機應用的一部分,使用計算機進行管理,具有著手工管理所無法比擬的優(yōu)點。例如:可靠性高、存儲量大、保密性好、壽命長、成本低等。這些優(yōu)點能夠極大地提高工作的效率,也是信息正規(guī)化管理與世界接軌的重要條件。本系統(tǒng)用JSP語言來編寫本系統(tǒng),數(shù)據(jù)庫用SQLSERVER 2

15、005來連接系統(tǒng)。本論文主要涉及軟件,數(shù)據(jù)庫與網(wǎng)絡技術等。涵蓋知識面廣,可有效地提高學生綜合運用所學知識分析解決問題的能力,增強學生對事物的理解與掌握能力,培養(yǎng)學生掌握科學的研究方法,正確的設計思想,獨立思考,勇于進取,探索創(chuàng)新,為今后進一步學習與工作奠定了良好的基礎。滿足用戶的需要,開發(fā)基于Java Web的在線電影網(wǎng),為用戶提供方便。1.3 可行性研究該階段通過對系統(tǒng)目標的初步調(diào)研和分析,提出可行性方案并進行論證。我們在這里主要從技術可行性、經(jīng)濟可行性和操作可行性等方面進行分析。1.經(jīng)濟可行性開發(fā)該系統(tǒng)所需的相關資料可以通過已存在的相關系統(tǒng)進行調(diào)查采集,所需的其他應用軟件、硬件系統(tǒng)也易于獲

16、得.因此,開發(fā)成本較低。而引進使用本系統(tǒng)后,與傳統(tǒng)方式相比,具有高效率、低成本、高質(zhì)量的特點,可以節(jié)省不少人力、物力及財力。所以,從經(jīng)濟的角度來看,該系統(tǒng)可行。2.技術可行性技術可行性要考慮現(xiàn)有的技術條件是否能夠順利完成開發(fā)工作,軟硬件配置是否滿足開發(fā)的需求等。本系統(tǒng)用的是JSP開發(fā)語言,調(diào)試相對簡單,當前的計算機硬件配置也完全能滿足開發(fā)的需求,因此在技術上是絕對可行的。軟件方面:由于目前單機模式相對發(fā)展成熟,故軟件的開發(fā)平臺成熟可行,它們速度快、容量大、可靠性能高、價格低,完全能滿足系統(tǒng)的需求。本系統(tǒng)的開發(fā),是典型的Mis開發(fā)。采用JSP編程語言,已無技術上的問題。3.運行可行性運行可行性是

17、對組織結構的影響,現(xiàn)有人員和機構和環(huán)境對系統(tǒng)的適應性及人員培訓補充計劃的可行性。當前信息化技術已經(jīng)相當普及,各類操作人員水平都有相當?shù)母叨龋栽谶\行上是可行性的。4.法律可行性 所有技術資料都為合法。 開發(fā)過程中不存在知識產(chǎn)權問題。 未抄襲任何系統(tǒng),不存在侵犯版權問題。 開發(fā)過程中未涉及任何法律責任。綜上所述,本系統(tǒng)的開發(fā)從技術上、從經(jīng)濟上、從法律上等都是完全可靠的。1.4 需求分析需求分析是軟件設計的一個重要的環(huán)節(jié)。本階段對系統(tǒng)管理系統(tǒng)的應用情況作全面調(diào)查,以確定系統(tǒng)目標。確定用戶的需求。用戶對系統(tǒng)的需求我們從以下幾方面進行分析。1.4.1 系統(tǒng)需求用JSP開發(fā)系統(tǒng)管理系統(tǒng)基于B/S模式,

18、系統(tǒng)軟件和數(shù)據(jù)集中存放于服務器中,軟件的安裝與升級在服務器上進行。所有的工作基于瀏覽器,安裝、使用、維護、升級十分簡單。1.4.2 性能需求為了保證系統(tǒng)能夠長期、安全、穩(wěn)定、可靠、高效的運行。系統(tǒng)處理的準確性和及時性是系統(tǒng)的必要性能。由于本系統(tǒng)的添加功能對于整個系統(tǒng)的功能和性能完成舉足輕重。作為系統(tǒng)的很多數(shù)據(jù)來源,其準確性和及時性很大程度上決定了系統(tǒng)的成敗。在系統(tǒng)開發(fā)過程中,必須采用一定的方法保證系統(tǒng)的準確性和及時性。1.4.3應用需求分析服務器 硬件處理器:Intel 酷睿2或更高內(nèi) 存: 512M 或更大硬 盤: 50G 或更大 軟件Microsoft Windows XP客戶機 硬件無特

19、殊要求 軟件Microsoft Windows XP 系統(tǒng)的性能要求通常指系統(tǒng)需要的存儲容量以及后援存儲,重新啟動和安全性,運行效率等方面的考慮。 硬件系統(tǒng)環(huán)境:C600、1G MB(RAM)、500MB(HD)。系統(tǒng)運行時對數(shù)據(jù)的保密性要求不高對一般的數(shù)據(jù)不要求進行加密。此外,對其它軟件幾乎沒有依賴性,程序健壯性較好1.4.4運行需求分析硬件條件:酷睿2 CPU、1G RAM、50G硬盤以上的PC機。軟件條件:Windows XP 1.4.5 其他需求分析本系統(tǒng)有較好的可維護性、可靠性、可理解性、效率。易于用戶理解和操作??删S護性包括了可讀性、可修改性、可測試性、等含義。可靠性通常包括正確性

20、和健壯性。開發(fā)過程中,在各種矛盾的目標之間作權衡,并在一定的限制的條件下(經(jīng)費、時間、可用的軟、硬件資源等),使上述各方面最大限度的得到滿足。 第2章 相關技術介紹2.1 JSP技術簡介JSP(Java Server Page服務器網(wǎng)頁)是從1998年開始出現(xiàn)的新技術。由Sun公司倡導、許多公司參與一起建立的一種動態(tài)網(wǎng)頁技術標準,是基于JavaServlet以及整個Java體系的web開發(fā)技術。在傳統(tǒng)的網(wǎng)頁HTML文件(*.htm,*.html)中加入腳本片段和JSP標記(Tag),構成JSP網(wǎng)頁(*.jsp)。JSP技術為創(chuàng)建顯示動態(tài)生成內(nèi)容的web頁面提供了簡便的方法。JSP作為Java家

21、族的一員,承襲了Java的特點,即跨平臺的特性,也即一次編譯,到處運行。在國外,己經(jīng)大量使用JSP作為網(wǎng)絡應用程序的開發(fā)工具,而在國內(nèi),盡管JSP還不是主流開發(fā)技術,但是由于JSP的強大優(yōu)勢,許多網(wǎng)站都已經(jīng)準備轉向JSP,利用JSP來開發(fā)動態(tài)網(wǎng)站。 2.2 JSP工作原理JSP是面向服務器的,因此支持任何瀏覽器。當Web服務器和JSP引擎遇到訪問JSP網(wǎng)頁的請求時,JSP引擎將請求對象發(fā)送給服務器端的相關組件,比如JavaBean組件、Servlet或EJB等,然后由服務器端組件處理這些請示,可能需要從數(shù)據(jù)庫或數(shù)據(jù)存儲中檢索信息,然后服務器端組件再將響應對象返回JSP引擎。JSP引擎將響應對象

22、傳遞給JSP頁面,根據(jù)JSP頁面的HTML格式完成數(shù)據(jù)編排,最后Web服務器和JSP引擎將格式化后的JSP頁面以HTML格式返回客戶瀏覽器。這就是當前網(wǎng)站構建中廣泛采用的瀏覽器Web服務器后臺數(shù)據(jù)庫的三層架構模式。因為JSP所有程序操作都在服務器端執(zhí)行,網(wǎng)絡上傳送給客戶端的僅是得到的結果。2.3 JSP體系結構JSP網(wǎng)站開發(fā)標準給出了兩種使用JSP的技術,可以歸納為模式一、模式二。模式一:JSP+JavaBeans技術在這種模式中,JSP頁面獨自響應請求并將處理結果返回給客戶。Bean處理所有數(shù)據(jù)訪問,JSP實現(xiàn)頁面的表現(xiàn),以實現(xiàn)內(nèi)容生成與顯示相分離。當處理復雜的大型應用時,頁面被嵌入大量的腳

23、本或Java代碼段,當需要處理的商業(yè)邏輯復雜時,這種情況會變得非常糟糕,大量的內(nèi)嵌代碼使得頁面程序變得復雜,對于前端界面設計人員,這是不可思議的事情。所以模式一可用于小型應用,不能夠滿足大型應用的需要。模式二:JSP+Servlet+JavaBeans技術Servlet技術是一種采用Java技術來實現(xiàn)CGI功能的一種技術,Servlet技術非常適于服務器端的處理和編程,并且Servlet會長期駐留在內(nèi)存。從開發(fā)的觀點看,模式二具有更清晰的頁面表現(xiàn),清楚的開發(fā)者角色劃分,在大規(guī)模項目開發(fā)中,模式二更被采用,模式二也更符合當前流行的MVC結構(Model/view/controller),其中Se

24、rvlet對應controller,處于控制者的位置,處理HTTP請求,負責生成JSP中使用的Beans組件或對象,并判斷應將請求傳遞給哪個JSP等,JSP對應view,負責生成最終的動態(tài)網(wǎng)頁并返回給瀏覽器。而JavaBeans對應的是Model,實現(xiàn)各個具體的應用邏輯與功能。2.4 JSP的特點1.簡化的頁面生成技術。JSP頁面用標準的HTML或XML命令來處理頁面的格式化和布局設計,而用類似HTML、XML的標記和Java語言編寫的腳本程序生成頁面內(nèi)容。這使得頁面形式與頁面內(nèi)容互相獨立,非常有利于大型項目的分工合作。2.與Java平臺有機集成。JSP技術是Java 2平臺的重要組成部分,J

25、SP使用Java語言作為它的腳本語言。在JSP頁面中可以使用幾乎所有的Java組件和Java API,這就能充分發(fā)揮出Java語言的強大功能。使用JSP技術可以創(chuàng)建具有高度可伸縮性和可靠性的Web應用程序。3.硬件平臺和服務器無關性。JSP作為Java家族的一員,秉承了Java技術的“一次編寫,隨處可用(Write Once,Rum Anywhere)”的特性,可以運行于大多數(shù)流行的操作系統(tǒng)平臺及Web服務器,這種與服務器硬件和操作系統(tǒng)平臺的無關性是JSP相對于其它動態(tài)網(wǎng)頁技術最大的一個優(yōu)點。4.功能可擴展性。如同Microsoft的JSP技術可以通過ActiveX/COM組件來擴展功能一樣,

26、JSP可以通過JavaBean和EJB(Enterprise JavaBean)以及自定義的標記來擴展功能。JSP可以通過JDBC,與諸如Oracle、SQL Server這樣的大型關系數(shù)據(jù)庫進行連接。JSP提供了一些隱含對象。這些隱含對象在JSP頁面中可以直接引用,而不必首先聲明。利用JSP提供的這些隱含對象,可以使腳本功能更加強大,并且編程更加容易、方便。例如,利用request對象,可以很容易地接收用戶在HTML表單中提交的信息。2.5 SQL Server 2005 數(shù)據(jù)庫SQL Server是由Microsoft開發(fā)和推廣的關系數(shù)據(jù)庫管理系統(tǒng)(DBMS),它最初是由Microsoft

27、、Sybase和Ashton-Tate三家公司共同開發(fā)的,并于1988年推出了第一個OS/2版本。 SQL Server近年來不斷更新版本,1996年,Microsoft 推出了SQL Server 6.5版本;1998年,SQL Server 7.0版本和用戶見面;SQL Server 2005是Microsoft公司于2005年推出的最新版本。 SQL Server 特點:1真正的客戶機/服務器體系結構。 2圖形化用戶界面,使系統(tǒng)管理和數(shù)據(jù)庫管理更加直觀、簡單。 3豐富的編程接口工具,為用戶進行程序設計提供了更大的選擇余地。 4SQL Server與Windows NT完全集成,利用了NT

28、的許多功能,如發(fā)送和接受消息,管理登錄安全性等。SQL Server也可以很好地與Microsoft BackOffice產(chǎn)品集成。 5具有很好的伸縮性,可跨越從運行Windows 95/98的膝上型電腦到運行Windows 2000的大型多處理器等多種平臺使用。 6對Web技術的支持,使用戶能夠很容易地將數(shù)據(jù)庫中的數(shù)據(jù)發(fā)布到Web頁面上。 7SQL Server提供數(shù)據(jù)倉庫功能,這個功能只在Oracle和其他更昂貴的DBMS中才有。2.6系統(tǒng)數(shù)據(jù)庫連接JDBC技術是Java DataBase Connectivity的縮寫,它是SUN公司提供的一種支持基本SQL功能的通用的應用程序接口(Ap

29、plication Programming Interface)。它由一組用Java語言編寫的類和接口組成。通過這些類和接口,程序開發(fā)人員可以在Java語言中方便地建立與數(shù)據(jù)庫的鏈接,通過執(zhí)行相應SQL語句,完成對不同數(shù)據(jù)庫的訪問。因此,開發(fā)人員使用JDBC API可以不必編寫一個應用程序來訪問Sybase數(shù)據(jù)庫,又另外編寫一個應用程序去訪問Oracle數(shù)據(jù)庫,再寫一個應用程序訪問Microsoft的SQL Server。不但如此,使用Java語言編寫的應用程序可以在任何支持Java的平臺上運行,不必在不同的平臺上開發(fā)不同的應用程序。簡單地說,JDBC能完成下列三件事:1. 同一個數(shù)據(jù)庫建立連

30、接;2. 向數(shù)據(jù)庫建立連接;3. 處理數(shù)據(jù)庫返回的結果。JDBC是一種通用低層的應用程序編程接口,它在不同的數(shù)據(jù)庫功能模塊的層次上提供一個統(tǒng)一的用戶界面。說JDBC是一處低級的API,是指它直接調(diào)用SQL命令,它比其他的一些數(shù)據(jù)庫連接API要容易使用些,但它有同樣可以作為更高級的,用戶辦面更友好的API或開發(fā)工具基礎。很多可視化的Java開發(fā)工具,如Visual Age For Java、Visual Caf、J+等都提供了基于JDBC的更面向用戶的類和包,直接將關系數(shù)據(jù)庫的表或視圖映射為Java類,程序員通過可視化工具直接對Java對象進行操作,而真正需要的SQL調(diào)用則根據(jù)程序員發(fā)出的對對象

31、的各種屬性、方法的操作來自動產(chǎn)生。另一種使用JDBC API 的方式為,用戶程序可以提供一個界面(如菜單等)讓用戶選擇對數(shù)據(jù)庫進行的操作,選中一個任務后,提示用戶輸入一些必要的信息,然后根據(jù)用戶的輸入產(chǎn)生相應的SQL命令以及Java程序。通過這處方式,用戶可以完成對數(shù)據(jù)庫的操作,即使他并不了解SQL語法以及JDBC編程。數(shù)據(jù)庫訪問的三層結構如圖2.1所示,瀏覽器端程序要訪問數(shù)據(jù)庫,首先通過中間件,然后由中間件對數(shù)據(jù)庫操作權限進行認證,認證通過才能對數(shù)據(jù)庫進行操作。 圖2.1 使用中間件的數(shù)據(jù)庫訪問三層結構用戶對數(shù)據(jù)庫的存取權限認證是中間件中完成,對數(shù)據(jù)庫的查詢、插入、更新和刪除操作等都封裝在中

32、間件中,該中間件位于服務器端,中間件對數(shù)據(jù)庫進行操作后,再將處理結果通過Web服務器返回到瀏覽器端用戶。這樣,在用戶端輸入的用戶名和密碼,可以通過加密算法進行加密后在網(wǎng)絡上傳輸,在中間件中進行解密認證,然后再進行數(shù)據(jù)庫的存取操作,數(shù)據(jù)庫存取權限的用戶名和密碼出現(xiàn)在位于服務器端的中間件中,這樣就更加安全。本系統(tǒng)采用的正是這樣的三層結構的數(shù)據(jù)庫訪問模式。在三層模型中,命令將被發(fā)送到服務的”中間層”,而”中間層”將SQL語句發(fā)送到數(shù)據(jù)庫。數(shù)據(jù)庫處理SQL語句并將結果返回”中間層”,然后”中間層”將它們返回用戶。其模型如圖2.2所示。 圖2.2 JDBC的三層模型因為”中間層”可以進行對訪問的控制并協(xié)

33、同數(shù)據(jù)庫的更新,并且可以使用一個易用的高層API,這個API可以由“中間層”進行轉換,轉換成低層的調(diào)用。所以在許多種情況下,三層模型可以提供更好的性能,本系統(tǒng)中所采用的就是此種模型。JDBC是JAVA應用程序與數(shù)據(jù)庫的溝通橋梁。它提供了三項服務功能:一、與數(shù)據(jù)庫建立連接。二、將SQL語句傳遞給數(shù)據(jù)庫。三、從數(shù)據(jù)庫取得SQL語句的執(zhí)行結果。當JDBC要與數(shù)據(jù)庫建立連接前,首先,它必須先取得連接此數(shù)據(jù)庫的JDBC驅動程序,Class.forName()即是在執(zhí)行此項工作。建立數(shù)據(jù)庫連接的第一步驟就是將JDBC驅動程序的類載入至JVM(Java VirtualL Machine)中,本系統(tǒng)中利用ja

34、va.lang.Class類內(nèi)的forName()靜態(tài)函數(shù)依據(jù)指定的類名稱,將JDBC驅動程序載入進來。完成載入驅動程序的步驟后,必須使用java.sal.DriverManager類所提供的getConnection()靜態(tài)函數(shù),取得與數(shù)據(jù)庫間的連接對象。此連接對象的類類型為java.sal.Connection,必須通過它才能將SQL指令傳遞給數(shù)據(jù)庫,而執(zhí)行結果也需要通過連接對象來取得。當取得連接對象后,還必須取得Statement對象才能對數(shù)據(jù)庫執(zhí)行SQL指令。Statement主要實現(xiàn)兩個功能:執(zhí)行SQL語句以及取得執(zhí)行結果。在java.sql.Statement的sql對象中執(zhí)行查詢

35、或修改命令的函數(shù)后傳回的是一個ResultSet 對象,這個對象提供了一個存取SQL執(zhí)行結果的管道,以便通過它將表格數(shù)據(jù)從數(shù)據(jù)庫中取出。每個Statement對象只能產(chǎn)生一個ResultSet 對象。數(shù)據(jù)庫連接如圖2.3所示: 圖2.3 數(shù)據(jù)庫的連接處理數(shù)據(jù)庫的連接處理具體實現(xiàn)如下:/建立JDBCODBC橋sun.jdbc.odbc.JdbcOdbcDriver;/橋建立不成功時的錯誤處理catch(ClassNotFoundException event)/建立與數(shù)據(jù)庫的連接,并發(fā)送SQL查詢語句,將結果保存到rs對象中Con=建立JDBCODBC橋Sql=SQL查詢語句執(zhí)行查詢Rs=返回結

36、果/SQL出錯處理 catch(SQLException e1)有了JDBC,向各種關系數(shù)據(jù)發(fā)送SQL語句就是一件很容易的事。換言之,有了JDBC API,就不必為訪問Sybase數(shù)據(jù)庫專門寫一個程序,為訪問Oracle數(shù)據(jù)庫又專門寫一個程序,或為訪問Informix數(shù)據(jù)庫又編寫另一個程序等等,程序員只需用JDBC API寫一個程序就夠了,它可向相應數(shù)據(jù)庫發(fā)送SQL調(diào)用。同時,將Java語言和JDBC結合起來使程序員不必為不同的平臺編寫不同的應用程序,只須寫一遍程序就可以讓它在任何平臺上運行,這也是Java語言“編寫一次,處處運行”的優(yōu)勢。Java數(shù)據(jù)庫連接體系結構是用于Java應用程序連接數(shù)

37、據(jù)庫的標準方法。JDBC對Java程序員而言是API,對實現(xiàn)與數(shù)據(jù)庫連接的服務提供商而言是接口模型。作為API,JDBC為程序開發(fā)提供標準的接口,并為數(shù)據(jù)庫廠商及第三方中間件廠商實現(xiàn)與數(shù)據(jù)庫的連接提供了標準方法。JDBC使用已有的SQL標準并支持與其它數(shù)據(jù)庫連接標準,如ODBC之間的橋接。JDBC實現(xiàn)了所有這些面向標準的目標并且具有簡單、嚴格類型定義且高性能實現(xiàn)的接口。Java 具有堅固、安全、易于使用、易于理解和可從網(wǎng)絡上自動下載等特性,是編寫數(shù)據(jù)庫應用程序的杰出語言。所需要的只是 Java應用程序與各種不同數(shù)據(jù)庫之間進行對話的方法。而 JDBC 正是作為此種用途的機制。 JDBC 擴展了

38、Java 的功能。例如,用 Java 和 JDBC API 可以發(fā)布含有 applet 的網(wǎng)頁,而該 applet 使用的信息可能來自遠程數(shù)據(jù)庫企業(yè)也可以用 JDBC 通過 Intranet 將所有職員連到一個或多個內(nèi)部數(shù)據(jù)庫中(即使這些職員所用的計算機有 Windows、 Macintosh 和UNIX 等各種不同的操作系統(tǒng))。隨著越來越多的程序員開始使用Java 編程語言,對從 Java 中便捷地訪問數(shù)據(jù)庫的要求也在日益增加。 MIS 管理員們都喜歡 Java 和 JDBC 的結合,因為它使信息傳播變得容易和經(jīng)濟。企業(yè)可繼續(xù)使用它們安裝好的數(shù)據(jù)庫,并能便捷地存取信息,即使這些信息是儲存在不

39、同數(shù)據(jù)庫管理系統(tǒng)上。新程序的開發(fā)期很短。安裝和版本控制將大為簡化。程序員可只編寫一遍應用程序或只更新一次,然后將它放到服務器上,隨后任何人就都可得到最新版本的應用程序。對于商務上的銷售信息服務, Java 和JDBC 可為外部客戶提供獲取信息更新的更好方法。簡單地說,JDBC 可做三件事:與數(shù)據(jù)庫建立連接、發(fā)送 SQL 語句并處理結果。下列代碼段給出了以上三步的基本示例: Connection con = DriverManager.getConnection(jdbc:odbc:wombat,login, password); Statement stmt = con.createState

40、ment(); ResultSet rs = stmt.executeQuery(SELECT a, b, c FROM Table1); while (rs.next() int x = rs.getInt(a); String s = rs.getString(b); float f = rs.getFloat(c); 上述代碼對基于JDBC的數(shù)據(jù)庫訪問做了經(jīng)典的總結。2.7 B/S模式與C/S模式的比較分析C/S模式主要由客戶應用程序(Client)、服務器管理程序(Server)和中間件(middleware)三個部件組成。客戶應用程序是系統(tǒng)中用戶與數(shù)據(jù)進行交互的部件。服務器程序負責有

41、效地管理系統(tǒng)資源,如管理一個信息數(shù)據(jù)庫,其主要工作是當多個客戶并發(fā)地請求服務器上的相同資源時,對這些資源進行最優(yōu)化管理。中間件負責聯(lián)結客戶應用程序與服務器管理程序,協(xié)同完成一個作業(yè),以滿足用戶查詢管理數(shù)據(jù)的要求。 B/S模式是一種以Web技術為基礎的新型的MIS系統(tǒng)平臺模式。把傳統(tǒng)C/S模式中的服務器部分分解為一個數(shù)據(jù)服務器與一個或多個應用服務器(Web服務器),從而構成一個三層結構的客戶服務器體系。 第一層客戶機是用戶與整個系統(tǒng)的接口??蛻舻膽贸绦蚓喌揭粋€通用的瀏覽器軟件,如NetscapeNavigator,微軟公司的IE等。瀏覽器將HTML代碼轉化成圖文并茂的網(wǎng)頁。網(wǎng)頁還具備一定的交

42、互功能,允許用戶在網(wǎng)頁提供的申請表上輸入信息提交給后臺,并提出處理請求。這個后臺就是第二層的Web服務器。 第二層Web服務器將啟動相應的進程來響應這一請求,并動態(tài)生成一串HTML代碼,其中嵌入處理的結果,返回給客戶機的瀏覽器。如果客戶機提交的請求包括數(shù)據(jù)的存取,Web服務器還需與數(shù)據(jù)庫服務器協(xié)同完成這一處理工作。 第三層數(shù)據(jù)庫服務器的任務類似于C/S模式,負責協(xié)調(diào)不同的Web服務器發(fā)出的SQ請求,管理數(shù)據(jù)庫。 B/S模式的優(yōu)勢 首先它簡化了客戶端。它無需象C/S模式那樣在不同的客戶機上安裝不同的客戶應用程序,而只需安裝通用的瀏覽器軟件。這樣不但可以節(jié)省客戶機的硬盤空間與內(nèi)存,而且使安裝過程更

43、加簡便、網(wǎng)絡結構更加靈活。假設一個企業(yè)的決策層要開一個討論庫存問題的會議,他們只需從會議室的計算機上直接通過瀏覽器查詢數(shù)據(jù),然后顯示給大家看就可以了。甚至與會者還可以把筆記本電腦聯(lián)上會議室的網(wǎng)絡插口,自己來查詢相關的數(shù)據(jù)。其次,它簡化了系統(tǒng)的開發(fā)和維護。系統(tǒng)的開發(fā)者無須再為不同級別的用戶設計開發(fā)不同的客戶應用程序了,只需把所有的功能都實現(xiàn)在Web服務器上,并就不同的功能為各個組別的用戶設置權限就可以了。各個用戶通過HTTP請求在權限范圍內(nèi)調(diào)用Web服務器上不同處理程序,從而完成對數(shù)據(jù)的查詢或修改。現(xiàn)代企業(yè)面臨著日新月異的競爭環(huán)境,對企業(yè)內(nèi)部運作機制的更新與調(diào)整也變得逐漸頻繁。相對于C/S,B/

44、S的維護具有更大的靈活性。當形勢變化時,它無須再為每一個現(xiàn)有的客戶應用程序升級,而只需對Web服務器上的服務處理程序進行修訂。這樣不但可以提高公司的運作效率,還省去了維護時協(xié)調(diào)工作的不少麻煩。如果一個公司有上千臺客戶機,并且分布在不同的地點,那么便于維護將會顯得更加重要。 再次,它使用戶的操作變得更簡單。對于C/S模式,客戶應用程序有自己特定的規(guī)格,使用者需要接受專門培訓。而采用B/S模式時,客戶端只是一個簡單易用的瀏覽器軟件。無論是決策層還是操作層的人員都無需培訓,就可以直接使用。B/S模式的這種特性,還使MIS系統(tǒng)維護的限制因素更少。 最后,B/S特別適用于網(wǎng)上信息發(fā)布,使得傳統(tǒng)的MIS的

45、功能有所擴展。這是C/S所無法實現(xiàn)的。而這種新增的網(wǎng)上信息發(fā)布功能恰是現(xiàn)代企業(yè)所需的。這使得企業(yè)的大部分書面文件可以被電子文件取代,從而提高了企業(yè)的工作效率,使企業(yè)行政手續(xù)簡化,節(jié)省人力物力。 鑒于B/S相對于C/S的先進性,B/S逐漸成為一種流行的MIS系統(tǒng)平臺。各軟件公司紛紛推出自己的Internet方案,基于Web的財務系統(tǒng)、基于Web的ERP。一些企業(yè)已經(jīng)領先一步開始使用它,并且收到了一定的成效。 B/S模式的新穎與流行,和在某些方面相對于C/S的巨大改進,使B/S成了MIS系統(tǒng)平臺的首選。 第3章 系統(tǒng)分析開發(fā)一個系統(tǒng),首先要進行系統(tǒng)分析。其主要任務是確定系統(tǒng)的規(guī)模和范圍,確定軟件的

46、總體要求以及所需要的硬件環(huán)境和支撐軟件平臺、確定待開發(fā)軟件與外界的接口,確定軟件對操作系統(tǒng)的要求,以及待開發(fā)軟件總體上的約束和限制。系統(tǒng)分析有助于弄清所需開發(fā)的軟件、硬件環(huán)境、支撐軟件和操作人員的要求。3.1系統(tǒng)介紹在線電影網(wǎng),包括前臺用戶使用和后臺管理員管理兩部分。本系統(tǒng)完成了前臺用戶的在線觀看影片、下載影片、影片評論、網(wǎng)站投票、查看新聞、查看公告、系統(tǒng)管理等功能;后臺管理員管理的影片的添加、刪除、編輯,影片評論的查看和刪除,系統(tǒng)管理,公告管理,新聞公告等功能。3.2系統(tǒng)需求分析3.2.1系統(tǒng)功能模塊圖圖3-1 系統(tǒng)模塊功能結構圖系統(tǒng)劃分為七大模塊,包括用戶的系統(tǒng)管理、其他管理和影片管理三部

47、分,和管理員的影片管理、其他管理、系統(tǒng)管理和用戶管理四部分。經(jīng)過詳細的分析后,我們一致認為這是一項具有開發(fā)價值的軟件,接下來的工作就是編制項目開發(fā)計劃。通過對有關人員的統(tǒng)一調(diào)查,并吸取他們的意見、見解,要求系統(tǒng)需要有以下功能:1、要求有良好的人機界面。良好的人機界面是衡量一個系統(tǒng)易用性的重要標準之一。所以本系統(tǒng)的界面要求簡潔明了,使管理人員能迅速地就可以掌握系統(tǒng)的使用。2、要設置使用權限,以提高軟件的安全性。3、對原始數(shù)據(jù)的修改簡單方便.修改也和其它系統(tǒng)一樣包括基本的修改、刪除和保存以及查詢等。要求對數(shù)據(jù)能進行查詢、統(tǒng)計。查詢要求能以最快的速度找到所需數(shù)據(jù),以達到方便管理目的。統(tǒng)計要求能根據(jù)人

48、口信息信息、等進行統(tǒng)計。讓軟件更具靈活性。3.2.2系統(tǒng)用例圖圖3-2 在線電影網(wǎng)系統(tǒng)用例圖 系統(tǒng)主要有15個用例,包括管理員和用戶兩個參與者。3.2.3影片管理活動圖 圖3-3 影片管理活動圖該圖顯示了影片管理從初始到結束的過程。3.2.4用戶狀態(tài)圖圖3-4 用戶狀態(tài)圖用戶狀態(tài)圖,顯示了用戶狀態(tài)的改變。管理員后臺管理用戶時,可將改變用戶的狀態(tài),點擊“凍結”,用戶狀態(tài)顯示為“凍結”,點擊“解凍”,用戶狀態(tài)顯示為“正?!薄?.2.5電影管理類圖 圖3-5 實體類圖顯示了系統(tǒng)的靜態(tài)結構,分析了系統(tǒng)各個實體類之間的關系。3.2.4主界面導航圖 圖3-6 主界面導航圖3.3 功能模塊介紹3.3.1用戶

49、系統(tǒng)管理模塊 此模塊主要用于維護用戶的信息,用戶可以查看個人信息,也可修改個人信息。 當用戶登錄進入用戶主界面,點擊“會員中心”即可操作。 3.3.2用戶其他管理模塊此模塊包括新聞資訊、站內(nèi)公告和網(wǎng)站投票,用戶可查看新聞、公告里面的信息,還可對網(wǎng)站進行投票。3.3.3用戶影片管理模塊此功能主要用于影片信息的維護。實現(xiàn)了如下幾個子功能:(1)影片搜索,可按條件搜索(精確搜索、模糊搜索),也大范圍搜索。(2)影片下載,只有登錄后才可下載。(3)影片排行,列出排行前十的影片。(4)影片播放,影片在線播放,只有登錄后才可播放。(5)影片評論,對影片評論。當用戶進入主界面后,可以看到影片排行,影片搜索,

50、點擊“搜索”,可看到搜索得到的影片列表,點擊影片可看到影片的詳情,可對影片進行評論。當網(wǎng)絡用戶登錄后,顯示用戶主界面,可以點擊“播放”,即可以觀看影片,點擊“下載”,即可下載影片到電腦里。 3.3.4管理員系統(tǒng)管理模塊此模塊主要用于管理員信息維護。包括修改密碼和添加管理員,也可刪除管理員。3.3.5管理員其他管理模塊 此模塊包括新聞管理、投票管理和公告管理。新聞管理有新聞添加和刪除;公告管理有公告添加和刪除;投票管理有查看網(wǎng)站投票情況。3.3.6管理員影片管理模塊此功能主要用于管理員對影片信息的維護。實現(xiàn)了如下幾個子功能:(1)查看評論,可對影片的評論進行維護。(2)影片編輯,重新編輯影片信息

51、。(3)影片刪除。(4)影片添加,添加新的影片資料。管理員可看到影片管理的列表,點擊“查看評論”,彈出以對話框,在對話框里可查看評論,也可刪除評論;點擊“編輯”,可對影片信息進行編輯;點擊“刪除”,可刪除影片;點擊“添加”,可添加新的影片。3.3.7管理員用戶管理模塊此模塊用于管理員對用戶的維護。主要有刪除用戶和更改用戶的狀態(tài)。點擊“凍結”,則用戶的狀態(tài)顯示為凍結,若點擊“解凍”,用戶的狀態(tài)顯示為正常。 第4章 數(shù)據(jù)庫創(chuàng)建和結構設計4.1數(shù)據(jù)庫設計數(shù)據(jù)庫的需求分析是進行系統(tǒng)功能劃分和系統(tǒng)設計最重要的一個環(huán)節(jié),根據(jù)系統(tǒng)數(shù)據(jù)流程圖,可以得到七個數(shù)據(jù)庫表:管理員表(admin)、用戶表(user)、

52、視頻表(shipin)和留言表(liuyan)和投票表(toupiao)和公告表(gonggao)和新聞表(news)。圖4-1 數(shù)據(jù)庫設計4.2主要表結構數(shù)據(jù)字典共七個數(shù)據(jù)庫表:管理員表(admin)、用戶表(user)、視頻表(shipin)和留言表(liuyan)和投票表(toupiao)和公告表(gonggao)和新聞表(news)。具體如下:(1)如表1-1管理員表(admin) 屬性數(shù)據(jù)類型長度備注 userIdchar4id userNamechar50用戶名稱 userPwchar50用戶密碼(2)如表1-2用戶表屬性數(shù)據(jù)類型長度備注user_id int4用戶iduser_name char50用戶名稱user_pw char50用戶密碼user_type int4標志user_realname char50真實名字user_address char50地址user_sex char50性別user_tel char50聯(lián)系電話user_e

溫馨提示

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

評論

0/150

提交評論