版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、<p><b> 目錄</b></p><p><b> 1 引 言1</b></p><p> 1.1 研究背景1</p><p> 1.2 國內(nèi)研究現(xiàn)狀1</p><p> 1.3研究內(nèi)容與本人所做的工作2</p><p> 1.3.1 研究
2、內(nèi)容2</p><p> 1.3.2 本人所做的工作2</p><p> 1.4 論文結(jié)構(gòu)2</p><p> 1.5 開發(fā)環(huán)境的介紹2</p><p> 1.5.1 開發(fā)工具之JSP3</p><p> 1.5.2 開發(fā)工具之MyEclipse 9.06</p><p>
3、 1.5.3 開發(fā)工具之MySQL數(shù)據(jù)庫7</p><p> 1.5.4 開發(fā)工具之Dreamwear 8.011</p><p> 1.5.5 開發(fā)工具之Tomcat 12</p><p> 1.5.6 開發(fā)工具之B/S 14</p><p> 1.5.7 開發(fā)工具之JavaBean 16</p><
4、p><b> 2 系統(tǒng)分析18</b></p><p> 2.1 系統(tǒng)功能概述18</p><p> 2.1.1 系統(tǒng)前臺功能概述18</p><p> 2.1.2 系統(tǒng)后臺功能概述18</p><p> 2.2 可行性研究18</p><p> 2.2.1 經(jīng)濟(jì)可行性
5、19</p><p> 2.2.2 技術(shù)可行性19</p><p> 2.2.3 法律可行性19</p><p> 2.3 需求分析19</p><p> 2.3.1 系統(tǒng)主要需求描述20</p><p> 2.3.2 數(shù)據(jù)流圖21</p><p> 2.3.3 數(shù)據(jù)字典
6、22</p><p><b> 3 概要設(shè)計26</b></p><p> 3.1 系統(tǒng)總體結(jié)構(gòu)圖26</p><p> 3.2 數(shù)據(jù)庫概念設(shè)計26</p><p><b> 4 詳細(xì)設(shè)計29</b></p><p> 4.1 數(shù)據(jù)庫物理設(shè)計29<
7、/p><p> 4.2 系統(tǒng)主要模塊的設(shè)計29</p><p> 4.2.1 會員模塊設(shè)計29</p><p> 4.2.2 管理員模塊設(shè)計29</p><p> 5 系統(tǒng)的實(shí)現(xiàn)31</p><p> 5.1 系統(tǒng)母版頁的實(shí)現(xiàn)31</p><p> 5.1.1 系統(tǒng)首頁實(shí)現(xiàn)3
8、1</p><p> 5.1.2 上傳歌曲頁面的實(shí)現(xiàn)32</p><p> 5.1.3 管理我的歌曲頁面的實(shí)現(xiàn)32</p><p> 5.1.4下載歌曲頁面的實(shí)現(xiàn)33</p><p> 5.1.5 短消息與留言板的實(shí)現(xiàn)33</p><p> 6 系統(tǒng)的調(diào)試與測試35</p><p
9、> 6.1 程序調(diào)試29</p><p> 6.2 程序的測試35</p><p> 6.2.1 測試的重要性及目的35</p><p> 6.2.2 測試的步驟36</p><p> 6.2.3 測試的主要內(nèi)容37</p><p> 6.2.4 測試中的誤區(qū)38</p>&
10、lt;p><b> 結(jié)束語40</b></p><p><b> 致 謝40</b></p><p><b> 參考文獻(xiàn)39</b></p><p><b> 1 引言</b></p><p><b> 1.1 研究背景
11、</b></p><p> 目前,隨著Internet在全球的推廣和普及,越來越多的人開始進(jìn)入這個全球范圍的計算機(jī)網(wǎng)絡(luò),世界因此變成了一個小小的地球村,人們通過互聯(lián)網(wǎng)彼此溝通和交流。面對信息化逐步成為社會標(biāo)志的現(xiàn)實(shí)狀況,必然決定了計算機(jī)網(wǎng)絡(luò)的應(yīng)用以及使用將會更加的頻繁,信息化給人們帶來的好處是不言而喻的,就計算機(jī)網(wǎng)絡(luò)而言,在軍隊、政府以及企業(yè)的應(yīng)用所帶來的好處更是數(shù)不勝數(shù),而在如今這樣一個信息化的網(wǎng)
12、絡(luò)時代,音樂變得無處不在,尤其是多媒體的出現(xiàn)讓音樂更加大眾化、普及化了?,F(xiàn)在只要你鼠標(biāo)輕輕一點(diǎn),就可以找到各種各樣的,甚至是不同國家的音樂信息供你選擇來試聽和下載,也決定了網(wǎng)上娛樂會有很大的市場潛力和升值空間,因此,根據(jù)實(shí)際情況打造一個在線音樂點(diǎn)播系統(tǒng)具有很實(shí)際的市場意義。</p><p> 課題目標(biāo)是設(shè)計并實(shí)現(xiàn)一個B/S體系結(jié)構(gòu)的Integer音樂網(wǎng)站。結(jié)合實(shí)踐,理解網(wǎng)頁開發(fā)技術(shù)和數(shù)據(jù)庫的基本知識,學(xué)習(xí)相關(guān)開
13、發(fā)工具和應(yīng)用軟件,熟悉網(wǎng)站建設(shè)的過程,熟練掌握網(wǎng)絡(luò)數(shù)據(jù)庫編程方法。</p><p> 1.2 國內(nèi)研究現(xiàn)狀</p><p> 現(xiàn)在我國的信息管理水平還比較落后,這樣的機(jī)制已經(jīng)不能適應(yīng)時代的發(fā)展,因?yàn)樗速M(fèi)了許多人力和物力,在信息時代傳統(tǒng)的管理方法必然被計算機(jī)為基礎(chǔ)的信息管理所取代。軟件作為一項(xiàng)有力的工具,只能當(dāng)此種工具,與我們的實(shí)踐相結(jié)合起來的時候,才具有重大的社會價值及使用價值。因此
14、根據(jù)目前實(shí)際的情況開發(fā)這樣一套管理系統(tǒng)是十分必要的。</p><p> 隨著科學(xué)技術(shù)的不斷提高,計算機(jī)科學(xué)技術(shù)日漸成熟,其強(qiáng)大的功能已為人們深刻認(rèn)識,它已進(jìn)入人類社會的各個領(lǐng)域并發(fā)揮著越來越重要的作用。作為計算機(jī)應(yīng)用的一部分,使用計算機(jī)進(jìn)行管理,具有著手工管理所無法比擬的優(yōu)點(diǎn)。例如:可靠性高、存儲量大、保密性好、壽命長、成本低等。這些優(yōu)點(diǎn)能夠極大地提高工作的效率,也是信息正規(guī)化管理與世界接軌的重要條件。<
15、/p><p> 本系統(tǒng)用JSP語言來編寫社本系統(tǒng),數(shù)據(jù)庫用MYSQL來連接系統(tǒng)。本論文主要涉及軟件,數(shù)據(jù)庫與網(wǎng)絡(luò)技術(shù)等。涵蓋知識面廣,可有效地提高學(xué)生綜合運(yùn)用所學(xué)知識分析解決問題的能力,增強(qiáng)學(xué)生對事物的理解與掌握能力,培養(yǎng)學(xué)生掌握科學(xué)的研究方法,正確的設(shè)計思想,獨(dú)立思考,勇于進(jìn)取,探索創(chuàng)新,為今后進(jìn)一步學(xué)習(xí)與工作奠定了良好的基礎(chǔ)。</p><p> 1.3 研究內(nèi)容與本人所做的工作<
16、/p><p> 1.3.1 研究內(nèi)容 </p><p> 設(shè)計并開發(fā)一個在線音樂管理系統(tǒng),該系統(tǒng)的功能如下:</p><p> ?。?)點(diǎn)播歌曲。用戶不用注冊會員也可點(diǎn)播本系統(tǒng)中的歌曲。</p><p> ?。?)注冊會員。用戶需要注冊會員后才能享受本系統(tǒng)的其他功能。</p><p> ?。?)下載歌曲。注冊會員之后即
17、為本系統(tǒng)會員,可下載自己所喜歡的歌曲到本地電腦中。</p><p> (4)上傳歌曲。本系統(tǒng)會員,可將自己喜歡,但系統(tǒng)所沒有的的歌曲上傳到本系統(tǒng)。</p><p> (5)管理我的歌曲。會員登錄后,可管理自己上傳過的歌曲信息。</p><p> (6)后臺管理。管理員可以方便的管理音樂信息和會員信息。</p><p> 1.3.2 本
18、人所做的工作</p><p> ?。?)點(diǎn)播歌曲流程的設(shè)計與實(shí)現(xiàn)。</p><p> ?。?)會員功能流程的設(shè)計與實(shí)現(xiàn)。包括注冊會員,點(diǎn)播歌曲、上傳、下載歌曲。</p><p> ?。?)后臺管理員的設(shè)計與實(shí)現(xiàn)。在后臺,系統(tǒng)管理員可以方便的管理音樂信息和會員信息。</p><p><b> 1.4 論文結(jié)構(gòu)</b>&l
19、t;/p><p> 本論文分為六章,分別如下:</p><p> 第一章為引言部分,介紹了設(shè)計的選題背景、國內(nèi)研究現(xiàn)狀、設(shè)計研究內(nèi)容與本人所做的工作、系統(tǒng)所用到的環(huán)境。</p><p> 第二章為系統(tǒng)功能分析,提出了系統(tǒng)的功能,并在次基礎(chǔ)上進(jìn)行了設(shè)計可行性研究和需求分析。</p><p> 第三章為概要設(shè)計,做了系統(tǒng)的總體結(jié)構(gòu)圖和數(shù)據(jù)庫設(shè)
20、計工作。</p><p> 第四章為系統(tǒng)的詳細(xì)介紹。</p><p> 第五章關(guān)于系統(tǒng)頁面的實(shí)現(xiàn)。</p><p> 第六章為系統(tǒng)做全面的調(diào)試與測試。</p><p> 1.5 開發(fā)環(huán)境的介紹</p><p> Mircsoft Windows XP:作為系統(tǒng)開發(fā)的操作系統(tǒng)平臺,程序都在它上面運(yùn)行通過。&l
21、t;/p><p> MySQL5.0:主要存儲網(wǎng)頁上抽取的信息,方便以后建索引。</p><p> MyEclipse9.0:用來開發(fā)系統(tǒng)的查詢模塊。</p><p> Tomcat 6.0:是一款Java平臺下的服務(wù)器軟件,模擬網(wǎng)絡(luò)環(huán)境。</p><p><b> JSP技術(shù)簡介</b></p>&l
22、t;p> JSP(Java Server Page服務(wù)器網(wǎng)頁)是從1998年開始出現(xiàn)的新技術(shù)。由Sun公司倡導(dǎo)、許多公司參與一起建立的一種動態(tài)網(wǎng)頁技術(shù)標(biāo)準(zhǔn),是基于JavaServlet以及整個Java體系的web開發(fā)技術(shù)。在傳統(tǒng)的網(wǎng)頁HTML文件(*.htm,*.html)中加入腳本片段和JSP標(biāo)記(Tag),構(gòu)成JSP網(wǎng)頁(*.jsp)。JSP技術(shù)為創(chuàng)建顯示動態(tài)生成內(nèi)容的web頁面提供了簡便的方法。JSP作為Java家族的一員
23、,承襲了Java的特點(diǎn),即跨平臺的特性,也即一次編譯,到處運(yùn)行。</p><p> 在國外,己經(jīng)大量使用JSP作為網(wǎng)絡(luò)應(yīng)用程序的開發(fā)工具,而在國內(nèi),盡管JSP還不是主流開發(fā)技術(shù),但是由于JSP的強(qiáng)大優(yōu)勢,許多網(wǎng)站都已經(jīng)準(zhǔn)備轉(zhuǎn)向JSP,利用JSP來開發(fā)動態(tài)網(wǎng)站。 </p><p> 2. JSP工作原理</p><p> JSP是面向服務(wù)器的,因此支持任何瀏覽器
24、。當(dāng)Web服務(wù)器和JSP引擎遇到訪問JSP網(wǎng)頁的請求時,JSP引擎將請求對象發(fā)送給服務(wù)器端的相關(guān)組件,比如JavaBean組件、Servlet或EJB等,然后由服務(wù)器端組件處理這些請示,可能需要從數(shù)據(jù)庫或數(shù)據(jù)存儲中檢索信息,然后服務(wù)器端組件再將響應(yīng)對象返回JSP引擎。</p><p> JSP引擎將響應(yīng)對象傳遞給JSP頁面,根據(jù)JSP頁面的HTML格式完成數(shù)據(jù)編排,最后Web服務(wù)器和JSP引擎將格式化后的JSP
25、頁面以HTML格式返回客戶瀏覽器。這就是當(dāng)前網(wǎng)站構(gòu)建中廣泛采用的瀏覽器——Web服務(wù)器——后臺數(shù)據(jù)庫的三層架構(gòu)模式。因?yàn)镴SP所有程序操作都在服務(wù)器端執(zhí)行,網(wǎng)絡(luò)上傳送給客戶端的僅是得到的結(jié)果。</p><p> 3. JSP體系結(jié)構(gòu)</p><p> JSP網(wǎng)站開發(fā)標(biāo)準(zhǔn)給出了兩種使用JSP的技術(shù),可以歸納為模式一、模式二。</p><p> 模式一:JSP+J
26、avaBeans技術(shù)。在這種模式中,JSP頁面獨(dú)自響應(yīng)請求并將處理結(jié)果返回給客戶。Bean處理所有數(shù)據(jù)訪問,JSP實(shí)現(xiàn)頁面的表現(xiàn),以實(shí)現(xiàn)內(nèi)容生成與顯示相分離。</p><p> 當(dāng)處理復(fù)雜的大型應(yīng)用時,頁面被嵌入大量的腳本或Java代碼段,當(dāng)需要處理的商業(yè)邏輯復(fù)雜時,這種情況會變得非常糟糕,大量的內(nèi)嵌代碼使得頁面程序變得復(fù)雜,對于前端界面設(shè)計人員,這是不可思議的事情。所以模式一可用于小型應(yīng)用,不能夠滿足大型應(yīng)用
27、的需要。</p><p> 模式二:JSP+Servlet+JavaBeans技術(shù)。Servlet技術(shù)是一種采用Java技術(shù)來實(shí)現(xiàn)CGI</p><p> 功能的一種技術(shù),Servlet技術(shù)非常適于服務(wù)器端的處理和編程,并且Servlet會長期駐留在內(nèi)存。</p><p> 從開發(fā)的觀點(diǎn)看,模式二具有更清晰的頁面表現(xiàn),清楚的開發(fā)者角色劃分,在大規(guī)模項(xiàng)目開發(fā)中,
28、模式二更被采用,模式二也更符合當(dāng)前流行的MVC結(jié)(Model/view/controller),其中Servlet對應(yīng)controller,處于控制者的位置,處理HTTP請求,負(fù)責(zé)生成JSP中使用的Beans組件或?qū)ο?,并判斷?yīng)將請求傳遞給哪個JSP等,JSP對應(yīng)view,負(fù)責(zé)生成最終的動態(tài)網(wǎng)頁并返回給瀏覽器。而JavaBeans對應(yīng)的是Model,實(shí)現(xiàn)各個具體的應(yīng)用邏輯與功能。</p><p><b>
29、; 4. JSP的特點(diǎn)</b></p><p> 簡化的頁面生成技術(shù)。</p><p> JSP頁面用標(biāo)準(zhǔn)的HTML或XML命令來處理頁面的格式化和布局設(shè)計,而用類似HTML、XML的標(biāo)記和Java語言編寫的腳本程序生成頁面內(nèi)容。這使得頁面形式與頁面內(nèi)容互相獨(dú)立,非常有利于大型項(xiàng)目的分工合作。</p><p> (1)與Java平臺有機(jī)集成。&l
30、t;/p><p> JSP技術(shù)是Java 2平臺的重要組成部分,JSP使用Java語言作為它的腳本語言。在JSP頁面中可以使用幾乎所有的Java組件和Java API,這就能充分發(fā)揮出Java語言的強(qiáng)大功能。使用JSP技術(shù)可以創(chuàng)建具有高度可伸縮性和可靠性的Web應(yīng)用程序。</p><p> ?。?)硬件平臺和服務(wù)器無關(guān)性。</p><p> JSP作為Java家族的
31、一員,秉承了Java技術(shù)的“一次編寫,隨處可用(Write Once,Rum Anywhere)”的特性,可以運(yùn)行于大多數(shù)流行的操作系統(tǒng)平臺及Web服務(wù)器,這種與服務(wù)器硬件和操作系統(tǒng)平臺的無關(guān)性是JSP相對于其它動態(tài)網(wǎng)頁技術(shù)最大的一個優(yōu)點(diǎn)。</p><p> (3)功能可擴(kuò)展性。</p><p> 如同Microsoft的JSP技術(shù)可以通過ActiveX/COM組件來擴(kuò)展功能一樣,JS
32、P可以通過JavaBean和EJB(Enterprise JavaBean)以及自定義的標(biāo)記來擴(kuò)展功能。</p><p> JSP可以通過JDBC,與諸如Oracle、SQL Server這樣的大型關(guān)系數(shù)據(jù)庫進(jìn)行連接。</p><p> JSP提供了一些隱含對象。這些隱含對象在JSP頁面中可以直接引用,而不必首先聲明。利用JSP提供的這些隱含對象,可以使腳本功能更加強(qiáng)大,并且編程更加容
33、易、方便。例如,利用request對象,可以很容易地接收用戶在HTML表單中提交的信息。</p><p> 5. JSP的優(yōu)缺點(diǎn)</p><p><b> JSP技術(shù)的優(yōu)勢:</b></p><p> (1)一次編寫,到處運(yùn)行。除了系統(tǒng)之外,代碼不用做任何更改。 </p><p> (2)系統(tǒng)的多平臺支持?;?/p>
34、本上可以在所有平臺上的任意環(huán)境中開發(fā),在任意環(huán)境中進(jìn)行系統(tǒng)部署,在任意環(huán)境中擴(kuò)展。相比ASP/.net的局限性是顯而易見的。 </p><p> ?。?)強(qiáng)大的可伸縮性。從只有一個小的Jar文件就可以運(yùn)行Servlet/JSP,到由多臺服務(wù)器進(jìn)行集群和負(fù)載均衡,到多臺Application進(jìn)行事務(wù)處理,消息處理,一臺服務(wù)器到無數(shù)臺服務(wù)器,Java顯示了一個巨大的生命力。 </p><p&
35、gt; ?。?)多樣化和功能強(qiáng)大的開發(fā)工具支持。這一點(diǎn)與ASP很像,Java已經(jīng)有了許多非常優(yōu)秀的開發(fā)工具,而且許多可以免費(fèi)得到,并且其中許多已經(jīng)可以順利的運(yùn)行于多種平臺之下。 </p><p> (5)支持服務(wù)器端組件。web應(yīng)用需要強(qiáng)大的服務(wù)器端組件來支持,開發(fā)人員需要利用其他工具設(shè)計實(shí)現(xiàn)復(fù)雜功能的組件供web頁面調(diào)用,以增強(qiáng)系統(tǒng)性能。JSP可以使用成熟的JAVA BEANS 組件來實(shí)現(xiàn)復(fù)雜商務(wù)功能。&
36、lt;/p><p><b> JSP技術(shù)的劣勢:</b></p><p> (1)與ASP一樣,Java的一些優(yōu)勢正是它致命的問題所在。正是由于為了跨平臺的功能,為了極度的伸縮能力,所以極大的增加了產(chǎn)品的復(fù)雜性。 </p><p> ?。?)Java的運(yùn)行速度是用class常駐內(nèi)存來完成的,
37、所以它在一些情況下所使用的內(nèi)存比起用戶數(shù)量來說確實(shí)是“最低性能價格比”了。從另一方面,它還需要硬盤空間來儲存一系列的.java文件和.class文件,以及對應(yīng)的版本文件。</p><p> JSP的工作模式如圖1.1所示:用戶通過web server 訪問到對方的服務(wù)器,獲得所需要的服務(wù)。</p><p> 圖 1.1 JSP的工作模式圖</p><p> 1
38、.5.2 開發(fā)工具之MyEclipse9.0</p><p> MyEclipse,是一個十分優(yōu)秀的用于開發(fā)Java, J2EE的Eclipse插件集合,MyEclipse的功能非常強(qiáng)大,支持也十分廣泛,尤其是對各種開源產(chǎn)品的支持十分不錯。MyEclipse企業(yè)級工作平臺(MyEclipse Enterprise Workbench ,簡稱MyEclipse)是對EclipseIDE的擴(kuò)展,利用它我們可以在數(shù)據(jù)
39、庫和JavaEE的開發(fā)、發(fā)布以及應(yīng)用程序服務(wù)器的整合方面極大的提高工作效率。它是功能豐富的JavaEE集成開發(fā)環(huán)境,包括了完備的編碼、調(diào)試、測試和發(fā)布功能,完整支持HTML,Struts,JSP,CSS,Javascript,Spring,SQL,Hibernate。</p><p> 在結(jié)構(gòu)上,MyEclipse的特征可以被分為7類: </p><p> (1)JavaEE模型。
40、 </p><p> ?。?)WEB開發(fā)工具。 </p><p> ?。?)EJB開發(fā)工具。 </p><p> (4)應(yīng)用程序服務(wù)器的連接器。 </p><p> ?。?)JavaEE項(xiàng)目部署服務(wù)。 </p><p> (6)數(shù)據(jù)庫服務(wù)。 </p><p> (7)MyEc
41、lipse整合幫助。</p><p> 對于以上每一種功能上的類別,在Eclipse中都有相應(yīng)的功能部件,并通過一系列的插件來實(shí)現(xiàn)它們。MyEclipse結(jié)構(gòu)上的這種模塊化,可以讓我們在不影響其他模塊的情況下,對任一模塊進(jìn)行單獨(dú)的擴(kuò)展和升級。 簡單而言,MyEclipse是Eclipse的插件,也是一款功能強(qiáng)大的JavaEE集成開發(fā)環(huán)境,支持代碼編寫、配置、測試以及除錯,MyEclipse6.0以前版本需先安裝
42、Eclipse。MyEclipse6.0以后版本安裝時不需安裝Eclipse。</p><p> MyEclipse生成WAR包并在Tomcat下部署發(fā)布 。首先是使用MyEclipse將web項(xiàng)目打包,右鍵選中項(xiàng)目,選擇export;彈出Export的select窗體,選擇Java EE 的WAR file(myeclipse)選項(xiàng),然后選擇工程名稱和路徑,單擊完成就可以了。 打包完成以后我們將war放到to
43、mcat的webapps目錄下,并設(shè)置server.xml文件;然后運(yùn)行tomcat,并輸入項(xiàng)目的url就可以瀏覽了。</p><p> 1.5.3 開發(fā)工具之MySQL數(shù)據(jù)庫</p><p> 數(shù)據(jù)庫技術(shù)作為數(shù)據(jù)管理技術(shù),是計算機(jī)軟件領(lǐng)域的一個重要分支,產(chǎn)生于60年代末。現(xiàn)已形成相當(dāng)規(guī)模的理論體系和實(shí)用技術(shù)。優(yōu)秀的數(shù)據(jù)庫設(shè)計是應(yīng)用成功的基石。萬萬丈高樓平地起,數(shù)據(jù)庫設(shè)計如同高樓的基石
44、,是開發(fā)高品質(zhì)應(yīng)用的前提。</p><p> 1. 數(shù)據(jù)的體系結(jié)構(gòu)</p><p> 數(shù)據(jù)的體系結(jié)構(gòu)分成三級:內(nèi)部級(Internal),概念級(Conceptual)和外部級(External)。這個三級結(jié)構(gòu)有時也稱為“三級模式結(jié)構(gòu)”。外部級:最接近用戶,是單個用戶所能看到的數(shù)據(jù)特性。單個用戶使用的數(shù)據(jù)視圖的描述稱為“外模式”。概念級:涉及到所有用戶的數(shù)據(jù)定義、是全局的數(shù)據(jù)視圖。全局
45、視圖的描述稱為“概念模式”。內(nèi)部級:最接近于物理存儲設(shè)備,涉及到實(shí)際數(shù)據(jù)存儲的結(jié)構(gòu)物理存儲數(shù)據(jù)視圖的描述稱為“內(nèi)模式”。數(shù)據(jù)庫的三級模式結(jié)構(gòu)是數(shù)據(jù)的三個抽象級別。它把數(shù)據(jù)的具體組織留給DBMS去做,用戶只要抽象地處理數(shù)據(jù),而不必關(guān)心數(shù)據(jù)在計算機(jī)中的表示和存儲,這樣就減輕了用戶使用系統(tǒng)的負(fù)擔(dān)。</p><p> 2. 數(shù)據(jù)庫管理系統(tǒng)(DBMS)</p><p> 數(shù)據(jù)庫管理系統(tǒng)(DBMS
46、)是指數(shù)據(jù)庫系統(tǒng)中管理數(shù)據(jù)的軟件系統(tǒng)。DBMS是數(shù)據(jù)庫系統(tǒng)的核心組成部分。對數(shù)據(jù)庫的一切操作,包括定義、查詢、更新及各種控制,都是通過DBMS進(jìn)行的。</p><p> 在不同的計算機(jī)系統(tǒng)中,由于缺乏統(tǒng)一的標(biāo)準(zhǔn),即使同種數(shù)據(jù)模型的DBMS,它們在用戶接口、系統(tǒng)功能方面也常常是不相同的。</p><p> 用戶對數(shù)據(jù)庫進(jìn)行操作,是由DBMS把操作從應(yīng)用程序帶到外部級、概念級、再導(dǎo)向內(nèi)部級
47、,進(jìn)而操作存儲器中的數(shù)據(jù)。DBMS的主要目標(biāo),是使數(shù)據(jù)作為一種可管理的資源處理。</p><p> DBMS的主要功能為:</p><p> ?。?)數(shù)據(jù)庫定義功能:DBMS提供數(shù)據(jù)定義語言(DDL)定義數(shù)據(jù)庫的三級結(jié)構(gòu),包括外模式、概念模式、內(nèi)模式及其相互之間的映象,定義數(shù)據(jù)的完整性、安全控制等約束。因此,在DBMS中應(yīng)包括DDL的編譯程序。</p><p>
48、?。?)數(shù)據(jù)庫的操縱功能:DBMS提供數(shù)據(jù)操縱語言(DML)實(shí)現(xiàn)對數(shù)據(jù)庫中數(shù)據(jù)的操作?;镜臄?shù)據(jù)操作分成兩類四種:檢索(查詢)、更新(插入、刪除、修改)。</p><p> ?。?)數(shù)據(jù)庫的保護(hù)功能:數(shù)據(jù)庫中的數(shù)據(jù)是信息社會的戰(zhàn)略資源,對數(shù)據(jù)的保護(hù)是至關(guān)重要的大事。DBMS對數(shù)據(jù)庫的保護(hù)主要通過四個方面實(shí)現(xiàn):</p><p> ?。?)數(shù)據(jù)庫的恢復(fù):在數(shù)據(jù)庫被破壞或數(shù)據(jù)不正確時,系統(tǒng)有能力
49、把數(shù)據(jù)庫恢復(fù)到正確的狀態(tài)。</p><p> ?。?)數(shù)據(jù)庫的并發(fā)控制:DBMS的并發(fā)控制子系統(tǒng)能防止錯誤發(fā)生,正確處理好多用戶、多任務(wù)環(huán)境下的并發(fā)操作。</p><p> ?。?)數(shù)據(jù)庫的完整性控制:保證數(shù)據(jù)庫中數(shù)據(jù)及語義的正確性和有效性,防止任何對數(shù)據(jù)造成錯誤的操作。</p><p> (7)數(shù)據(jù)庫的安全性控制:防止未經(jīng)授權(quán)的用戶蓄謀或無意地存取數(shù)據(jù)庫中的數(shù)據(jù)
50、,以免數(shù)據(jù)的泄露、更改或破壞。</p><p> (8)數(shù)據(jù)庫的存儲管理:把各種DML語句轉(zhuǎn)換成低層的文件系統(tǒng)命令,起到數(shù)據(jù)的存儲、檢索和更新的作用。</p><p> ?。?)數(shù)據(jù)庫的維護(hù)功能:它有許多實(shí)用程序提供給數(shù)據(jù)庫管理員如:數(shù)據(jù)裝載程序備份程序、文件重組織程序、性能監(jiān)控程序。</p><p> (10)數(shù)據(jù)字典:數(shù)據(jù)庫系統(tǒng)中存放三級結(jié)構(gòu)定義的數(shù)據(jù)庫稱為
51、數(shù)據(jù)字典(DD)。對數(shù)據(jù)庫的操作都要通過訪問DD才能實(shí)現(xiàn),通常DD中還存放數(shù)據(jù)庫運(yùn)行時的統(tǒng)計信息。</p><p> 本系統(tǒng)中所涉及到的MySQL數(shù)據(jù)庫是眾多的關(guān)系型數(shù)據(jù)庫產(chǎn)品中的一個,相比較其它系統(tǒng)而言,MySQL數(shù)據(jù)庫可以稱得上是目前運(yùn)行速度最快的SQL語言數(shù)據(jù)庫。除了具有許多其它數(shù)據(jù)庫所不具備的功能和選擇之外,MySQL數(shù)據(jù)庫是一種完全免費(fèi)的產(chǎn)品,用戶可以直接從網(wǎng)上下載數(shù)據(jù)庫,用于個人或商業(yè)用途,而不必支
52、付任何費(fèi)用。</p><p> 總體來說,MySQL數(shù)據(jù)庫具有以下主要特點(diǎn):</p><p> ?。?)同時訪問數(shù)據(jù)庫的用戶數(shù)量不受限制;</p><p> ?。?)可以保存超過50,000,000條記錄;</p><p> ?。?)是目前市場上現(xiàn)有產(chǎn)品中運(yùn)行速度最快的數(shù)據(jù)庫系統(tǒng);</p><p> (4)用戶權(quán)限
53、設(shè)置簡單、有效。 </p><p> 如今,包括Siemens和Silicon Graphics這樣的國際知名公司也開始把MySQL作為其數(shù)據(jù)庫管理系統(tǒng),這就更加證明了MySQL數(shù)據(jù)庫的優(yōu)越性能和廣闊的市場發(fā)展前景。</p><p> 與其他的大型數(shù)據(jù)庫例如Oracle、DB2、SQL Server等相比,MySQL自有它的不足之處,如規(guī)模小、功能有限(MySQL Cluster的功能
54、和效率都相對比較差)等,但是這絲毫也沒有減少它受歡迎的程度。對于一般的個人使用者和中小型企業(yè)來說,MySQL提供的功能已經(jīng)綽綽有余,而且由于MySQL是開放源碼軟件,因此可以大大降低總體擁有成本。 </p><p> 目前Internet上流行的網(wǎng)站構(gòu)架方式是LAMP和LNMP,即使用Linux作為操作系統(tǒng),Apache和Nginx作為Web服務(wù)器,MySQL作為數(shù)據(jù)庫,PHP/Perl/Python作為服務(wù)
55、器端腳本解釋器。由于這四個軟件都是免費(fèi)或開放源碼軟件(FLOSS),因此使用這種方式不用花一分錢(除開人工成本)就可以建立起一個穩(wěn)定、免費(fèi)的網(wǎng)站系統(tǒng)。</p><p> 使用MySQL,安全問題不能不注意。以下是MySQL提示的23個注意事項(xiàng): </p><p> ?。?)如果客戶端和服務(wù)器端的連接需要跨越并通過不可信任的網(wǎng)絡(luò),那么就需要使用SS H隧道來加密該連接的通信。<
56、;/p><p> ?。?)用set password語句來修改用戶的密碼,三個步驟,先“mysql -u root”登陸數(shù)據(jù)庫系統(tǒng),然后“mysql> update mysql.user set password=password(’newpwd’)”,最后執(zhí)行“flush privileges”就可以了。 </p><p> (3)需要提防的攻擊有,防偷聽、篡改、回放、拒絕服務(wù)等
57、,不涉及可用性和容錯方面。對所有的連接、查詢、其他操作使用基于ACL即訪問控制列表的安全措施來完成。也有一些對SSL連接的支持。 </p><p> ?。?)除了root用戶外的其他任何用戶不允許訪問MySQL主數(shù)據(jù)庫中的user表; 加密后存放在user表中的加密后的用戶密碼一旦泄露,其他人可以隨意用該用戶名/密碼相應(yīng)的數(shù)據(jù)庫; </p><p> ?。?)用grant和re
58、voke語句來進(jìn)行用戶訪問控制的工作; </p><p> ?。?)不使用明文密碼,而是使用md5()和sha1()等單向的哈希函數(shù)來設(shè)置密碼; </p><p> ?。?)不選用字典中的字來做密碼; </p><p> ?。?)采用防火墻來去掉50%的外部危險,讓數(shù)據(jù)庫系統(tǒng)躲在防火墻后面工作,或放置在DMZ區(qū)域中; </p><
59、;p> ?。?)從因特網(wǎng)上用nmap來掃描3306端口,也可用telnet server_host 3306的方法測試,不能允許從非信任網(wǎng)絡(luò)中訪問數(shù)據(jù)庫服務(wù)器的3306號TCP端口,因此需要在防火墻或路由器上做設(shè)定; </p><p> ?。?0)為了防止被惡意傳入非法參數(shù),例如where ID=234,別人卻輸入where ID=234 OR 1=1導(dǎo)致全部顯示,所以在web的表單中使用”或”&quo
60、t;來用字符串,在動態(tài)URL中加入%22代表雙引號、%23代表井號、%27代表單引號;傳遞未檢 查過的值給mysql數(shù)據(jù)庫是非常危險的; </p><p> ?。?1)在傳遞數(shù)據(jù)給MySQL時檢查一下大??; </p><p> ?。?2)應(yīng)用程序需要連接到數(shù)據(jù)庫應(yīng)該使用一般的用戶帳號,只開放少數(shù)必要的權(quán)限給該用戶; </p><p> (13)在各編程
61、接口(C C++ PHP Perl Java JDBC等)中使用特定‘逃脫字符’函數(shù); 在因特網(wǎng)上使用mysql數(shù)據(jù)庫時一定少用傳輸明文的數(shù)據(jù),而用SSL和SSH的加密方式數(shù)據(jù)來傳輸; </p><p> ?。?4)學(xué)會使用tcpdump和strings工具來查看傳輸數(shù)據(jù)的安全性,例如tcpdump -l -i eth0 -w -src or dst port 3306 | strings。以普通用戶來啟動m
62、ysql數(shù)據(jù)庫服務(wù); </p><p> ?。?5)不使用到表的聯(lián)結(jié)符號,選用的參數(shù) –skip-symbolic-links; </p><p> ?。?6)確信在mysql目錄中只有啟動數(shù)據(jù)庫服務(wù)的用戶才可以對文件有讀和寫的權(quán)限; </p><p> ?。?7)不許將process或super權(quán)限付給非管理用戶,該mysqladmin process
63、list可以列舉出當(dāng)前執(zhí)行的查詢文本;super權(quán)限可用于切斷客戶端連接、改變服務(wù)器運(yùn)行參數(shù)狀態(tài)、控制拷貝復(fù)制數(shù)據(jù)庫的服務(wù)器; </p><p> ?。?8)file權(quán)限不付給管理員以外的用戶,防止出現(xiàn)load data‘/etc/passwd’到表中再用select 顯示出來的問題; </p><p> ?。?9)如果不相信DNS服務(wù)公司的服務(wù),可以在主機(jī)名稱允許表中只設(shè)置IP數(shù)
64、字地址; </p><p> ?。?0)使用max_user_connections變量來使mysqld服務(wù)進(jìn)程,對一個指定帳戶限定連接數(shù); </p><p> ?。?1)grant語句也支持資源控制選項(xiàng); </p><p> ?。?2)啟動mysqld服務(wù)進(jìn)程的安全選項(xiàng)開關(guān),–local-infile=0 或1 若是0則客戶端程序就無法使用local
65、load dat了,賦權(quán)的一個例子grant insert(user) on mysql.user to ‘user_name’@'host_name’;若使用–skip-grant-tables系統(tǒng)將對任何用戶的訪問不做任何訪問控制,但可以用 mysqladmin flush-privileges或mysqladmin reload來開啟訪問控制;默認(rèn)情況是show databases語句對所有用戶開放,可以用–skip-sh
66、ow-databases來關(guān)閉掉。 </p><p> ?。?3)碰到Error 1045(28000) Access Denied for user ‘root’@'localhost’(Using password:NO)錯誤時,你需要重新設(shè)置密碼,具體方法是:先用–skip-grant-tables參數(shù)啟動mysqld,然后執(zhí)行 mysql -u root mysql,mysql>upda
67、te user set password=password(’newpassword’) where user=’root’;mysql>Flush privileges;,最后重新啟動mysql就可以了。</p><p> 1.5.4 開發(fā)工具之Dreamwear 8.0</p><p> Dreamweaver是美國MACROMTDIA公司開發(fā)的集網(wǎng)頁制作和管理網(wǎng)站于一身的所
68、見即所得網(wǎng)頁編輯器,它是第一套針對專業(yè)網(wǎng)頁設(shè)計師特別發(fā)展的視覺化網(wǎng)頁開發(fā)工具,利用它可以輕而易舉地制作出跨越平臺限制和跨越瀏覽器限制的充滿動感的網(wǎng)頁。</p><p> Dreamweaver具有靈活的運(yùn)用樣式,熟悉網(wǎng)頁設(shè)計的網(wǎng)友都知道,調(diào)用Style的方法很多,我們可以單擊鼠標(biāo)右鍵選擇Custon Style 來調(diào)用Style標(biāo)準(zhǔn),也可以直接在狀態(tài)欄中的元素列表上單擊右鍵來調(diào)用Style,直接選擇屬性中想要的
69、效果,可以自動生成相對于的代碼Style,簡潔又方便。雖然不同的方法達(dá)到的效果看似一樣,但實(shí)際上產(chǎn)生的HTML代碼則完全不同。比如用Custon Style來調(diào)用Style標(biāo)準(zhǔn),在網(wǎng)頁代碼中就生成一個<span>標(biāo)簽,這樣的標(biāo)簽多了就會使文件十分臃腫而且影響瀏覽器的解析速度,所以我們應(yīng)盡量避免調(diào)用這種方法來調(diào)用Style。</p><p> Dreamweaver具有活用的Format Table命
70、令,在復(fù)雜的網(wǎng)頁設(shè)計中,表格的應(yīng)用是最多的,因?yàn)槔帽砀窨梢宰杂傻乜刂莆谋竞蛨D像在網(wǎng)頁上出現(xiàn)的具體位置,從而使整個網(wǎng)頁看上去緊湊統(tǒng)一。Dreamweaver在這方面也不甘落后,我們可以使用其中的“Format Table”(格式化表格)命令來快速地對表格應(yīng)用預(yù)先設(shè)計好的樣式。</p><p> Dreamweaver具有拖放自如的特點(diǎn),在使用Dreamweaver編輯網(wǎng)頁的時候,經(jīng)常需要插入一些圖像什么的,假設(shè)
71、要插入的圖像很多,按照常規(guī)方法來操作就顯得非常麻煩。我們可以利用拖放技巧來很好地解決這個問題。首先我們把Dreamweaver的操作窗口變成活動窗口,以騰出空間來顯示Explorer窗口,找到要插入的圖像文件后,把它們一一用鼠標(biāo)拖動到網(wǎng)頁的適當(dāng)部位,Dreamweaver將自動把這些圖像URL添加到文件的HTML代碼中,當(dāng)然這里要求被拖動的圖象文件必須是gif、jpg等web圖像格式的文件。</p><p>&l
72、t;b> 軟件缺點(diǎn):</b></p><p><b> 1. 效果難一致</b></p><p> 難以精確達(dá)到與瀏覽器完全一致的顯示效果也就是說您在所見即所得網(wǎng)頁編輯器中制作的網(wǎng)頁放到瀏覽器中是很難完全達(dá)到您真正想要的效果,這一點(diǎn)在結(jié)構(gòu)復(fù)雜一些的網(wǎng)頁(如分幀結(jié)構(gòu)、動態(tài)網(wǎng)頁結(jié)構(gòu))中便可以體現(xiàn)出來;</p><p><
73、;b> 2. 代碼難控制</b></p><p> 頁面原始代碼的難以控制性,比如您在所見即所得編輯器中制作一張表格也要幾分鐘,但您要它完全符合您要求可能需要幾十分鐘,甚至更多時間。而相比之下,非所見所得的網(wǎng)頁編輯器,就不存在這個問題,因?yàn)樗械腍TML代碼 都在您的監(jiān)控下產(chǎn)生,但是由于非所見所得編輯器的先天條件就注定了它的工作低效率。如何實(shí)現(xiàn)兩者的完美結(jié)合,則既產(chǎn)生干凈、準(zhǔn)確的HTML代碼
74、,又具備所見所得的高效率、直觀性,一直是網(wǎng)頁設(shè)計師夢想。在DREAMWEAVER之前,F(xiàn)RONTPAGE98一直被人們認(rèn)為是最好的所見即所得網(wǎng)頁編輯器,但是它同樣繼承了所見即所得的種種劣性。</p><p> 1.5.5開發(fā)工具之Tomcat</p><p> Tomcat是Apache 軟件基金會(Apache Software Foundation)的Jakarta 項(xiàng)目中的一個核
75、心項(xiàng)目,由Apache、Sun 和其他一些公司及個人共同開發(fā)而成。由于有了Sun 的參與和支持,最新的Servlet 和JSP 規(guī)范總是能在Tomcat 中得到體現(xiàn),Tomcat 5 支持最新的Servlet 2.4 和JSP 2.0 規(guī)范。因?yàn)門omcat 技術(shù)先進(jìn)、性能穩(wěn)定,而且免費(fèi),因而深受Java 愛好者的喜愛并得到了部分軟件開發(fā)商的認(rèn)可,成為目前比較流行的Web 應(yīng)用服務(wù)器。</p><p> Tom
76、cat 是一個輕量級應(yīng)用服務(wù)器,在中小型系統(tǒng)和并發(fā)訪問用戶不是很多的場合下被普遍使用,是開發(fā)和調(diào)試JSP 程序的首選。對于一個初學(xué)者來說,可以這樣認(rèn)為,當(dāng)在一臺機(jī)器上配置好Apache 服務(wù)器,可利用它響應(yīng)對HTML 頁面的訪問請求。實(shí)際上Tomcat 部分是Apache 服務(wù)器的擴(kuò)展,但它是獨(dú)立運(yùn)行的,所以當(dāng)你運(yùn)行tomcat 時,它實(shí)際上作為一個與Apache 獨(dú)立的進(jìn)程單獨(dú)運(yùn)行的。</p><p> 1.
77、 通過server.xml配置Tomcat</p><p> server.xml是Tomcat的重要配置文件,平時所說的Tomcat的配置(如虛擬主機(jī)的配置、連接端口設(shè)置等)其實(shí)就是指配置server.xml,server.xml中的元素大體可以分為4類,如下:</p><p> 頂層元素:位于整個配置文件的頂層,主要有<Server>元素與<Service>
78、。</p><p> 連接器類元素:它是客戶和服務(wù)(容器類元素)間的通信接口,負(fù)責(zé)接收客戶請求與向客戶返回的響應(yīng)結(jié)果,主要有<Connector>元素。</p><p> 容器類元素:負(fù)責(zé)處理客戶請求并且生成響應(yīng)結(jié)果,主要有<Engine>元素、<Host>元素與<Context>元素。</p><p> 嵌套類
79、元素:可以加入到容器中的元素,主要有<logger>元素、<Valve>元素、<Realm>元素等。</p><p> 2. Tomcat的層次結(jié)構(gòu)</p><p> ?。?)Server層</p><p> 對應(yīng)Server組件,邏輯上表示整個Tomcat,即整個Catalina Servlet容器。它處于Tomcat頂層,
80、可以包含一個或多個Service層。Tomcat提供了該層接口的一個默認(rèn)實(shí)現(xiàn),所以通常不需要用戶自己去實(shí)現(xiàn)。</p><p> (2)Service層</p><p> 對應(yīng)Service組件,是包含在Server層中的一個邏輯功能層。它包含一個Engine層,以及一個或多個連接器(Connector)。Service組件將一個或多個Connector組件綁定到Engine層上,Con
81、nector組件偵聽端口,獲得用戶請求,并將請求交給Engine層處理,同時把處理結(jié)果發(fā)給用戶,從而實(shí)現(xiàn)一個特定的實(shí)際功能。Tomcat提供了Service接口的默認(rèn)實(shí)現(xiàn),所以通常也不需要用戶定制。</p><p> ?。?)Engine層</p><p> 對應(yīng)Engine組件,該層是請求分發(fā)處理層,可以連接多個Connector。它從Connector接收請求后,解析出可以完成用戶請
82、求的URL,根據(jù)該URL可以把請求匹配到正確的Host上,當(dāng)Host處理完用戶請求后,Engine層把結(jié)果返回給適合的連接器,再由連接器傳輸給用戶。該層的接口一般不需要用戶來定制,特殊情況下,用戶可以通過實(shí)現(xiàn)該接口來提供自定義的引擎。</p><p><b> (4)Host層</b></p><p> 對應(yīng)Host組件,該層表示一個虛擬主機(jī),一個Engine層可
83、以包含多個Host層,每個Host層可以包含一個或多個Context層,對應(yīng)不同的Web應(yīng)用。因?yàn)門omcat給出的Host接口的實(shí)現(xiàn)(類StandardHost)提供了重要的附加功能,所以用戶通常不需要定制Host。</p><p> ?。?)Context層</p><p> 對應(yīng)Context組件,該層代表某個虛擬主機(jī)上的實(shí)際目錄或一個WAR,即單個Web應(yīng)用程序,它運(yùn)行在特定的虛
84、擬主機(jī)中,使用最為頻繁。一個Host層包含多個Context層,每一個Context都有唯一的路徑,Host層接到請求后,根據(jù)用戶請求的URL,將請求定位到Context層。</p><p> 3. Tomcat服務(wù)器的各個組件響應(yīng)客戶請求的過程</p><p> Connector負(fù)責(zé)接收客戶的請求并向客戶返回響應(yīng)結(jié)果,在同一個Service中多個Connector共享一個Engin
85、e。同一個Engine中可以有多個Host,同一個Host中包含多個Context。在圖1.2中,Web客戶1和客戶2直接訪問Tomcat 服務(wù)器上的JSP 和htm組件,他們訪問的URL 為http://localhost:8080/index.jsp。</p><p> 圖 1.2 客戶請求的過程圖</p><p> 下面介紹在DOS窗口下運(yùn)行Tomcat步驟: </p&
86、gt;<p> (1)在“開始”按鈕的“運(yùn)行”框中鍵入CMD以打開一個DOS窗口。 </p><p> (2)鍵入RunAs /user:“ITOMCAT_計算機(jī)名 CMD.exe”命令。 </p><p> ?。?)在詢問“ITOMCAT_計算機(jī)名”用戶的密碼時輸入設(shè)置的密碼。 </p><p> ?。?)這將打開一個新的DOS窗口。
87、 </p><p> ?。?)在新開的DOS窗口中,轉(zhuǎn)換到Tomcat的bin文件夾內(nèi)。 </p><p> ?。?)鍵入“catalina run”命令。 </p><p> ?。?)關(guān)閉第一個DOS窗口。 </p><p> 1.5.6開發(fā)工具之 B/S</p><p> B/S結(jié)構(gòu),即Browse
88、r/Server(瀏覽器/服務(wù)器)結(jié)構(gòu),是隨著Internet技術(shù)的興起,對C/S結(jié)構(gòu)的一種變化或者改進(jìn)的結(jié)構(gòu)。在這種結(jié)構(gòu)下,用戶界面完全通過WWW瀏覽器實(shí)現(xiàn),一部分事務(wù)邏輯在前端實(shí)現(xiàn),但是主要事務(wù)邏輯在服務(wù)器端實(shí)現(xiàn),形成所謂3-tier結(jié)構(gòu)。B/S結(jié)構(gòu),主要是利用了不斷成熟的WWW瀏覽器技術(shù),結(jié)合瀏覽器的多種Script語言(VBScript、JavaScript)和ActiveX技術(shù),用通用瀏覽器就實(shí)現(xiàn)了原來需要復(fù)雜專用軟件才能實(shí)現(xiàn)
89、的強(qiáng)大功能,并節(jié)約了開發(fā)成本,是一種全新的軟件系統(tǒng)構(gòu)造技術(shù)。隨著Windows 98/Windows 2000將瀏覽器技術(shù)植入操作系統(tǒng)內(nèi)部,這種結(jié)構(gòu)更成為當(dāng)今應(yīng)用軟件的首選體系結(jié)構(gòu)。顯然B/S結(jié)構(gòu)應(yīng)用程序相對于傳統(tǒng)的C/S結(jié)構(gòu)應(yīng)用程序?qū)⑹蔷薮蟮倪M(jìn)步。</p><p> B/S結(jié)構(gòu)采用星形拓?fù)浣Y(jié)構(gòu)建立企業(yè)內(nèi)部通信網(wǎng)絡(luò)或利用Internet虛擬專網(wǎng)(VPN)。前者的特點(diǎn)是安全、快捷、準(zhǔn)確。后者則具有節(jié)省投資、跨地域
90、廣的優(yōu)點(diǎn)。須視企業(yè)規(guī)模和地理分布確定。企業(yè)內(nèi)部通過防火墻接入Internet,在整個網(wǎng)絡(luò)采用TCP/IP協(xié)議。</p><p> B/S架構(gòu)具備極大的優(yōu)越性:</p><p> 1. 面向電子商務(wù)時代的技術(shù)</p><p> 將來所有的應(yīng)用系統(tǒng)幾乎都在互聯(lián)網(wǎng)或企業(yè)內(nèi)部廣域網(wǎng)上運(yùn)行,發(fā)展電子商務(wù)成為企業(yè)不可避免的信息化道路。B/S架構(gòu)的軟件正是電子商務(wù)的基石,正
91、是這類軟件使得移動辦公和分布式協(xié)同工作真正成為現(xiàn)實(shí)。無論在世界的那個角落,只需要一臺可以聯(lián)網(wǎng)的設(shè)備(計算機(jī)、PDA甚至手機(jī))都可以方便地與客戶聯(lián)系和與他人協(xié)同工作。</p><p> 2. 軟件操作、維護(hù)和升級方式的革命</p><p> 軟件系統(tǒng)的改進(jìn)和升級越來越頻繁,B/S架構(gòu)的產(chǎn)品在維護(hù)和升級方面具備顯著的優(yōu)勢。無論用戶的規(guī)模有多大,有多少分支機(jī)構(gòu)都不會增加任何維護(hù)升級的工作量,
92、所有的操作只對服務(wù)器進(jìn)行,通過遠(yuǎn)程連接服務(wù)器,異地的運(yùn)維人員甚至于可以做到遠(yuǎn)程維護(hù)和升級,這對人力、時間、費(fèi)用的節(jié)省是相當(dāng)驚人的。</p><p> 所有的客戶端只是瀏覽器,所有的操作都和上網(wǎng)瀏覽網(wǎng)頁類似,使用者接受的培訓(xùn)也僅限于業(yè)務(wù)邏輯而無需將大量精力浪費(fèi)學(xué)習(xí)軟件操作上。</p><p><b> 3. 系統(tǒng)整合</b></p><p>
93、 無論是辦公自動化OA系統(tǒng),人力資源HR系統(tǒng),客戶關(guān)系管理CRM系統(tǒng)等,發(fā)展的趨勢是不斷融合。而采用統(tǒng)一的B/S結(jié)構(gòu)開發(fā)的產(chǎn)品無論是現(xiàn)在還是將來都是最好的選擇,它提供了真正意義上無縫地與其它系統(tǒng)進(jìn)行整合的方案。</p><p> B/S結(jié)構(gòu)如圖1.3所示,它采用星形拓?fù)浣Y(jié)構(gòu)建立企業(yè)內(nèi)部通信網(wǎng)絡(luò)或利用Internet虛擬專網(wǎng)(VPN)。前者的特點(diǎn)是安全、快捷、準(zhǔn)確。后者則具有節(jié)省投資、跨地域廣的優(yōu)點(diǎn)。須視企業(yè)規(guī)
94、模和地理分布確定。企業(yè)內(nèi)部通過防火墻接入Internet,在整個網(wǎng)絡(luò)采用TCP/IP協(xié)議。</p><p> 圖 1.3 B/S結(jié)構(gòu)圖</p><p> 1.5.7 開發(fā)工具之JavaBean</p><p> JavaBean 是一種JAVA語言寫成的可重用組件,是使用 java.beans 包開發(fā)的,它是 Java 2 標(biāo)準(zhǔn)版的一部分。JavaBean 是
95、一臺機(jī)器上同一個地址空間中運(yùn)行的組件。JavaBean 是進(jìn)程內(nèi)組件。Enterprise Bean 是使用 javax.ejb 包開發(fā)的,它是標(biāo)準(zhǔn) JDK 的擴(kuò)展,是 Java 2 Enterprise Edition 的一部分。為寫成JavaBean,類必須是具體的和公共的,并且具有無參數(shù)的構(gòu)造器。JavaBeans 通過提供符合一致性設(shè)計模式的公共方法將內(nèi)部域暴露稱為屬性。眾所周知,屬性名稱符合這種模式,其他Java 類可以通過自
96、省機(jī)制發(fā)現(xiàn)和操作這些JavaBean 屬性。 </p><p> 用戶可以使用JavaBean將功能、處理、值、數(shù)據(jù)庫訪問和其他任何可以用java代碼創(chuàng)造的對象進(jìn)行打包,并且其他的開發(fā)者可以通過內(nèi)部的JSP頁面、Servlet、其他JavaBean、applet程序或者應(yīng)用來使用這些對象。用戶可以認(rèn)為JavaBean提供了一種隨時隨地的復(fù)制和粘貼的功能,而不用關(guān)心任何改變。 </p><p&
97、gt; JavaBean是Sun微系統(tǒng)的一個面向?qū)ο蟮木幊探涌冢梢宰屇憬芍赜脩?yīng)用程序或能在網(wǎng)絡(luò)中任何主流操作系統(tǒng)平臺上配置的程序塊,稱作組件。像Java applet一樣,JavaBeans組件(或Beans)能夠給予萬維網(wǎng)頁面交互的能力,例如:計算感興趣的比率或是根據(jù)用戶或?yàn)g覽器的特性改變頁面內(nèi)容。 </p><p> 從用戶的觀點(diǎn)來看,一個組件可以是一個與你交互的按鈕或是一個當(dāng)你按下按鈕它便開始的小
98、計算程序。用戶可以使用JavaBean將功能、處理、值、數(shù)據(jù)庫訪問和其他任何可以用java代碼創(chuàng)造的對象進(jìn)行打包,并且其他的開發(fā)者可以通過內(nèi)部的JSP頁面、Servlet、其他JavaBean、applet程序或者應(yīng)用來使用這些對象。用戶可以認(rèn)為JavaBean提供了一種隨時隨地的復(fù)制和粘貼的功能,而不用關(guān)心任何改變。從一個開發(fā)者的觀點(diǎn)來看,那個按鈕組件和計算器組件是分別被創(chuàng)建的,并且他們可以一起使用或是在不同的應(yīng)用程序或情況下和不同的
99、組件產(chǎn)生不同的組合來使用。</p><p> JavaBean可分為兩種:一種是有用戶界面(UI,User Interface)的JavaBean;還有一種是沒有用戶界面,主要負(fù)責(zé)處理事務(wù)(如數(shù)據(jù)運(yùn)算,操縱數(shù)據(jù)庫)的JavaBean。JSP通常訪問的是后一種JavaBean。</p><p><b> 2 系統(tǒng)分析</b></p><p>
100、 2.1 系統(tǒng)功能概述</p><p> 系統(tǒng)主要完成兩大功能:面向非會員和會員的前臺功能和面向系統(tǒng)管理員的后臺功能。非會員即沒有在本網(wǎng)站進(jìn)行注冊的用戶,可以進(jìn)行歌曲的瀏覽跟點(diǎn)播。會員即在本網(wǎng)站進(jìn)行注冊過的用戶,在登錄之后可以進(jìn)行歌曲的下載、上傳、點(diǎn)播、分享。系統(tǒng)管理員即數(shù)據(jù)庫管理員,可以在后臺進(jìn)行數(shù)據(jù)庫的管理。</p><p> 2.1.1 系統(tǒng)前臺功能概述</p>
101、<p> 在前臺,系統(tǒng)主要提供以下服務(wù):</p><p> ?。?)非會員瀏覽和點(diǎn)播歌曲。</p><p> (2)會員瀏覽和點(diǎn)播歌曲外還可以下載和上傳自己喜歡的歌曲。</p><p> ?。?)會員可以管理自己的信息和自己上傳歌曲的信息。</p><p> 2.1.2 系統(tǒng)后臺功能概述</p><p>
102、; 在后臺,管理員可進(jìn)行如下操作:</p><p> ?。?)瀏覽和點(diǎn)播歌曲。</p><p> (2)管理歌曲信息,包括上傳、下載、修改和刪除歌曲。</p><p> ?。?)管理會員信息,包括增加、修改和刪除會員信息。</p><p><b> 2.2 可行性研究</b></p><p>
103、; 《在線音樂管理系統(tǒng)》主要從行業(yè)市場背景、資源供應(yīng)、建設(shè)規(guī)模、工藝路線、設(shè)備選型、人力定員、環(huán)境影響、資金籌措、財務(wù)能力等方面進(jìn)行充分的論證和可行性研究,從技術(shù)、經(jīng)濟(jì)、工程等方面進(jìn)行調(diào)查研究和分析比較,并對項(xiàng)目建成以后可能取得的財務(wù)、經(jīng)濟(jì)效益及社會環(huán)境影響進(jìn)行預(yù)測,從而提出該項(xiàng)目是否值得投資和如何進(jìn)行建設(shè)的咨詢意見,為項(xiàng)目決策提供依據(jù)的一種綜合性的系統(tǒng)分析方法?! 对诰€音樂管理系統(tǒng)》用于多方面的專業(yè)運(yùn)用,包括:用于向國家相關(guān)政府
104、部門申請立項(xiàng);向金融部門申請貸款的重要依據(jù);向有關(guān)主管部門申請專項(xiàng)資金的重要依據(jù);向證監(jiān)會申請股票上市的重要依據(jù);向國土部門、開發(fā)區(qū)、工業(yè)園申請用地的重要依據(jù);與項(xiàng)目有關(guān)的部門簽訂合作,協(xié)作合同或協(xié)議的依據(jù);進(jìn)口設(shè)備和對外談判的依據(jù);環(huán)境部門審查項(xiàng)目對環(huán)境影響的依據(jù)。 該網(wǎng)站的可行性分析包括以下幾個方面的內(nèi)容:</p><p> 2.2.1 經(jīng)濟(jì)可行性</p><p> 本系
105、統(tǒng)開發(fā)所用的軟件都是免費(fèi)的,極大地節(jié)省了資金。根據(jù)對網(wǎng)絡(luò)上各音樂網(wǎng)站的調(diào)查分析表明,現(xiàn)在隨著人民生活水平的不斷提高,家庭電腦的普及使得越來越多的人選擇利用網(wǎng)絡(luò)這一媒體來與世界交流,很多人有能力并且也愿意以網(wǎng)上娛樂的方式消費(fèi)。所以在這樣的背景下設(shè)計開發(fā)一個在線音樂點(diǎn)播系統(tǒng)在經(jīng)濟(jì)上是可行的。</p><p> 2.2.2 技術(shù)可行性</p><p> 技術(shù)可行性要考慮現(xiàn)有的技術(shù)條件是否能夠
106、順利完成開發(fā)工作,軟硬件配置是否滿足開發(fā)的需求等。本系統(tǒng)用的是JSP開發(fā)語言,調(diào)試相對簡單,當(dāng)前的計算機(jī)硬件配置也完全能滿足開發(fā)的需求,因此在技術(shù)上是絕對可行的。軟件方面:由于目前單機(jī)模式相對發(fā)展成熟,故軟件的開發(fā)平臺成熟可行,它們速度快、容量大、可靠性能高、價格低,完全能滿足系統(tǒng)的需求。</p><p> 本系統(tǒng)的開發(fā),是采用JSP編程語言,已無技術(shù)上的問題。而且本人經(jīng)過四年的大學(xué)學(xué)習(xí)對JSP技術(shù)進(jìn)行了深入的
107、學(xué)習(xí)。還系統(tǒng)學(xué)習(xí)了MySQL和SQL Server 2000數(shù)據(jù)庫,具備了軟件開發(fā)的系統(tǒng)知識,擁有網(wǎng)站開發(fā)的相關(guān)知識及經(jīng)驗(yàn)。設(shè)計開發(fā)一個在線音樂點(diǎn)播系統(tǒng)在技術(shù)上是可行的。</p><p> 2.2.3 法律可行性</p><p> ?。?)所有技術(shù)資料都為合法。</p><p> ?。?)開發(fā)過程中不存在知識產(chǎn)權(quán)問題。</p><p>
108、(3)未抄襲任何系統(tǒng),不存在侵犯版權(quán)問題。</p><p> (4)開發(fā)過程中未涉及任何法律責(zé)任。</p><p> 綜上所述,本系統(tǒng)的開發(fā)從技術(shù)上、從經(jīng)濟(jì)上、從法律上等都是完全可靠的。</p><p><b> 2.3 需求分析</b></p><p> 在系統(tǒng)功能概述中已經(jīng)粗略的研究了該項(xiàng)目的主要功能,可行性
109、研究中分析了開發(fā)平臺及本網(wǎng)站的可行性,但為了準(zhǔn)確的確定目標(biāo)系統(tǒng)必須做什么,了解用戶的明確需求,在充分研究先有的在線音樂管理系統(tǒng)的基礎(chǔ)上,進(jìn)一步明確了網(wǎng)站的功能需求。</p><p> 音樂網(wǎng)站是網(wǎng)絡(luò)音樂的發(fā)展平臺,過去,音樂網(wǎng)站功能較為單一,但隨著網(wǎng)絡(luò)技術(shù)的發(fā)展,用戶對音樂網(wǎng)站的要求逐漸提高,音樂網(wǎng)站由此也逐漸出現(xiàn)了更多采用較為優(yōu)雅的開發(fā)工具來設(shè)計的音樂網(wǎng)站,在制作之前,要明確網(wǎng)站能做些什么事情,也就是所謂的需
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 在線音樂管理系統(tǒng)畢業(yè)論文
- 畢業(yè)論文范文——基于ios的在線音樂播放系統(tǒng)的開發(fā)
- 畢業(yè)論文范文——基于ios的在線音樂播放系統(tǒng)的開發(fā)
- 在線音樂播放系統(tǒng)畢業(yè)設(shè)計
- 畢業(yè)論文--android在線音樂播放器設(shè)計與實(shí)現(xiàn)
- 基于web的在線音樂網(wǎng)站設(shè)計【畢業(yè)論文】
- 在線音樂網(wǎng)站論文
- 基于android平臺的在線音樂客戶端設(shè)計與實(shí)現(xiàn)-畢業(yè)論文
- jsp實(shí)現(xiàn)在線音樂播放系統(tǒng)
- 在線音樂寡頭割據(jù)
- 在線音樂點(diǎn)播系統(tǒng)的設(shè)計與實(shí)現(xiàn)畢業(yè)設(shè)計
- 畢業(yè)論文---基于jsp的在線畢業(yè)論文管理系統(tǒng)
- hrms在線管理系統(tǒng)畢業(yè)論文
- 在線作業(yè)批改管理系統(tǒng) 畢業(yè)論文
- hrms在線管理系統(tǒng)畢業(yè)論文
- 基于jsp在線音樂播放系統(tǒng)畢業(yè)設(shè)計外文文獻(xiàn)及翻譯
- 在線音樂記譜系統(tǒng)的設(shè)計與實(shí)現(xiàn).pdf
- 在線音樂哼唱檢索系統(tǒng)的算法與實(shí)現(xiàn).pdf
- 校園在線音樂平臺資源管理系統(tǒng)設(shè)計與實(shí)現(xiàn).pdf
- 畢業(yè)論文-在線購物系統(tǒng)
評論
0/150
提交評論