2023年全國(guó)碩士研究生考試考研英語(yǔ)一試題真題(含答案詳解+作文范文)_第1頁(yè)
已閱讀1頁(yè),還剩18頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、<p><b>  目 錄</b></p><p><b>  摘   要2</b></p><p>  第一章  緒  論3</p><p>  1.1 數(shù)據(jù)庫(kù)技術(shù)3</p><p>  1.1.1 數(shù)據(jù)庫(kù)體系結(jié)構(gòu)3<

2、/p><p>  1.1.2 數(shù)據(jù)庫(kù)管理信息系統(tǒng)(DBMS)3</p><p>  1.2 公交查詢系統(tǒng)4</p><p>  1.2.1 計(jì)算機(jī)網(wǎng)絡(luò)4</p><p>  1.2.2 系統(tǒng)功能4</p><p>  1.2.3 系統(tǒng)運(yùn)行環(huán)境4</p><p>

3、;  1.2.4 系統(tǒng)開發(fā)工具5</p><p>  1.2.5 現(xiàn)狀與前景5</p><p>  1.3 本文所作的工作5</p><p>  第二章 基于Eclispe平臺(tái)下的開發(fā)技術(shù)6</p><p>  2.1 B/S結(jié)構(gòu)介紹6</p><p>  2.2 Java程序框架7&l

4、t;/p><p>  2.3 B/S架構(gòu)具備極大的優(yōu)越性7</p><p>  第三章  公交查詢系統(tǒng)設(shè)計(jì)分析8</p><p>  3.1應(yīng)用需求分析8</p><p>  3.2 系統(tǒng)功能模塊劃分8</p><p>  3.3 系統(tǒng)數(shù)據(jù)庫(kù)設(shè)計(jì)11</p><p> 

5、 3.3.1概念設(shè)計(jì)11</p><p>  3.3.2 邏輯設(shè)計(jì)13</p><p>  第四章  公交查詢系統(tǒng)設(shè)計(jì)分析15</p><p>  4.1 查詢模塊的功能實(shí)現(xiàn)16</p><p>  4.2 管理更新的功能實(shí)現(xiàn)18</p><p>  4.3 公交線路管

6、理19</p><p><b>  結(jié)束語(yǔ)22</b></p><p><b>  致 謝23</b></p><p><b>  摘   要</b></p><p>  如今計(jì)算機(jī)網(wǎng)絡(luò)發(fā)展非常迅速,時(shí)間的重要性對(duì)于人們來(lái)說(shuō)不言而喻,人們出行越來(lái)越注重

7、時(shí)間的節(jié)約,城市公交已經(jīng)成為出行的一種主要的方式,本文結(jié)合公交運(yùn)行的實(shí)際來(lái)對(duì)公交查詢信息系統(tǒng)進(jìn)行可行性研究,通過(guò)詳實(shí)的問題定義與需求分析并且進(jìn)行了合理的設(shè)計(jì),提出了在B/S模式下的三層體系結(jié)構(gòu),應(yīng)用了當(dāng)前最流行的Eclispe開發(fā)環(huán)境,后臺(tái)采用了以目前最穩(wěn)定的SQL Server2005數(shù)據(jù)庫(kù)為開發(fā)平臺(tái)。目前,該信息系統(tǒng)已經(jīng)完成了模塊的需求分析、數(shù)據(jù)庫(kù)設(shè)計(jì)以及應(yīng)用程序設(shè)計(jì)的工作,并且主要模塊運(yùn)行有效、穩(wěn)定。該系統(tǒng)可以幫助查詢?nèi)藛T找到能最

8、快到達(dá)目的地,并且節(jié)約費(fèi)用。通過(guò)瀏覽器查詢,通過(guò)計(jì)算機(jī)網(wǎng)絡(luò)全面聯(lián)網(wǎng),實(shí)現(xiàn)中心控制、自動(dòng)更新、更多的查詢方式、和GIS系統(tǒng)的互聯(lián)互通等等更多更強(qiáng)大的功能。從這方面來(lái)說(shuō),此系統(tǒng)具有美好的應(yīng)用前景。</p><p>  關(guān)鍵詞:管理信息系統(tǒng),B/S結(jié)構(gòu),數(shù)據(jù)庫(kù),WEB服務(wù)器,JSP</p><p><b>  第一章  緒  論</b></p>

9、;<p>  數(shù)據(jù)庫(kù)技術(shù)作為數(shù)據(jù)管理技術(shù),是計(jì)算機(jī)軟件領(lǐng)域的一個(gè)重要分支,產(chǎn)生于60年代末?,F(xiàn)已形成相當(dāng)規(guī)模的理論體系和實(shí)用技術(shù)。優(yōu)秀的數(shù)據(jù)庫(kù)設(shè)計(jì)是應(yīng)用成功的基石。萬(wàn)萬(wàn)丈高樓平地起,數(shù)據(jù)庫(kù)設(shè)計(jì)如同高樓的基石,是開發(fā)高品質(zhì)應(yīng)用的前提。</p><p><b>  1.1 數(shù)據(jù)庫(kù)技術(shù)</b></p><p>  1.1.1 數(shù)據(jù)庫(kù)體系結(jié)構(gòu)</

10、p><p>  數(shù)據(jù)的體系結(jié)構(gòu)分成三級(jí):內(nèi)部級(jí)(Internal),概念級(jí)(Conceptual)和外部級(jí)(External)。這個(gè)三級(jí)結(jié)構(gòu)有時(shí)也稱為“三級(jí)模式結(jié)構(gòu)”。1)外部級(jí):最接近用戶,是單個(gè)用戶所能看到的數(shù)據(jù)特性。單個(gè)用戶使用的數(shù)據(jù)視圖的描述稱為“外模式”。2)概念級(jí):涉及到所有用戶的數(shù)據(jù)定義、是全局的數(shù)據(jù)視圖。全局視圖的描述稱為“概念模式”。3)內(nèi)部

11、級(jí):最接近于物理存儲(chǔ)設(shè)備,涉及到實(shí)際數(shù)據(jù)存儲(chǔ)的結(jié)構(gòu)物理存儲(chǔ)數(shù)據(jù)視圖的描述稱為“內(nèi)模式”。數(shù)據(jù)庫(kù)的三級(jí)模式結(jié)構(gòu)是數(shù)據(jù)的三個(gè)抽象級(jí)別。它把數(shù)據(jù)的具體組織留給DBMS去做,用戶只要抽象地處理數(shù)據(jù),而不必關(guān)心數(shù)據(jù)在計(jì)算機(jī)中的表示和存儲(chǔ),這樣就減輕了用戶使用系統(tǒng)的負(fù)擔(dān)。</p><p>  1.1.2 數(shù)據(jù)庫(kù)管理信息系統(tǒng)(DBMS)</p><p>  數(shù)據(jù)庫(kù)管理系

12、統(tǒng)(DBMS)是指數(shù)據(jù)庫(kù)系統(tǒng)中管理數(shù)據(jù)的軟件系統(tǒng)。DBMS是數(shù)據(jù)庫(kù)系統(tǒng)的核心組成部分。對(duì)數(shù)據(jù)庫(kù)的一切操作,包括定義、查詢、更新及各種控制,都是通過(guò)DBMS進(jìn)行的。在不同的計(jì)算機(jī)系統(tǒng)中,由于缺乏統(tǒng)一的標(biāo)準(zhǔn),即使同種數(shù)據(jù)模型的DBMS,它們?cè)谟脩艚涌?、系統(tǒng)功能方面也常常是不相同的。用戶對(duì)數(shù)據(jù)庫(kù)進(jìn)行操作,是由DBMS把操作從應(yīng)用程序帶到外部級(jí)、概念級(jí)、再導(dǎo)向內(nèi)部級(jí),進(jìn)而操作存儲(chǔ)器中的數(shù)據(jù)。DBMS的主要目標(biāo)

13、,是使數(shù)據(jù)作為一種可管理的資源處理。DBMS的主要功能為:1) 數(shù)據(jù)庫(kù)定義功能:DBMS提供數(shù)據(jù)定義語(yǔ)言(DDL)定義數(shù)據(jù)庫(kù)的三級(jí)結(jié)構(gòu),包括外模式、概念模式、內(nèi)模式及基相互之間的映象,定義數(shù)據(jù)的完整性、安全控制等約束。因此,在DBMS中應(yīng)包括DDL的編譯程序。2)數(shù)據(jù)庫(kù)的操縱功能:DBMS提供數(shù)據(jù)操縱語(yǔ)言(DML)實(shí)現(xiàn)對(duì)數(shù)據(jù)庫(kù)中數(shù)據(jù)的操作?;镜臄?shù)據(jù)操作分成兩

14、類四種:檢索(查詢)、更新(插入、刪除、修改)3)數(shù)據(jù)庫(kù)的保護(hù)功能:數(shù)據(jù)庫(kù)中的數(shù)</p><p>  4)數(shù)據(jù)庫(kù)的恢復(fù):在數(shù)據(jù)庫(kù)被破壞或數(shù)據(jù)不正確時(shí),系統(tǒng)有能力把數(shù)據(jù)庫(kù)恢復(fù)到正確的狀態(tài)。5)數(shù)據(jù)庫(kù)的并發(fā)控制:DBMS的并發(fā)控制子系統(tǒng)能防止錯(cuò)誤發(fā)生,正確處理好多用戶、多任務(wù)環(huán)境下的并發(fā)操作。6)數(shù)據(jù)庫(kù)的完整性控制:保證數(shù)據(jù)庫(kù)

15、中數(shù)據(jù)及語(yǔ)義的正確性和有效性,防止任何對(duì)數(shù)據(jù)造成錯(cuò)誤的操作。7)數(shù)據(jù)庫(kù)的安全性控制:防止未經(jīng)授權(quán)的用戶蓄謀或無(wú)意地存取數(shù)據(jù)庫(kù)中的數(shù)據(jù),以免數(shù)據(jù)的泄露、更改或破壞。8)數(shù)據(jù)庫(kù)的存儲(chǔ)管理:把各種DML語(yǔ)句轉(zhuǎn)換成低層的文件系統(tǒng)命令,起到數(shù)據(jù)的存儲(chǔ)、檢索和更新的作用。9)數(shù)據(jù)庫(kù)的維護(hù)功能:它有許多實(shí)用程序提供給數(shù)據(jù)庫(kù)管理員:數(shù)據(jù)裝載程序

16、備份程序文件重組織程序性能監(jiān)控程序10)數(shù)據(jù)字典:數(shù)據(jù)庫(kù)系統(tǒng)中存放三級(jí)結(jié)構(gòu)定義的數(shù)據(jù)庫(kù)稱為數(shù)據(jù)字典(DD)。對(duì)數(shù)據(jù)庫(kù)的操作都要通過(guò)訪問DD才能實(shí)現(xiàn),通常DD中還存放數(shù)據(jù)庫(kù)運(yùn)行時(shí)的統(tǒng)計(jì)信息。</p><p>  1.2 公交查詢系統(tǒng) </p><p>  1.2.

17、1 計(jì)算機(jī)網(wǎng)絡(luò) </p><p>  計(jì)算機(jī)網(wǎng)絡(luò)是指將多臺(tái)具有獨(dú)立功能的計(jì)算機(jī),通過(guò)通信線路和通信設(shè)備連接起來(lái),在網(wǎng)絡(luò)軟件的支持下實(shí)現(xiàn)數(shù)據(jù)通信和資源共享的計(jì)算機(jī)系統(tǒng)。計(jì)算機(jī)網(wǎng)絡(luò)的規(guī)模有大有小,大的可以覆蓋全球,小的僅局限于一個(gè)辦公室?,F(xiàn)在一般按照網(wǎng)絡(luò)覆蓋的地理范圍將計(jì)算機(jī)網(wǎng)絡(luò)分為三類:局域網(wǎng)(LAN)、城域網(wǎng)(MAN)、廣域網(wǎng)(WAN)。</p><p>  1.2.2 系統(tǒng)

18、功能</p><p>  1)基于瀏覽器(B/S模式)的公交線路分類查詢;</p><p>  2)數(shù)據(jù)的錄入、修改、添加、刪除。</p><p>  1.2.3 系統(tǒng)運(yùn)行環(huán)境該系統(tǒng)采用Browser/Server模式進(jìn)行設(shè)計(jì): 在服務(wù)器上運(yùn)行Web發(fā)布服務(wù)器、數(shù)據(jù)庫(kù)程序,服務(wù)器操作系統(tǒng)為Win

19、dowsNT/2000/XP/2003 server,客戶機(jī)操作為Windows9×/ NT/2000/XP/2003,其上運(yùn)行瀏覽器程序,服務(wù)器和客戶機(jī)可為同一設(shè)備。</p><p>  1.2.4 系統(tǒng)開發(fā)工具該系統(tǒng)采用JDK Java環(huán)境進(jìn)行開發(fā),數(shù)據(jù)庫(kù)服務(wù)器為SQLServer2000,WEB發(fā)布服務(wù)器為Tomcat Server;客戶端

20、使用瀏覽器運(yùn)行程序,整個(gè)系統(tǒng)調(diào)試成功。</p><p>  1.2.5 現(xiàn)狀與前景 </p><p>  公交查詢系統(tǒng)現(xiàn)狀分析:鑒于中國(guó)目前的經(jīng)濟(jì)發(fā)展?fàn)顩r,中國(guó)人出行還是以公交車為主,所以每個(gè)城市的公交系統(tǒng)都比較龐大發(fā)達(dá)。公交查詢系統(tǒng)是近兩年出現(xiàn)的新生事物,每個(gè)城市的發(fā)展?fàn)顩r也是良莠不齊。目前的公交查詢系統(tǒng),基本上具備一下功能:采用車站站點(diǎn)查詢、車次查詢、路線分析查詢?nèi)N查詢形式,不僅能夠

21、查詢到各條線路的起停站點(diǎn),同時(shí)還能夠分析出換乘車輛情況。 </p><p>  公交查詢系統(tǒng)的發(fā)展前景:未來(lái)的公交查詢系統(tǒng),將是基于B/S架構(gòu),通過(guò)瀏覽器查詢,通過(guò)計(jì)算機(jī)網(wǎng)絡(luò)全面聯(lián)網(wǎng),實(shí)現(xiàn)中心控制、自動(dòng)更新、更多的查詢方式、和GIS系統(tǒng)的互聯(lián)互通等等更多更強(qiáng)大的功能。</p><p>  1.3 本文所作的工作</p><p>  數(shù)據(jù)的三級(jí)模式

22、結(jié)構(gòu):內(nèi)部級(jí),外部級(jí)和概念級(jí)。數(shù)據(jù)庫(kù)系統(tǒng)的系統(tǒng)結(jié)構(gòu)保證了數(shù)據(jù)庫(kù)系統(tǒng)中能夠具有較高的邏輯獨(dú)立性和物理獨(dú)立性。數(shù)據(jù)庫(kù)管理系統(tǒng)(DBMS)是指數(shù)據(jù)庫(kù)系統(tǒng)中管理數(shù)據(jù)的軟件系統(tǒng)。DBMS是數(shù)據(jù)庫(kù)系統(tǒng)的核心組成部分。對(duì)數(shù)據(jù)庫(kù)的一切操作,包括定義、操縱、保護(hù)恢復(fù)及并發(fā)性,安全性和完整性等各種控制以及存儲(chǔ)和維護(hù)等功能,是通過(guò)DBMS進(jìn)行的。 本文首先介紹了城市公交查詢系統(tǒng)的應(yīng)用背景、開發(fā)環(huán)境以及選用的開發(fā)工具與數(shù)據(jù)庫(kù)的關(guān)系,闡明了計(jì)算機(jī)互聯(lián)網(wǎng)絡(luò)的概念

23、。并對(duì)數(shù)據(jù)庫(kù)的體系結(jié)構(gòu)、DBMS進(jìn)行了介紹;介紹關(guān)系型數(shù)據(jù)庫(kù)的基本概念,著重說(shuō)明了幾個(gè)關(guān)鍵概念的定義;然后對(duì)SQL語(yǔ)言作了一個(gè)介紹說(shuō)明;從特點(diǎn)和功能入手,介紹Java、JSP;并且介紹了B/S模式的概念、特點(diǎn);用軟件工程的方法分析城市公交查詢系統(tǒng),對(duì)整個(gè)系統(tǒng)進(jìn)行了需求分析、功能模塊劃分,并通過(guò)ER圖對(duì)數(shù)據(jù)庫(kù)進(jìn)行概念設(shè)計(jì);對(duì)城市公交查詢系統(tǒng)的具體設(shè)計(jì),描述了查詢、錄入模塊的實(shí)現(xiàn)過(guò)程。 最后,在結(jié)束語(yǔ)的總結(jié)部分指出了系統(tǒng)的亮點(diǎn)以及不足之處,

24、簡(jiǎn)單介紹了自己開發(fā)過(guò)程中的體會(huì)與心得:在摸索中實(shí)踐,在實(shí)踐中摸索。</p><p>  第二章 基于Eclispe平臺(tái)下的開發(fā)技術(shù)</p><p>  Java是Sun Microsystems于1995年推出的高級(jí)編程語(yǔ)言,Java 領(lǐng)域的JavaSE、JavaEE技術(shù)已發(fā)展成為同C#和.NET平分天下的應(yīng)用軟件開發(fā)平臺(tái)和技術(shù)。</p><p>  在

25、Sun 正式發(fā)布 JSP(JavaServer Pages) 之后,這種新的 Web 應(yīng)用開發(fā)技術(shù)很快引起了人們的關(guān)注。 JSP 為創(chuàng)建高度動(dòng)態(tài)的 Web 應(yīng)用提供了一個(gè)獨(dú)特的開發(fā)環(huán)境。按照 Sun 的說(shuō)法, JSP 能夠適應(yīng)市場(chǎng)上包括 Apache WebServer,IIS4.0 在內(nèi)的 85% 的服務(wù)器產(chǎn)品。</p><p>  當(dāng)今比較流行的軟件技術(shù)研發(fā)模式是C/S和B/S的體系結(jié)構(gòu)。C/S(Client

26、/Server)結(jié)構(gòu),即客戶機(jī)和服務(wù)器結(jié)構(gòu)。通過(guò)C/S可以充分利用兩端硬件環(huán)境的優(yōu)勢(shì),將任務(wù)合理分配到Client端和Server端來(lái)實(shí)現(xiàn),降低了系統(tǒng)的通訊開銷。</p><p>  Eclipse 這樣功能完整且成熟的開發(fā)環(huán)境,是由藍(lán)色巨人IBM 所釋出。IBM 花了4 千萬(wàn)美金來(lái)開發(fā)這個(gè)IDE(Integrated Development Environment)。第一版1.0 在2001 年11 月釋出,隨

27、后逐漸受到歡迎。Eclipse已經(jīng)成為開放原始碼計(jì)劃(Open Source Project),大部分的開發(fā)扔然掌握在IBM手中,但是有一部份由eclipse.org的軟件聯(lián)盟主導(dǎo)。</p><p>  2.1 B/S結(jié)構(gòu)介紹</p><p>  B/S(Browser/Server)結(jié)構(gòu)即瀏覽器和服務(wù)器結(jié)構(gòu)。它是隨著Internet技術(shù)的興起而對(duì)C/S結(jié)構(gòu)的一種變化或者改進(jìn)的結(jié)構(gòu)。在這種

28、結(jié)構(gòu)下,用戶工作界面通過(guò)WWW瀏覽器來(lái)實(shí)現(xiàn),極少部分事務(wù)邏輯在前端(Browser)實(shí)現(xiàn),主要事務(wù)邏輯在服務(wù)器端(Server)實(shí)現(xiàn)。大大簡(jiǎn)化了客戶端電腦載荷,減少了系統(tǒng)維護(hù)與升級(jí)的成本和工作量,降低了用戶的總體成本。B/S方式可以形成所謂三層以上的結(jié)構(gòu)。B/S結(jié)構(gòu)是一次到位開發(fā),能實(shí)現(xiàn)不同人員,從不同地點(diǎn),以不同的接入方式訪問和操作共同的數(shù)據(jù)庫(kù);它能有效地保護(hù)數(shù)據(jù)平臺(tái)和管理訪問權(quán)限,服務(wù)器數(shù)據(jù)庫(kù)也很安全。特別是在JAVA這樣的跨平臺(tái)語(yǔ)

29、言出現(xiàn)之后,B/S架構(gòu)管理軟件更為方便、快捷、高效。B/S工作機(jī)制如圖3-1所示:</p><p>  傳統(tǒng)的C/S架構(gòu)(客戶機(jī)/服務(wù)器,Client/Server)方式中,業(yè)務(wù)邏輯位于客戶端,每完成一項(xiàng)事務(wù),都要頻繁地訪問數(shù)據(jù)庫(kù),使得網(wǎng)絡(luò)上數(shù)據(jù)流量非常大,對(duì)于慢速連接的用戶,甚至無(wú)法使用。</p><p>  圖 2.1 B/S工作機(jī)制</p><p>  2.

30、2 Java程序框架</p><p>  為彌補(bǔ)上述C/S架構(gòu)的缺陷,人們發(fā)展出了三層或多層架構(gòu):客戶機(jī)—中間件(應(yīng)用服務(wù)器)—數(shù)據(jù)庫(kù)服務(wù)器(Client—Middle ware—Database Server)。在這種架構(gòu)中,業(yè)務(wù)邏輯放置于中間件服務(wù)器上,大量的數(shù)據(jù)流也位于中間件和數(shù)據(jù)庫(kù)之間,而客戶機(jī)只是簡(jiǎn)單地發(fā)出請(qǐng)求,中間件接受請(qǐng)求后進(jìn)行事務(wù)處理并將處理的結(jié)果返回給客戶機(jī),這一類型的客戶機(jī)也稱之為“廋客戶”。

31、B/S架構(gòu)實(shí)際上是三層架構(gòu)的一種,所不同的是客戶端就是目前幾乎每臺(tái)電腦中都有的網(wǎng)絡(luò)瀏覽器,而中間件則是Web應(yīng)用服務(wù)器。注意到主要的業(yè)務(wù)邏輯均由位于Web應(yīng)用服務(wù)器上的Servlet和JSP程序或EJB來(lái)處理。</p><p>  2.3 B/S架構(gòu)具備極大的優(yōu)越性</p><p>  1)面向電子商務(wù)時(shí)代的技術(shù)</p><p>  將來(lái)所有的應(yīng)用系統(tǒng)幾乎都在互聯(lián)網(wǎng)

32、或企業(yè)內(nèi)部廣域網(wǎng)上運(yùn)行,發(fā)展電子商務(wù)成為企業(yè)不可避免的信息化道路。B/S架構(gòu)的軟件正是電子商務(wù)的基石,正是這類軟件使得移動(dòng)辦公和分布式協(xié)同工作真正成為現(xiàn)實(shí)。無(wú)論在世界的那個(gè)角落,只需要一臺(tái)可以聯(lián)網(wǎng)的設(shè)備(計(jì)算機(jī)、PDA甚至手機(jī))都可以方便地與客戶聯(lián)系和與他人協(xié)同工作。</p><p>  2)軟件操作、維護(hù)和升級(jí)方式的革命</p><p>  軟件系統(tǒng)的改進(jìn)和升級(jí)越來(lái)越頻繁,B/S架構(gòu)的產(chǎn)

33、品在維護(hù)和升級(jí)方面具備顯著的優(yōu)勢(shì)。無(wú)論用戶的規(guī)模有多大,有多少分支機(jī)構(gòu)都不會(huì)增加任何維護(hù)升級(jí)的工作量,所有的操作只對(duì)服務(wù)器進(jìn)行,通過(guò)遠(yuǎn)程連接服務(wù)器,異地的運(yùn)維人員甚至于可以做到遠(yuǎn)程維護(hù)和升級(jí),這對(duì)人力、時(shí)間、費(fèi)用的節(jié)省是相當(dāng)驚人的。所有的客戶端只是瀏覽器,所有的操作都和上網(wǎng)瀏覽網(wǎng)頁(yè)類似,使用者接受的培訓(xùn)也僅限于業(yè)務(wù)邏輯而無(wú)需將大量精力浪費(fèi)學(xué)習(xí)軟件操作上。</p><p>  第三章  公交查詢系統(tǒng)設(shè)計(jì)分

34、析</p><p>  根據(jù)數(shù)據(jù)庫(kù)系統(tǒng)生存期的設(shè)計(jì)方法,從數(shù)據(jù)庫(kù)應(yīng)用系統(tǒng)和開發(fā)的全過(guò)程來(lái)考慮將數(shù)據(jù)庫(kù)應(yīng)用系統(tǒng)設(shè)計(jì)分為以下幾個(gè)階段: </p><p>  1)規(guī)劃; </p><p>  2)需求分析; </p><p>  3)概念設(shè)計(jì); </p><p>  4)邏輯設(shè)計(jì); &l

35、t;/p><p><b>  5)物理設(shè)計(jì)</b></p><p>  3.1應(yīng)用需求分析 要設(shè)計(jì)一個(gè)良好的公交查詢系統(tǒng),就必須首先明確該應(yīng)用環(huán)境對(duì)系統(tǒng)的要求。公交查詢系統(tǒng)的應(yīng)用背景為:方便市民搭乘公交車出行;手動(dòng)(目前)、自動(dòng)(將來(lái))、及時(shí)更新查詢數(shù)據(jù)。因此,該系統(tǒng)需滿足以下幾方面需求:1)問題分析</p><p> ?。?)功能需

36、求:該模塊實(shí)現(xiàn)公交查詢功能。該模塊實(shí)現(xiàn)數(shù)據(jù)的錄入、修改、刪除功能。</p><p> ?。?)性能需求:系統(tǒng)的相應(yīng)時(shí)間不能超過(guò)10ms</p><p> ?。?)出錯(cuò)處理需求:當(dāng)輸入的信息不全,或格式不正確時(shí),提示出錯(cuò)信息。</p><p><b>  2)問題描述</b></p><p> ?。?)信息要求:可實(shí)現(xiàn)按起

37、點(diǎn)-中轉(zhuǎn)站-終點(diǎn)查詢查詢和按線路查詢兩種查詢方式。</p><p>  (2)處理要求:該模塊實(shí)現(xiàn)數(shù)據(jù)的錄入、修改、刪除功能。該模塊由公交站點(diǎn)管理與公交線路管理兩部分組成.</p><p>  (3)安全性與完整性要求。用戶進(jìn)入系統(tǒng)前必須登陸,輸入密碼,經(jīng)服務(wù)器確認(rèn)后放開進(jìn)入系統(tǒng)。(暫未實(shí)現(xiàn))</p><p>  3)數(shù)據(jù)的更新修改:</p

38、><p>  更新:系統(tǒng)允許管理員級(jí)別的用戶對(duì)數(shù)據(jù)進(jìn)行更新、修改并且存盤操作;編輯:系統(tǒng)允許管理員級(jí)別的用戶對(duì)數(shù)據(jù)進(jìn)行編輯、刪除的操作,保證現(xiàn)庫(kù)的真實(shí)性與實(shí)時(shí)性。4)打印輸出(暫未實(shí)現(xiàn)):系統(tǒng)可以將用戶查詢到的內(nèi)容動(dòng)態(tài)地生成報(bào)表,并打印輸出。</p><p>  3.2 系統(tǒng)功能模塊劃分</p><p>  公交查詢系統(tǒng)功能劃分模塊如下

39、:</p><p>  1)查詢系統(tǒng)模塊 該模塊實(shí)現(xiàn)公交查詢功能??蓪?shí)現(xiàn)按起點(diǎn)-中轉(zhuǎn)站-終點(diǎn)查詢查詢和按線路查詢兩種查詢方式。</p><p>  詳細(xì)設(shè)計(jì)視圖如圖3-1</p><p>  圖3-1查詢系統(tǒng)模塊</p><p>  2)錄入系統(tǒng)模塊 該模塊實(shí)現(xiàn)數(shù)據(jù)的錄入、修改、刪除功能。該模塊由公交站點(diǎn)管理與公交線路管理兩部分組成.詳細(xì)

40、設(shè)計(jì)視圖如圖3-2錄入系統(tǒng)模塊所示:</p><p>  圖3-2 錄入系統(tǒng)模塊</p><p>  2)信息輸入輸出模塊如圖3-3所示:</p><p>  圖3-3 信息輸入輸出模塊</p><p>  3.3 系統(tǒng)數(shù)據(jù)庫(kù)設(shè)計(jì)</p><p>  3.3.1概念設(shè)計(jì)

41、概念設(shè)計(jì)的目標(biāo)是產(chǎn)生反映城市公交查詢系統(tǒng)需求的數(shù)據(jù)庫(kù)概念結(jié)構(gòu),即概念模式。概念模式是獨(dú)立于數(shù)據(jù)庫(kù)邏輯結(jié)構(gòu),獨(dú)立于支持?jǐn)?shù)據(jù)庫(kù)的DBMS,不依賴于計(jì)算機(jī)系統(tǒng)的。1)ER模型ER模型是對(duì)現(xiàn)實(shí)世界的一種抽象。它的主要成分是實(shí)體、聯(lián)系和屬性。使用這三種成分,我們可以建立許多應(yīng)用環(huán)境的ER模型。2) ER模型的操作在利用ER模型進(jìn)行數(shù)

42、據(jù)庫(kù)概念設(shè)計(jì)的過(guò)程中,常常需要對(duì)ER圖進(jìn)行種種變換。這些變換又稱為ER模型的操作,包括實(shí)體類型、聯(lián)系類型和屬性的分裂、合并和增刪等等。3)利用ER方法的數(shù)據(jù)庫(kù)概念設(shè)計(jì)利用ER方法進(jìn)行數(shù)據(jù)庫(kù)的概念設(shè)計(jì),可以分成三步進(jìn)行:首先設(shè)計(jì)局部ER模式,然后把各局部ER模式綜合成一個(gè)全局ER模式,最后對(duì)全局ER模式進(jìn)行優(yōu)化,得到最終的ER模式,即概念模式。</p><

43、;p>  設(shè)計(jì)局部的ER模式通常,一個(gè)數(shù)據(jù)庫(kù)系統(tǒng)都是為多個(gè)不同用戶服務(wù)的。各個(gè)用戶對(duì)數(shù)據(jù)的觀點(diǎn)可能不一樣,信息處理需求也可能不同。在設(shè)計(jì)數(shù)據(jù)庫(kù)概念結(jié)構(gòu)時(shí),為了更好地模擬現(xiàn)實(shí)世界,一個(gè)有效的策略是“分而治之”,即先分別考慮各個(gè)用戶的信息需求,形成局部概念結(jié)構(gòu),然后再綜合成全局結(jié)構(gòu)。在ER方法中,局部概念結(jié)構(gòu)又稱為局部ER模式,其圖形表示稱為ER圖(如圖4-5)。實(shí)體和屬性的定義如下:

44、站點(diǎn)(站點(diǎn)編號(hào),站點(diǎn)名稱,站點(diǎn)類別)線路(線路編號(hào),始發(fā)時(shí)間,終發(fā)時(shí)間,備注)線路站點(diǎn)對(duì)應(yīng)(線路編號(hào),站點(diǎn)名稱)</p><p>  圖3-4實(shí)體和屬性用例</p><p><b>  4)聯(lián)系定義</b></p><p>  ER模型的“聯(lián)系”用于刻畫實(shí)體之間的關(guān)聯(lián)。一種完整的方式是對(duì)局部結(jié)構(gòu)

45、中任意兩個(gè)實(shí)體類型,依據(jù)需求分析的結(jié)果,考察局部結(jié)構(gòu)中任意兩個(gè)實(shí)體類型之間是否存在聯(lián)系。若有聯(lián)系,進(jìn)一步確定是1:N,M:N,還是1:1等。還要考察一個(gè)實(shí)體類型內(nèi)部是否存在聯(lián)系,兩個(gè)實(shí)體類型之間是否存在聯(lián)系,多個(gè)實(shí)體類型之間是否存在聯(lián)系,等等。</p><p>  圖3-5 E/R圖的表示</p><p>  5)設(shè)計(jì)全局ER模式</p><p>  所有局部E

46、R模式都設(shè)計(jì)好了后,接下來(lái)就是把它們綜合成單一的全局概念結(jié)構(gòu)。全局概念結(jié)構(gòu)不僅要支持所有局部ER模式,而且必須合理地表示一個(gè)完整、一致的數(shù)據(jù)庫(kù)概念結(jié)構(gòu)。(1)確定公共實(shí)體類型 為了給多個(gè)局部ER模式的合并提供開始合并的基礎(chǔ),首先要確定各局部結(jié)構(gòu)中的公共實(shí)體類型。在這一步中我們僅根據(jù)實(shí)體類型名和鍵枕認(rèn)定公共實(shí)體類型。一般把同名實(shí)體類型作為公共實(shí)體類型的一類候選,把具有相同鍵的實(shí)體類型作為公

47、共實(shí)體類型的另一類候選。(2)局部ER模式的合并合并的原則是:首先進(jìn)行兩兩合并;先和合并那些現(xiàn)實(shí)世界中有聯(lián)系的局部結(jié)構(gòu);合并從公共實(shí)體類型開始,最后再加入獨(dú)立的局部結(jié)構(gòu)。 (3)消除沖突 沖突分為三類:屬性沖突、結(jié)構(gòu)沖突、命名沖突。 設(shè)計(jì)全局ER模式的目的不在于把若干局部ER模式形式上合并為一個(gè)ER模式,而在于消除沖突,使之成為能夠被所有用

48、戶共同理解和接受的同一的概念模型。 (4)全局ER模式的優(yōu)化</p><p>  3.3.2 邏輯設(shè)計(jì) </p><p>  本系統(tǒng)初步定義了4個(gè)視圖,具體視圖設(shè)計(jì)及實(shí)例如下:</p><p>  1)公交車信息的視圖設(shè)計(jì)(如圖4-6):</p><p><b>  用途:輸入公

49、交車號(hào)</b></p><p>  輸出對(duì)應(yīng)公交車所有信息</p><p>  圖3-6 公交車信息的視圖設(shè)計(jì)</p><p>  2)公交車信息實(shí)例(如圖4-7):</p><p>  圖3-7 公交車信息實(shí)例</p><p>  車站信息視圖設(shè)計(jì)(如圖4-8):</p><p>

50、;<b>  輸入: 車站號(hào)</b></p><p>  輸出: 對(duì)應(yīng)車站所有信息</p><p>  圖3-8車站信息視圖設(shè)計(jì)</p><p>  車站信息實(shí)例(如圖3-9)</p><p>  圖3-9 車站信息實(shí)例</p><p>  3)公交車――站點(diǎn)查詢視圖(如圖3-10):</

51、p><p><b>  輸入:公交車號(hào)</b></p><p>  輸出:公交車經(jīng)過(guò)的所有站點(diǎn)</p><p>  圖3-10 公交車――站點(diǎn)查詢視圖</p><p>  4)站點(diǎn)――公交車查詢視圖(如圖4-11):</p><p><b>  輸入: 經(jīng)過(guò)站點(diǎn)</b><

52、/p><p>  輸出: 對(duì)應(yīng)公交車號(hào)</p><p>  圖3-11 站點(diǎn)――公交車查詢視圖</p><p>  第四章  公交查詢系統(tǒng)設(shè)計(jì)分析</p><p>  4.1 查詢模塊的功能實(shí)現(xiàn)</p><p>  公交查詢模塊是用戶與系統(tǒng)進(jìn)行交互的直接媒介。除了要完成用戶的請(qǐng)求外,更需要從用戶的

53、角度出發(fā),以人為本。設(shè)計(jì)出人性化的交互頁(yè)面。</p><p>  查詢模塊主要有文本框和提交按鈕組合而成。從實(shí)際出發(fā)對(duì)于公交查詢系統(tǒng)而言,用戶輸入始發(fā)站,終點(diǎn)站后提交請(qǐng)求,后臺(tái)數(shù)據(jù)庫(kù)查詢系統(tǒng)為系統(tǒng)列出符合條件的公交班次。當(dāng)用戶發(fā)現(xiàn)填寫有誤時(shí),點(diǎn)擊重填按鈕,文本框自動(dòng)清空。當(dāng)然,用戶還可以選擇第二種查詢方式:選擇要查詢的線路,提交后用戶自動(dòng)列出該路公交車所路經(jīng)的站點(diǎn)。</p><p>  公

54、交查詢系統(tǒng)運(yùn)行界面如圖4-1所示:</p><p>  圖4-1 公交查詢系統(tǒng)運(yùn)行界面</p><p><b>  關(guān)鍵代碼如下:</b></p><p>  connection = DataConnectionManager.getInstance().getConnection();</p><p><b&g

55、t;  try {</b></p><p>  routes = route_Manager.selectes(connection);</p><p>  } catch (Exception e) {</p><p><b>  throw e;</b></p><p>  } finally { <

56、;/p><p>  if (connection != null) {</p><p>  connection.close();</p><p>  connection = null;</p><p><b>  }</b></p><p><b>  }</b></p

57、><p>  <SCRIPT language=JAVASCRIPT type=text/javascript></p><p><b>  <!--</b></p><p>  function loginSubmit(theObj)</p><p><b>  {</b></

58、p><p>  if (theObj.fromStep.value == "" && theObj.toStep.value != "")</p><p><b>  {</b></p><p>  alert("始發(fā)站不能為空");</p><p>

59、;  theObj.fromStep.focus();</p><p>  return false;</p><p><b>  }</b></p><p>  else if (theObj.fromStep.value != "" && theObj.toStep.value == "&quo

60、t;)</p><p><b>  {</b></p><p>  alert("終點(diǎn)站不能為空");</p><p>  theObj.toStep.focus();</p><p>  return false;</p><p><b>  }</b>

61、</p><p>  else if (theObj.fromStep.value == "" && theObj.toStep.value == "")</p><p><b>  {</b></p><p>  alert("始發(fā)站和終點(diǎn)站不能為空");</p

62、><p>  theObj.fromStep.focus();</p><p>  return false;</p><p><b>  }</b></p><p>  return true;</p><p><b>  }</b></p><p>&

63、lt;b>  // --></b></p><p><b>  </SCRIPT></b></p><p>  <link rel="STYLESHEET" type="text/css" href="../css/all.css"></p>&l

64、t;p>  <style type="text/css"></p><p><b>  <!--</b></p><p>  body { font-size: 9pt}</p><p>  table { font-size: 9pt}</p><p>  a:activ

65、e { font-size: 9pt; color: #000000;}</p><p>  A:hover { font-size: 9pt; COLOR: #000000; TEXT-DECORATION: none}</p><p>  a:link { font-size: 9pt; color: #000000;}</p><p>  a:visite

66、d { font-size: 9pt; color: #000000;}</p><p><b>  --></b></p><p>  4.2 管理更新的功能實(shí)現(xiàn)</p><p>  管理更新功能是針對(duì)系統(tǒng)維護(hù)而設(shè)計(jì)的。隨著城市現(xiàn)代化的發(fā)展,公路部分線路也會(huì)有相應(yīng)的變化。為使本系統(tǒng)能跟上發(fā)展,與現(xiàn)實(shí)保持同步,管理更新功能也是

67、舉足輕重的。其中包括站點(diǎn)管理和線路管理。</p><p>  在數(shù)據(jù)庫(kù)中每條公交線路都有其相應(yīng)的站點(diǎn),沒路公交車都有其相應(yīng)的公交線路。當(dāng)現(xiàn)實(shí)中的某個(gè)因素改變時(shí),數(shù)據(jù)庫(kù)中的記錄也要有相應(yīng)同步的變化。站點(diǎn)管理就是對(duì)路線上的站點(diǎn)進(jìn)行相應(yīng)的更新。輸入相應(yīng)的站點(diǎn)序號(hào),站點(diǎn)名稱和類型后點(diǎn)擊保存系統(tǒng)將數(shù)據(jù)錄入數(shù)據(jù)庫(kù)當(dāng)中?,F(xiàn)實(shí)中的某些站點(diǎn)更改時(shí)在站點(diǎn)列表中點(diǎn)擊刪除即可。站點(diǎn)管理界面如圖5.2.1所示:</p>&l

68、t;p>  圖4-2公交站點(diǎn)管理截圖</p><p>  公交站點(diǎn)管理主要代碼如下:</p><p>  <jsp:useBean class="com.lanyuer.util.JspParamReader" id="reader scope="request"" </p><p><b

69、>  /></b></p><p><b>  <%</b></p><p>  reader.setRequest(request);</p><p>  List stopsets = null;</p><p>  Connection connection;</p>&

70、lt;p>  com.lanyuer.route.stopset_Manager stopset_Manager = </p><p>  com.lanyuer.route.stopset_Manager.getInstance();</p><p>  com.lanyuer.route.stopset stopset1 = null;</p><p>

71、  connection = DataConnectionManager.getInstance().getConnection();</p><p><b>  try {</b></p><p>  if (reader.getString("delRoute_Pk","").length() > 0) </p&

72、gt;<p>  stopset_Manager.deleteByPk(connection,com.lanyuer.route.stopset_Pk.valueOf</p><p>  (reader.getString("delRoute_Pk","")));</p><p>  stopsets = stopset_Manager

73、.selectes(connection);</p><p>  if (reader.getString("stopset_Pk","").length() > 0) </p><p>  stopset1 = stopset_Manager.selectByPk</p><p>  (connection,com.l

74、anyuer.route.stopset_Pk.valueOf</p><p>  (reader.getString("stopset_Pk","")));</p><p>  } catch (Exception e) {</p><p><b>  throw e;</b></p>&

75、lt;p>  } finally { </p><p>  if (connection != null) {</p><p>  connection.close();</p><p>  connection = null;</p><p><b>  }</b></p><p><

76、;b>  }</b></p><p><b>  %></b></p><p><b>  <%</b></p><p>  Iterator iterator = stopsets.iterator();</p><p>  while(iterator.hasNex

77、t()) {</p><p>  com.lanyuer.route.stopset stopset = (com.lanyuer.route.stopset)iterator.next();</p><p><b>  %> </b></p><p>  4.3 公交線路管理</p><p>  現(xiàn)

78、實(shí)中的公交線路在數(shù)據(jù)庫(kù)中都對(duì)應(yīng)了相應(yīng)的記錄。各路的公交車走各自的公交線路,隨著城市現(xiàn)代化的進(jìn)程,某些公交車的線路可能發(fā)生改變。這需要在系統(tǒng)中及時(shí)的做出更改。在公交線路管理界面中輸入線路的編號(hào),起始時(shí)間,及其對(duì)應(yīng)的公交號(hào)碼提交系統(tǒng)后會(huì)作保存。某些線路更改了公交號(hào)碼就課點(diǎn)擊刪除按鈕將其刪除。這樣數(shù)據(jù)庫(kù)就獲取了更新數(shù)據(jù),查詢系統(tǒng)能夠準(zhǔn)確的提供有效信息。公交線路管理運(yùn)行界面如圖5-3所示:</p><p>  圖4-3公

79、交線路公里界面</p><p>  公交站點(diǎn)管理主要代碼如下:</p><p>  <jsp:useBean class="com.lanyuer.util.JspParamReader" id="reader" scope="request" /></p><p><b>  <

80、;%</b></p><p>  reader.setRequest(request);</p><p>  List routes = null;</p><p>  Connection connection;</p><p>  com.lanyuer.route.route_Manager route_Manager =

81、com.lanyuer.route.route_Manager.getInstance();</p><p>  com.lanyuer.route.route route1 = null;</p><p>  connection = DataConnectionManager.getInstance().getConnection();</p><p><

82、b>  try {</b></p><p>  if (reader.getString("delRoute_Pk","").length() > 0) </p><p>  route_Manager.deleteByPk(connection,com.lanyuer.route.route_Pk.valueOf(reade

83、r.getString("delRoute_Pk","")));</p><p>  routes = route_Manager.selectes(connection);</p><p>  if (reader.getString("route_Pk","").length() > 0) </

84、p><p><b>  route1 = </b></p><p>  route_Manager.selectByPk(connection,com.lanyuer.route.route_Pk.valueOf(reader.getString("route_Pk","")));</p><p>  } c

85、atch (Exception e) {</p><p><b>  throw e;</b></p><p>  } finally { </p><p>  if (connection != null) {</p><p>  connection.close();</p><p>  co

86、nnection = null;</p><p><b>  }</b></p><p><b>  }</b></p><p><b>  %></b></p><p><b>  <%</b></p><p>  I

87、terator iterator = routes.iterator();</p><p>  while(iterator.hasNext()) {</p><p>  com.lanyuer.route.route route = (com.lanyuer.route.route)iterator.next();</p><p><b>  %>

88、 </b></p><p><b>  <tr></b></p><p>  <td align="center"><%=route.getiEndTime()%></td></p><p>  <td align="center"&

89、gt;<%=route.getcNote()%></td></p><p>  <td align="center"></p><p>  <a href="?delRoute_Pk=<%=java.net.URLEncoder.encode(route.getPrimaryKey().toString())%&

90、gt;">刪除</a></td></p><p><b>  </tr></b></p><p><b>  <%</b></p><p><b>  }</b></p><p><b>  %><

91、/b></p><p><b>  結(jié)束語(yǔ)</b></p><p>  一個(gè)應(yīng)用程序設(shè)計(jì)開發(fā)的好壞,與設(shè)計(jì)人員對(duì)開發(fā)工具的掌握程度息息相關(guān)。根據(jù)個(gè)人情況,盡量選擇了自己較熟悉的開發(fā)環(huán)境及工具,以便能夠順利的實(shí)現(xiàn)系統(tǒng)避免延期。同時(shí)設(shè)計(jì)的思想,套路在開發(fā)前期需要認(rèn)真的物色,一個(gè)好的設(shè)計(jì)思路是開發(fā)出好的系統(tǒng)的基石;開發(fā)之前經(jīng)過(guò)思考研究以B/S的模式設(shè)計(jì)本系統(tǒng)。<

92、/p><p>  盡管如此在本系統(tǒng)的開發(fā)設(shè)計(jì)過(guò)程中,由于本人對(duì)開發(fā)工具的掌握尚有欠缺,可以說(shuō)整個(gè)的開發(fā)過(guò)程是一邊摸索一邊實(shí)踐出來(lái)的。但令人高興的是,通過(guò)這樣一個(gè)邊學(xué)習(xí)邊應(yīng)用的過(guò)程與其他同學(xué)、老師的幫助,本人完成了公交查詢系統(tǒng)的開發(fā)工作,并實(shí)現(xiàn)了該應(yīng)用程序背景所要求的功能。在此過(guò)程中能力得到了相應(yīng)的提升,為日后設(shè)計(jì)開發(fā)和學(xué)習(xí)增強(qiáng)了信心。但總的來(lái)說(shuō),程序仍然存在許多不足之處,在整個(gè)開發(fā)過(guò)程中本人一直本著認(rèn)真、虛心、刻苦、

93、積極的態(tài)度,堅(jiān)持自己獨(dú)立完成設(shè)計(jì),并基本達(dá)到了應(yīng)用設(shè)計(jì)的功能要求。相信隨著對(duì)開發(fā)工具的逐漸熟悉和知識(shí)體系的逐漸完善,該系統(tǒng)在日后一定能夠得到不斷改進(jìn),發(fā)揮出它應(yīng)有的作用。</p><p><b>  致 謝</b></p><p>  在本系統(tǒng)的開發(fā)設(shè)計(jì)過(guò)程中,本人得到了父母、指導(dǎo)老師、朋友、以及同事們的大力支持與幫助。感謝伍德利老師在具體設(shè)計(jì)過(guò)程中給予的悉心指導(dǎo);感

溫馨提示

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

評(píng)論

0/150

提交評(píng)論