版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、<p><b> 畢業(yè)論文(設(shè)計(jì))</b></p><p> 城市公交查詢系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)</p><p><b> 目 錄</b></p><p><b> 摘 要I</b></p><p> AbstractII</p><p&
2、gt;<b> 第1章 引 言1</b></p><p> 1.1課題背景1</p><p> 1.2 論文的研究?jī)?nèi)容1</p><p> 1.3 論文的組織結(jié)構(gòu)2</p><p> 第2章 系統(tǒng)的開(kāi)發(fā)工具與環(huán)境3</p><p> 2.1 ASP.NET簡(jiǎn)介3</
3、p><p> 2.2 ADO.NET概述4</p><p> 2.3 系統(tǒng)的開(kāi)發(fā)要求5</p><p> 第3章 需求分析6</p><p> 3.1 系統(tǒng)需求分析6</p><p> 3.2 數(shù)據(jù)庫(kù)需求分析6</p><p> 3.3 性能需求7</p>&l
4、t;p> 第4章 系統(tǒng)概要設(shè)計(jì)9</p><p><b> 4.1 概述9</b></p><p> 4.2 功能模塊劃分9</p><p> 4.3 數(shù)據(jù)庫(kù)設(shè)計(jì)10</p><p> 第5章 詳細(xì)設(shè)計(jì)與實(shí)現(xiàn)17</p><p> 5.1 前臺(tái)功能的實(shí)施17</
5、p><p> 5.2 后臺(tái)管理功能的實(shí)現(xiàn)21</p><p> 第6章 測(cè)試與維護(hù)27</p><p> 6.1 創(chuàng)建和測(cè)試應(yīng)用程序27</p><p> 6.2 測(cè)試項(xiàng)目27</p><p> 6.3 程序改進(jìn)28</p><p> 6.4 測(cè)試方法28</p>
6、<p> 6.5 測(cè)試內(nèi)容29</p><p> 6.6 軟件維護(hù)29</p><p><b> 結(jié) 論31</b></p><p><b> 致 謝32</b></p><p><b> 參考文獻(xiàn)33</b></p><p
7、><b> 摘 要</b></p><p> 我國(guó)城市公交乘客信息系統(tǒng)的發(fā)展處于一個(gè)較落后的水平,廣大乘客可以獲得信息的方式很少,為了解決這種問(wèn)題,加快發(fā)展城市公交信息化,設(shè)計(jì)一個(gè)城市公交查詢系統(tǒng)是具有一定實(shí)際應(yīng)用意義的。在此背景下,我開(kāi)發(fā)了這個(gè)應(yīng)用程序---城市公交查詢系統(tǒng)。本次設(shè)計(jì),首先我考慮了公交運(yùn)營(yíng)的實(shí)際情況和不同公交乘客的實(shí)際要求,分析了此系統(tǒng)應(yīng)該具有的功能;其次對(duì)系統(tǒng)的
8、主要功能模塊進(jìn)行了詳細(xì)地描述,其中主要包括二個(gè)模塊---查詢模塊(包括按線路查詢、按站點(diǎn)查詢和按兩站點(diǎn)查詢)和管理更新模塊(包括公交站點(diǎn)管理和公交線路管理),最后結(jié)合系統(tǒng)開(kāi)發(fā)階段和調(diào)試階段發(fā)現(xiàn)的問(wèn)題,提出了系統(tǒng)需要完善的地方,總結(jié)了開(kāi)發(fā)此系統(tǒng)所取得的經(jīng)驗(yàn)。</p><p> 關(guān)鍵詞:公交, ASP.NET,查詢,B/S結(jié)構(gòu),數(shù)據(jù)庫(kù)</p><p><b> Abstract&
9、lt;/b></p><p> The development of the bus passenger information system is in a level that fall behind of the city in our country. The large part of passengers can acquire few ways of the information. So
10、it's practical for us to develop city's bus passenger information system in order to resolving this problem. For this purpose, I design this application procedure---bus circuit search system. From this design, Fi
11、rst ,I analyzed the present condition of the bus passenger information and different people's needs,</p><p> Keywords :Bus,ASP.NET,Search,Structure of B/S,Database</p><p><b> 第1章 引 言
12、</b></p><p><b> 課題背景</b></p><p> 城市公交是專門服務(wù)于市民出行的客運(yùn)企業(yè)。它是城市社會(huì)和經(jīng)濟(jì)活動(dòng)的重要組成部分。伴隨著國(guó)民經(jīng)濟(jì)和城市建設(shè)的快速發(fā)展,城市經(jīng)濟(jì)的繁榮,人口的增加,城市必須解決好人們出行的需求。城市公交直接關(guān)系著城市的經(jīng)濟(jì)發(fā)展和居民生活,對(duì)城市經(jīng)濟(jì)具有全局性、先導(dǎo)性的影響,城市公交以其方便、快捷、容量大
13、而成為城市交通的主體。但是隨著公交系統(tǒng)的龐大,人們很難得到準(zhǔn)確的公交信息,這樣給一些人的出行就帶來(lái)了不便。因此,急需一個(gè)方便、快捷的公交信息查詢方式,本系統(tǒng)通過(guò)瀏覽器查詢,實(shí)現(xiàn)中心控制、自動(dòng)更新、更多的查詢方式等等更多更強(qiáng)大的功能。</p><p> 隨著城市經(jīng)濟(jì)的發(fā)展、規(guī)模的擴(kuò)大以及人口的增長(zhǎng),城市交通問(wèn)題日益突出。降低出行時(shí)間將使所有的公交利用者產(chǎn)生效益,快速的交通、更好的信息及更好的市場(chǎng)可以提高公交的形象
14、,能夠增加公交乘坐者。城市公共交通運(yùn)輸以其覆蓋面廣、經(jīng)濟(jì)、快捷的特點(diǎn),成為絕大多數(shù)出行者的首選方式,也是各地城市政府大力發(fā)展的一種交通方式。本地市民特別是外來(lái)旅游、出差、就醫(yī)等急需了解本地道路情況的人可以利用本系統(tǒng)方便快捷的查詢出所有符合他們要求的公交路線,對(duì)他們的出行和生活提供幫助。 我國(guó)城市公交乘客信息系統(tǒng)的發(fā)展處于一個(gè)落后的水平,廣大乘客可以獲得信息的方式很少,公交信息的完整性和準(zhǔn)確性得不到保證,而且還沒(méi)有專門的機(jī)構(gòu)負(fù)責(zé)信息的發(fā)布
15、和管理。出于這個(gè)目的,在老師的指導(dǎo)下,我設(shè)計(jì)了這個(gè)城市公交線路查詢系統(tǒng)。在對(duì)公交乘客出行心理特征進(jìn)行分析的基礎(chǔ)上,考慮乘客選擇公交線路決策的因素,進(jìn)行程序關(guān)鍵部分的框架設(shè)計(jì)。</p><p> 現(xiàn)階段,人們的出入方式主要還是來(lái)源于城市公交,特別是對(duì)于那些到外地出差、打工,進(jìn)行商業(yè)有關(guān)或其他事情需要在外地進(jìn)行短暫停留的人而言,公交對(duì)他們是必不可少的,但是對(duì)于那個(gè)不屬于自己所熟悉的城市,坐公交也是一個(gè)很大的難題,因
16、此,開(kāi)發(fā)一個(gè)公交查詢系統(tǒng)就顯得非常的重要。本系統(tǒng)的核心是對(duì)選擇好的車次進(jìn)行路線的查詢,或者輸入所要查詢的車站名,點(diǎn)擊“查詢”按鈕,查詢所有含有該站的車次及相應(yīng)的??空尽4颂幖瓤梢浴熬_查詢”也可以是“模糊查詢”,“模糊查詢”主要方便那些對(duì)站名不是很清楚,但知道其中的一部分的乘客,系統(tǒng)可以幫助他們快速的查出。</p><p> 1.2論文的研究?jī)?nèi)容</p><p> 公交查詢系統(tǒng)是一個(gè)取
17、代過(guò)去由人工查詢的查詢系統(tǒng)。本論文論述了一個(gè)基于瀏覽器/服務(wù)器(B/S,Browser/Server)模式的公交查詢系統(tǒng)的研究和實(shí)現(xiàn)的過(guò)程. 論文從開(kāi)發(fā)平臺(tái)和工具談起,對(duì)ASP.NET服務(wù)器所提供的組件及其屬性和方法做了一般介紹,更重要的是闡述了ASP.NET的數(shù)據(jù)庫(kù)訪問(wèn)組件ADO.NET的使用方法。最后,詳細(xì)介紹了如何創(chuàng)建“公交查詢系統(tǒng)”的全部過(guò)程。</p><p> 1.3論文的組織結(jié)構(gòu)</p>
18、<p> 論文第2章是系統(tǒng)的開(kāi)發(fā)工具與環(huán)境概述,介紹了該系統(tǒng)設(shè)計(jì)開(kāi)發(fā)使用的Visual Studio .net中的ASP.NET開(kāi)發(fā)語(yǔ)言和系統(tǒng)在數(shù)據(jù)庫(kù)的設(shè)計(jì)開(kāi)發(fā)中使用的數(shù)據(jù)庫(kù)連接技術(shù)ADO.NET,并介紹了系統(tǒng)開(kāi)發(fā)所需要的計(jì)算機(jī)環(huán)境。</p><p> 第3章是系統(tǒng)的需求分析和數(shù)據(jù)庫(kù)總體設(shè)計(jì),包括系統(tǒng)需求,性能分析等。</p><p> 第4章是系統(tǒng)的系統(tǒng)概要設(shè)計(jì),包括
19、系統(tǒng)的模塊劃分,數(shù)據(jù)庫(kù)的概念結(jié)構(gòu)設(shè)計(jì)和數(shù)據(jù)庫(kù)的邏輯結(jié)構(gòu)設(shè)計(jì)。</p><p> 第5章是系統(tǒng)的詳細(xì)設(shè)計(jì)和實(shí)現(xiàn),包括系統(tǒng)各個(gè)界面設(shè)計(jì)和相關(guān)重要注釋。</p><p> 第6章是系統(tǒng)測(cè)試和維護(hù)。</p><p> 最后是結(jié)論、致謝、參考文獻(xiàn)及附錄。</p><p> 第2章 系統(tǒng)的開(kāi)發(fā)工具與環(huán)境</p><p>
20、 2.1 ASP.NET簡(jiǎn)介</p><p> ASP.NET 是一種建立在通用語(yǔ)言上的程序構(gòu)架,能被用于一臺(tái)Web服務(wù)器來(lái)建立強(qiáng)大的Web應(yīng)用程序。ASP.NET提供許多比現(xiàn)在的Web開(kāi)發(fā)模式強(qiáng)大的的優(yōu)勢(shì)。</p><p> ASP.NET 建立在 .NET Framework 的編程類之上,它提供了一個(gè) Web 應(yīng)用程序模型,并且包含使生成 ASP Web 應(yīng)用程序變得簡(jiǎn)單的控件集
21、和結(jié)構(gòu)。ASP.NET 包含封裝公共 HTML 用戶界面元素(如文本框和下拉菜單)的控件集。但這些控件在 Web 服務(wù)器上運(yùn)行,并以 HTML 的形式將它們的用戶界面推送到瀏覽器。在服務(wù)器上,這些控件公開(kāi)一個(gè)面向?qū)ο蟮木幊棠P?,?Web 開(kāi)發(fā)人員提供了面向?qū)ο蟮木幊痰呢S富性。ASP.NET 還提供結(jié)構(gòu)服務(wù)(如會(huì)話狀態(tài)管理和進(jìn)程回收),進(jìn)一步減少了開(kāi)發(fā)人員必須編寫(xiě)的代碼量并提高了應(yīng)用程序的可靠性。另外,ASP.NET 使用這些同樣的概念
22、使開(kāi)發(fā)人員能夠以服務(wù)的形式交付軟件。使用 XML Web services 功能,ASP.NET 開(kāi)發(fā)人員可以編寫(xiě)自己的業(yè)務(wù)邏輯并使用 ASP.NET 結(jié)構(gòu)通過(guò) SOAP 交付該服務(wù)。Visual Studio .NET 是一套完整的開(kāi)發(fā)工具,用于生成 ASP Web 應(yīng)用程序、XML Web services、桌面應(yīng)用程序和移動(dòng)應(yīng)用程序。Visual Basic .NET、Visual C++ </p><p>
23、; 2.1.1 ASP.NET技術(shù)的優(yōu)點(diǎn)</p><p> ASP.NET是一種將各種Web元素組合在一起的服務(wù)器技術(shù),是一個(gè)統(tǒng)一的Web開(kāi)發(fā)平臺(tái),它提供了生成一個(gè)完整的Web應(yīng)用程序所必須要的各種服務(wù)。與以前的開(kāi)發(fā)模型相比較,它提供了以下數(shù)個(gè)重要的優(yōu)點(diǎn):</p><p> (1)增強(qiáng)的性能。ASP.NET 是在服務(wù)器上運(yùn)行的編譯好的公共語(yǔ)言運(yùn)行庫(kù)代碼。與被解釋的前輩不同,ASP.N
24、ET 可利用早期綁定、實(shí)時(shí)編譯、本機(jī)優(yōu)化和盒外緩存服務(wù)。這相當(dāng)于在編寫(xiě)代碼之前便顯著提高了性能。</p><p> (2)世界級(jí)的工具支持。ASP.NET 框架補(bǔ)充了 Visual Studio 集成開(kāi)發(fā)環(huán)境中的大量工具箱和設(shè)計(jì)器。WYSIWYG 編輯、拖放服務(wù)器控件和自動(dòng)部署只是這個(gè)強(qiáng)大的工具所提供功能中的少數(shù)幾種。</p><p> ?。?)威力和靈活性。由于 ASP.NET 基于公
25、共語(yǔ)言運(yùn)行庫(kù),因此 Web 應(yīng)用程序開(kāi)發(fā)人員可以利用整個(gè)平臺(tái)的威力和靈活性。.NET 框架類庫(kù)、消息處理和數(shù)據(jù)訪問(wèn)解決方案都可從 Web 無(wú)縫訪問(wèn)。ASP.NET 也與語(yǔ)言無(wú)關(guān),所以可以選擇最適合應(yīng)用程序的語(yǔ)言(如C#),或是跨多種語(yǔ)言分割應(yīng)用程序。另外,公共語(yǔ)言運(yùn)行庫(kù)的交互性保證在遷移到 ASP.NET 時(shí)保留基于 COM 的開(kāi)發(fā)中的現(xiàn)有投資。</p><p> (4)簡(jiǎn)易性。ASP.NET 使執(zhí)行常見(jiàn)任務(wù)變
26、得容易,從簡(jiǎn)單的窗體提交和客戶端身份驗(yàn)證到部署的站點(diǎn)配置。例如,ASP.NET 頁(yè)框架使您可以生成將應(yīng)用程序邏輯與表示代碼清楚分開(kāi)的用戶界面,和在類似 Visual Basic 的簡(jiǎn)單窗體處理模型中處理事件。另外,公共語(yǔ)言運(yùn)行庫(kù)利用托管代碼服務(wù)(如自動(dòng)引用計(jì)數(shù)和垃圾回收)簡(jiǎn)化了開(kāi)發(fā)。</p><p> (5)可管理性。ASP.NET 采用基于文本的分層配置系統(tǒng),簡(jiǎn)化了將設(shè)置應(yīng)用于服務(wù)器環(huán)境和 Web 應(yīng)用程序。
27、由于配置信息是以純文本形式存儲(chǔ)的,因此可以在沒(méi)有本地管理工具幫助的情況下應(yīng)用新設(shè)置。此“零本地管理”哲學(xué)也擴(kuò)展到了 ASP.NET 框架應(yīng)用程序的部署。只需將必要的文件復(fù)制到服務(wù)器,即可將 ASP.NET 框架應(yīng)用程序部署到服務(wù)器。不需要重新啟動(dòng)服務(wù)器,即使是在部署或替換運(yùn)行的編譯代碼時(shí)。</p><p> ?。?)可縮放性和可用性。ASP.NET 在設(shè)計(jì)時(shí)考慮了可縮放性,增加了專門用于在聚集環(huán)境和多處理器環(huán)境中
28、提高性能的功能。另外,進(jìn)程受到 ASP.NET 運(yùn)行庫(kù)的密切監(jiān)視和管理,以便當(dāng)進(jìn)程行為不正常(泄漏、死鎖)時(shí),可就地創(chuàng)建新進(jìn)程,以幫助保持應(yīng)用程序始終可用于處理請(qǐng)求。</p><p> (7)自定義性和擴(kuò)展性。ASP.NET 隨附了一個(gè)設(shè)計(jì)周到的結(jié)構(gòu),它使開(kāi)發(fā)人員可以在適當(dāng)?shù)募?jí)別“插入”代碼。實(shí)際上,可以用自己編寫(xiě)的自定義組件擴(kuò)展或替換 ASP.NET 運(yùn)行庫(kù)的任何子組件。實(shí)現(xiàn)自定義身份驗(yàn)證或狀態(tài)服務(wù)一直沒(méi)有變
29、得更容易。</p><p> ?。?)安全性。借助內(nèi)置的 Windows 身份驗(yàn)證和基于每個(gè)應(yīng)用程序的配置,可以保證應(yīng)用程序是安全的?! ?lt;/p><p> 2.1.2 .NET Framework概述</p><p> .NET Framework 是用于生成、部署和運(yùn)行 XML Web services 和應(yīng)用程序的多語(yǔ)言環(huán)境。它由以下幾個(gè)主要部分組成:&l
30、t;/p><p> 公共語(yǔ)言運(yùn)行庫(kù) 運(yùn)行庫(kù)實(shí)際上在組件的運(yùn)行時(shí)和開(kāi)發(fā)時(shí)操作中都起到很大的作用,盡管名稱中沒(méi)有體現(xiàn)這個(gè)意思。在組件運(yùn)行時(shí),運(yùn)行庫(kù)除了負(fù)責(zé)滿足此組件在其他組件上可能具有的依賴項(xiàng)外,還負(fù)責(zé)管理內(nèi)存分配、啟動(dòng)和停止線程和進(jìn)程,以及強(qiáng)制執(zhí)行安全策略。在開(kāi)發(fā)時(shí),運(yùn)行庫(kù)的作用稍有變化;由于做了大量的自動(dòng)處理工作(如內(nèi)存管理),運(yùn)行庫(kù)使開(kāi)發(fā)人員的操作非常簡(jiǎn)單,尤其是與今天的 COM 相比。特別是反射等功能顯著減少了
31、開(kāi)發(fā)人員為將業(yè)務(wù)邏輯轉(zhuǎn)變?yōu)榭芍赜媒M件而必須編寫(xiě)的代碼量。 </p><p> 統(tǒng)一編程類 該框架為開(kāi)發(fā)人員提供了統(tǒng)一的、面向?qū)ο蟮摹⒎謱拥暮涂蓴U(kuò)展的類庫(kù)集 (API)。目前,C++ 開(kāi)發(fā)人員使用 Microsoft 基礎(chǔ)類,而 Java 開(kāi)發(fā)人員使用 Windows 基礎(chǔ)類??蚣芙y(tǒng)一了這些完全不同的模型并且為 Visual Basic 和 JScript 程序員同樣提供了對(duì)類庫(kù)的訪問(wèn)。通過(guò)創(chuàng)建跨所有編程語(yǔ)言的公
32、共 API 集,公共語(yǔ)言運(yùn)行庫(kù)使得跨語(yǔ)言繼承、錯(cuò)誤處理和調(diào)試成為可能。從 JScript 到 C++ 的所有編程語(yǔ)言具有對(duì)框架的相似訪問(wèn),開(kāi)發(fā)人員可以自由選擇它們要使用的語(yǔ)言。</p><p> 2.2 ADO.NET概述</p><p> ADO.NET并不是ADO的升級(jí)版本,它是全新的面向?qū)ο竽P汀1華DO更適應(yīng)于分布式及Internet等大型應(yīng)用程序環(huán)境,為了多人同時(shí)存取更具擴(kuò)展
33、性,ADO.NET的數(shù)據(jù)存取采用的是離線存取模式,可說(shuō)是專門為.NET平臺(tái)設(shè)計(jì)的數(shù)據(jù)存取結(jié)構(gòu)。它具有簡(jiǎn)單地訪問(wèn)關(guān)系數(shù)據(jù)、可擴(kuò)展性、支持多層應(yīng)用程序、統(tǒng)一XML和關(guān)系數(shù)據(jù)訪問(wèn)的特點(diǎn)。</p><p> ADO.NET的主要目標(biāo)是提供對(duì)關(guān)系數(shù)據(jù)的簡(jiǎn)單訪問(wèn)功能。坦白的說(shuō),易于使用的類描述關(guān)系數(shù)據(jù)庫(kù)中的表、列和行。另外,ADO.NET引入了DataSet類,它代表來(lái)自封裝在一個(gè)單元中的關(guān)聯(lián)表中的一組數(shù)據(jù),維持他們之間完
34、整的關(guān)系。這是在ADO.NET中的新概念,可以顯著的擴(kuò)展數(shù)據(jù)訪問(wèn)接口的功能。</p><p> ADO.NET可以擴(kuò)展——它為插件.NET數(shù)據(jù)提供者(也稱為可管理提供者)提供了框架,這些提供者被構(gòu)建,以便從任何數(shù)據(jù)源讀取和寫(xiě)入數(shù)據(jù)。ADO.NET提供了兩種內(nèi)置的.NET數(shù)據(jù)提供者,一種用于OLE DB數(shù)據(jù)源,另一種用于Microsoft SQL Server。可以通過(guò)OLE DB訪問(wèn)數(shù)據(jù)格式(比如Microso
35、ft Access)、第三方數(shù)據(jù)庫(kù)和非關(guān)系數(shù)據(jù)。另外,Microsoft最近預(yù)演了用于ADO.NET的ODBC.NET數(shù)據(jù)提供者,它允許.NET訪問(wèn)更多的舊的數(shù)據(jù)格式和第三方數(shù)據(jù)庫(kù)。</p><p> ADO.NET用于多層應(yīng)用程序。這是當(dāng)今商業(yè)和電子商務(wù)應(yīng)用程序最常見(jiàn)的體系結(jié)構(gòu)。在多層體系結(jié)構(gòu)中,應(yīng)用邏輯的不同部5分1運(yùn)a行s在p多x個(gè)服務(wù)器或進(jìn)程中,每一部分就稱為一層。ADO.NET使用開(kāi)放的Interne
36、t標(biāo)準(zhǔn)XML格式在層之間通信,允許數(shù)據(jù)通過(guò)Internet防火墻來(lái)傳遞,并允許以非Microsoft技術(shù)來(lái)實(shí)現(xiàn)一層或多層。</p><p> 那么在Visual Studio.NET中ADO.NET訪問(wèn)數(shù)據(jù)庫(kù)分為二種。一種是SQL Server數(shù)據(jù)庫(kù),另一種是其它任何類型的數(shù)據(jù)庫(kù)。本系統(tǒng)的后臺(tái)數(shù)據(jù)庫(kù)為SQL Server 2005,因此是通過(guò)SQLConnection、SqlCommand、SqlDataAda
37、pter、DataSet等幾個(gè)主要的數(shù)據(jù)訪問(wèn)對(duì)象來(lái)訪問(wèn)數(shù)據(jù)的。</p><p> 2.3系統(tǒng)的開(kāi)發(fā)要求</p><p> 本次開(kāi)發(fā)的公交查詢系統(tǒng)對(duì)操作系統(tǒng)的要求如下:</p><p><b> 硬件要求:</b></p><p> CPU:最低Intel Pentium II 500 MHz。</p>
38、;<p> 磁盤空間:250MB(完全安裝),155MB(快速安裝)。</p><p> 內(nèi)存:512MB(最好1GB以上)。</p><p> 顯示:1024*768,256色</p><p><b> 軟件要求:</b></p><p> 操作系統(tǒng):Windows 2000以上的操作系統(tǒng)。&l
39、t;/p><p> 開(kāi)發(fā)平臺(tái):Visual Studio.NET 2005,Microsoft SQL Server 2005。</p><p><b> 第3章 需求分析</b></p><p> 3.1 系統(tǒng)需求分析</p><p> 隨著我國(guó)經(jīng)濟(jì)的高速發(fā)展,人們生活水平的提高,越來(lái)越多的人開(kāi)始熱衷于到外地旅游。
40、那么對(duì)于這些外來(lái)旅游者,首先搞清這個(gè)城市的公交路線顯的很重要!我的家鄉(xiāng)沈陽(yáng),作為一個(gè)旅游城市,每年都要吸引大量的游客,為了滿足這些游客熟悉公交路線的需求,特以公交查詢系統(tǒng)為設(shè)計(jì)課題。本軟件不僅能給游客帶來(lái)方便,也能給廣大市民提供方便。我認(rèn)為這樣的系統(tǒng)應(yīng)該具有很好的實(shí)用性!開(kāi)發(fā)本系統(tǒng)的目標(biāo)就是立足廣大乘客的實(shí)際,著眼于公交業(yè)的未來(lái)發(fā)展,規(guī)范公交管理,提高服務(wù)質(zhì)量,方便乘客查詢,并為此設(shè)計(jì)該系統(tǒng)。</p><p>
41、 人們生活水平的提高,越來(lái)越多人喜歡旅游,但是第一次來(lái)一個(gè)陌生的城市,肯定對(duì)公交路線不熟悉,所以必定需要一個(gè)能查看具體公交線路的公交系統(tǒng)。有些只知道一個(gè)站的某幾個(gè)字或一個(gè)車次的某幾個(gè)數(shù)字,所以本系統(tǒng)將給出站點(diǎn)的模糊查詢,方便用戶的查詢,有些只知道車次或某個(gè)站點(diǎn),本系統(tǒng)也給出了公交線路查詢、公交站點(diǎn)查詢、公交換乘查詢,進(jìn)一步方便大家的出行,但也有用戶什么都查不到,想留言問(wèn)問(wèn)人,所以再搞個(gè)留言板很有必要,方便大家交流以及解答各種疑難問(wèn)題!&
42、lt;/p><p> 本系統(tǒng)采用結(jié)構(gòu)化設(shè)計(jì)的方法來(lái)實(shí)現(xiàn)系統(tǒng)總體功能,提高系統(tǒng)的各項(xiàng)指標(biāo),即將整個(gè)系統(tǒng)合理的劃分成各個(gè)功能模塊,正確地處理模塊之間和模塊內(nèi)部的聯(lián)系以及和數(shù)據(jù)庫(kù)的聯(lián)系,定義各模塊的內(nèi)部結(jié)構(gòu),通過(guò)對(duì)模塊的設(shè)計(jì)和模塊之間關(guān)系的系統(tǒng)來(lái)實(shí)現(xiàn)整個(gè)系統(tǒng)的功能</p><p> 前臺(tái)主要有3個(gè)模塊,線路查詢、站點(diǎn)查詢、公交換乘模塊和后臺(tái)管理模塊</p><p><
43、;b> 功能名稱:線路查詢</b></p><p> 功能概述:可以獲得要查詢公交所通過(guò)的各個(gè)站點(diǎn)。</p><p><b> 功能名稱:站點(diǎn)查詢</b></p><p> 功能概述:通過(guò)輸入的指定站點(diǎn)查詢經(jīng)過(guò)該站點(diǎn)的公交。</p><p> 功能名稱:公交換乘查詢</p>&l
44、t;p> 功能概述:分為公交直達(dá)、公交一次換乘,主要體現(xiàn)那些不可直達(dá)需要轉(zhuǎn)車的路線的所有換法。(如果用戶輸入的起始點(diǎn)和終點(diǎn),有一條及一條以上的公交線可以直達(dá)的,則為公交直達(dá);如果輸入的起始點(diǎn)和終點(diǎn),沒(méi)有一條公交線可以直接到的,系統(tǒng)將會(huì)給出一次換乘的方案,則為公交一次換乘)</p><p><b> 功能名稱:后臺(tái)管理</b></p><p> 功能概述:用
45、于管理員登陸,添加、修改、刪除公交線路,修改信息資料、安全密碼,回復(fù)留言板等功能。</p><p> 本系統(tǒng)提供了的車次查詢功能、路5線1查A詢S功P能X。乘客可以方便的進(jìn)行查詢,以防乘錯(cuò)車次。當(dāng)然有些功能的智能化不是很強(qiáng),系統(tǒng)有待進(jìn)一步來(lái)完善。</p><p> 3.2 數(shù)據(jù)庫(kù)需求分析</p><p> 數(shù)據(jù)庫(kù)在一個(gè)信息管理系統(tǒng)中占有非常重要的地位,數(shù)據(jù)庫(kù)結(jié)
46、構(gòu)設(shè)計(jì)的好壞將直接對(duì)應(yīng)用系統(tǒng)的效率以及實(shí)現(xiàn)的效果產(chǎn)生影響。合理的數(shù)據(jù)庫(kù)結(jié)構(gòu)設(shè)計(jì)可以提高數(shù)據(jù)存儲(chǔ)的效率,保證數(shù)據(jù)的完整和一致。</p><p> 數(shù)據(jù)庫(kù)技術(shù)是由傳統(tǒng)的文件系統(tǒng)發(fā)展而來(lái)的,從層次模型、網(wǎng)狀模型發(fā)展到關(guān)系模型。數(shù)據(jù)庫(kù)技術(shù)是數(shù)據(jù)管理的最新技術(shù),是計(jì)算機(jī)科學(xué)的一個(gè)重要分支,它能指導(dǎo)我們正確地設(shè)計(jì)數(shù)據(jù)庫(kù)系統(tǒng),它的出現(xiàn)極大地促進(jìn)了計(jì)算機(jī)應(yīng)用的發(fā)展。采用數(shù)據(jù)庫(kù)技術(shù)的原理和方法可以有效地設(shè)計(jì)實(shí)用的數(shù)據(jù)庫(kù)系統(tǒng)。一個(gè)
47、完整的數(shù)據(jù)庫(kù)系統(tǒng)包括數(shù)據(jù)庫(kù)管理系統(tǒng)(DBMS),數(shù)據(jù)庫(kù)管理員(DBA)、數(shù)據(jù)庫(kù)(DB)、應(yīng)用程序和相應(yīng)的硬件設(shè)施。</p><p> 目前許多數(shù)據(jù)庫(kù)管理系統(tǒng)都基于關(guān)系模型,關(guān)系模型的主要特點(diǎn)是用表格結(jié)構(gòu)表達(dá)實(shí)體,用鍵表示實(shí)體與實(shí)體之間的聯(lián)系。與層次模型和網(wǎng)狀模型相比,關(guān)系模型比較簡(jiǎn)單,容易為初學(xué)者接受。關(guān)系模型是由若干個(gè)關(guān)系模式組成的集合,關(guān)系模式相當(dāng)于記錄類型,它的實(shí)例稱為關(guān)系。每個(gè)關(guān)系是一張表格。表格簡(jiǎn)單,
48、用戶易懂,用戶只需用簡(jiǎn)單的查詢語(yǔ)句就可以對(duì)數(shù)據(jù)庫(kù)進(jìn)行數(shù)據(jù)操作,并不涉及到存儲(chǔ)結(jié)構(gòu),訪問(wèn)技術(shù)等細(xì)節(jié)。關(guān)系模型是數(shù)學(xué)化的模型,要用到集合論,離散數(shù)學(xué)等知識(shí)。SQL語(yǔ)言是關(guān)系數(shù)據(jù)庫(kù)的代表性語(yǔ)言,已經(jīng)得到廣泛應(yīng)用。</p><p> 在設(shè)計(jì)數(shù)據(jù)庫(kù)時(shí),應(yīng)注意數(shù)據(jù)的安全性,保證數(shù)據(jù)的安全,防止非法用戶訪問(wèn)數(shù)據(jù)庫(kù),以免泄露重要信息,同時(shí)也能51防A止s非px法用戶的蓄意破壞,有許多保護(hù)數(shù)據(jù)的方法,如采用用戶標(biāo)識(shí),口令和密碼或
49、訪問(wèn)控制等方法。一個(gè)成功的數(shù)據(jù)庫(kù)應(yīng)用系統(tǒng)應(yīng)具有用戶標(biāo)識(shí),每一個(gè)合法用戶具有一個(gè)用戶名和相應(yīng)的口令,進(jìn)入數(shù)據(jù)庫(kù)應(yīng)用系統(tǒng)前必須輸入正確的口令,否則無(wú)法進(jìn)入系統(tǒng),這就保證了只有合法的用戶才能操作數(shù)據(jù)庫(kù)系統(tǒng)。為了保證數(shù)據(jù)的合法語(yǔ)義,必須對(duì)數(shù)據(jù)庫(kù)的數(shù)據(jù)進(jìn)行完整性約束,即防止用戶輸入不合語(yǔ)義的數(shù)據(jù)。</p><p> 在設(shè)計(jì)應(yīng)用軟件時(shí),應(yīng)嚴(yán)格按照軟件工程學(xué)的方法進(jìn)行設(shè)計(jì),傳統(tǒng)的方法采用瀑布模型,從問(wèn)題定義、可行性分析、需求
50、分析、概念設(shè)計(jì)、總體設(shè)計(jì)、系統(tǒng)實(shí)現(xiàn)、編碼和軟件測(cè)試、運(yùn)行和維護(hù)等軟件生命周期內(nèi),每一階段均在前一階段的基礎(chǔ)上進(jìn)行設(shè)計(jì),并在每一階段有相應(yīng)的文檔資料。</p><p> 設(shè)計(jì)數(shù)據(jù)庫(kù)系統(tǒng)時(shí)應(yīng)該首先充分了解用戶各個(gè)方面的需求,包括現(xiàn)有的以及將來(lái)可能增加的需求。數(shù)據(jù)庫(kù)設(shè)計(jì)一般包括如下幾個(gè)步驟:數(shù)據(jù)庫(kù)需要分析,數(shù)據(jù)庫(kù)概念結(jié)構(gòu)設(shè)計(jì),數(shù)據(jù)庫(kù)邏輯結(jié)構(gòu)設(shè)計(jì)。</p><p><b> 3.3
51、性能需求</b></p><p> 為了保證系統(tǒng)能夠長(zhǎng)期、安全、穩(wěn)定、可靠、高效的運(yùn)行,城市公交查詢系統(tǒng)應(yīng)該滿足以下的性能需求:</p><p> 3.3.1 系統(tǒng)處理的準(zhǔn)確性和及時(shí)性</p><p> 系統(tǒng)處理的準(zhǔn)確性和及時(shí)性是系統(tǒng)的必要性能。在系統(tǒng)設(shè)計(jì)和開(kāi)發(fā)過(guò)程中,要充分考慮系統(tǒng)當(dāng)前和將來(lái)可能承受的工作量,使系統(tǒng)的處理能力和響應(yīng)時(shí)間能夠滿足企業(yè)
52、對(duì)信息處理的需求。</p><p> 由于公交查詢系統(tǒng)的查詢功能對(duì)于整個(gè)系統(tǒng)的功能和性能完成舉足輕重。作為系統(tǒng)的很多數(shù)據(jù)來(lái)源,而車票數(shù)量和時(shí)間又影響企業(yè)的決策活動(dòng),其準(zhǔn)確性很大程度上決定了公交查詢系統(tǒng)的成敗。在系統(tǒng)開(kāi)發(fā)過(guò)程中,必須采用一定的方法保證系統(tǒng)的準(zhǔn)確性。</p><p> 3.3.2 系統(tǒng)的開(kāi)放性和系統(tǒng)的可擴(kuò)充性</p><p> 公交查詢系統(tǒng)在開(kāi)發(fā)過(guò)
53、程中,應(yīng)該充分考慮以后的可擴(kuò)充性。例如網(wǎng)上查詢的用戶查詢的需求也會(huì)不斷的更新和完善。所有這些,都要求系統(tǒng)提供足夠的手段進(jìn)行功能的調(diào)整和擴(kuò)充。而要實(shí)現(xiàn)這一點(diǎn),應(yīng)通過(guò)系統(tǒng)的開(kāi)放性來(lái)完成,既系統(tǒng)應(yīng)是一個(gè)開(kāi)放系統(tǒng),只要符合一定的規(guī)范,可以簡(jiǎn)單的加入和減少系統(tǒng)的模塊,配置系統(tǒng)的硬件。通過(guò)軟件的修補(bǔ)、替換完成系統(tǒng)的升級(jí)和更新?lián)Q代。</p><p> 3.3.3 系統(tǒng)的易用性和易維護(hù)性</p><p>
54、; 公交查詢系統(tǒng)是直接面對(duì)使用人員的,而使用人員往往對(duì)計(jì)算機(jī)并不時(shí)非常熟悉。這就要求系統(tǒng)能夠提供良好的用戶接口,易用的人機(jī)交互界面。要實(shí)現(xiàn)這一點(diǎn),就要求系統(tǒng)應(yīng)該盡量使用用戶熟悉的術(shù)語(yǔ)和中文信息的界面;針對(duì)用戶可能出現(xiàn)的使用問(wèn)題,要提供足夠的在線幫助,縮短用戶對(duì)系統(tǒng)熟悉的過(guò)程。</p><p> 公交查詢系統(tǒng)中涉及到的數(shù)據(jù)是公交公司的相當(dāng)重要的信息,系統(tǒng)要提供方便的手段供系統(tǒng)維護(hù)人員進(jìn)行數(shù)據(jù)的備份,日常的安全管
55、理,系統(tǒng)意外崩潰時(shí)數(shù)據(jù)的恢復(fù)等工作。</p><p> 3.3.4 系統(tǒng)的標(biāo)準(zhǔn)性</p><p> 系統(tǒng)在設(shè)計(jì)開(kāi)發(fā)使51用aspx過(guò)程中都要涉及到很多計(jì)算機(jī)硬件、軟件。所有這些都要符合主流國(guó)際、國(guó)家和行業(yè)標(biāo)準(zhǔn)。例如在開(kāi)發(fā)中使用的操作系統(tǒng)、網(wǎng)絡(luò)系統(tǒng)、開(kāi)發(fā)工具都必須符合通用標(biāo)準(zhǔn)。如規(guī)范的數(shù)據(jù)庫(kù)操縱界面、作為業(yè)界標(biāo)準(zhǔn)的TCP/IP網(wǎng)絡(luò)協(xié)議及ISO9002標(biāo)準(zhǔn)所要求的質(zhì)量規(guī)范等;同時(shí),在自主開(kāi)
56、發(fā)本系統(tǒng)時(shí),要進(jìn)行良好的設(shè)計(jì)工作,制訂行之有效的軟件工程規(guī)范,保證代碼的易讀性、可操作性和可移植性。</p><p> 3.3.5 系統(tǒng)的先進(jìn)性</p><p> 目前計(jì)算系統(tǒng)的技術(shù)發(fā)展相當(dāng)快,做為公交查詢系統(tǒng)工程,應(yīng)該保證系統(tǒng)在下個(gè)世紀(jì)仍舊是先進(jìn)的,在系統(tǒng)的生命周期盡量做到系統(tǒng)的先進(jìn),充分完成企業(yè)信息處理的要求而不至于落后。這一方面通過(guò)系統(tǒng)的開(kāi)放性和可擴(kuò)充性,不斷改善系統(tǒng)的功能完成。
57、另一方面,在系統(tǒng)設(shè)計(jì)和開(kāi)發(fā)的過(guò)程中,應(yīng)在考慮成本的基礎(chǔ)上盡量采用當(dāng)前主流并先進(jìn)且有良好發(fā)展前途的產(chǎn)品。</p><p> 3.3.6 系統(tǒng)的響應(yīng)速度</p><p> 公交查詢系統(tǒng)在日常處理中的響應(yīng)速度為秒級(jí),達(dá)到實(shí)時(shí)要求,以及時(shí)反饋信息。在進(jìn)行統(tǒng)計(jì)分析時(shí),根據(jù)所需數(shù)據(jù)量的不同而從秒級(jí)到分鐘級(jí),原則是保證操作人員不會(huì)因?yàn)樗俣葐?wèn)題而影響工作效率。</p><p>
58、 第4章 系統(tǒng)概要設(shè)計(jì)</p><p><b> 4.1概述</b></p><p> 本階段設(shè)計(jì)的基本目標(biāo)是解決系統(tǒng)如何實(shí)現(xiàn)問(wèn)題,也叫做概要設(shè)計(jì),本階段主要任務(wù)是劃分出系統(tǒng)的物理元素及設(shè)計(jì)軟件的結(jié)構(gòu),完成軟件定義時(shí)期的任務(wù)之后就應(yīng)該對(duì)系統(tǒng)進(jìn)行總體設(shè)計(jì),即根據(jù)系統(tǒng)分析產(chǎn)生的分5析1結(jié)果AS來(lái)PX確定這個(gè)系統(tǒng)由哪些系統(tǒng)和模塊組成,這些系統(tǒng)和模塊又如何有機(jī)的結(jié)合在一
59、起,每個(gè)模塊的功能如何實(shí)現(xiàn)。系統(tǒng)設(shè)計(jì)的目標(biāo)是使系統(tǒng)實(shí)現(xiàn)擁有所要求的功能,同時(shí),力爭(zhēng)達(dá)到高效率、高可靠性、可修改性,并且容易掌握和使用。</p><p> 模塊化的依據(jù)是:把復(fù)雜問(wèn)題分解成許多容易解決的小問(wèn)題。原來(lái)的問(wèn)題也就變得容易解決。模塊化設(shè)計(jì)是把大型軟件按照一定的原則劃分成一個(gè)較小的相對(duì)功能獨(dú)立又相關(guān)聯(lián)的模塊。每個(gè)模塊完成一個(gè)特定的子功能。把這些模塊結(jié)合起來(lái)組成一個(gè)整體。完成指定的功能,滿足問(wèn)題的要求。采用
60、模塊化原理的優(yōu)點(diǎn)在于可以使軟件結(jié)構(gòu)清晰,容易測(cè)試和調(diào)試。從而提高軟件的可靠性,可修改性。有助于軟件開(kāi)發(fā)的組織管理。一個(gè)大型軟件可分別編寫(xiě)不同的模塊。模塊化理論的幾個(gè)重要概念如下:</p><p> 抽象。抽象就是抽象出事物的本質(zhì)特性而暫時(shí)不考慮它們的細(xì)節(jié)。處理復(fù)雜系統(tǒng)唯一有效的方法是用層次的方式構(gòu)造和分析它。一個(gè)復(fù)雜的動(dòng)態(tài)系統(tǒng)首先可以用一些高級(jí)的抽象概念構(gòu)造和理解,這些高級(jí)概念又可以用一些較低級(jí)的理解,直到最低
61、層次的具體元素。</p><p> 信息隱蔽和局部化。信息隱蔽是指在設(shè)計(jì)和確定模塊時(shí),應(yīng)使得一個(gè)模塊內(nèi)包含的信息對(duì)于不需要這些信息的模塊來(lái)說(shuō),是不能訪問(wèn)。</p><p> 局部化是指把一些關(guān)系密切的軟件元素物理的放得彼此靠近。局部化有助于實(shí)現(xiàn)信息隱蔽。</p><p> 信息隱蔽原理和局部化有助于在測(cè)試期間以及軟件維護(hù)期間修改軟件。因?yàn)榻^大多數(shù)數(shù)據(jù)和過(guò)程對(duì)于
62、軟件的其它部分而言是隱蔽的,從而由疏忽引入的錯(cuò)誤就很少可能傳播到軟件的其它部分。</p><p> 逐步求精的模塊化概念。逐步求精和模塊化的抽象是密切相關(guān)的。軟件結(jié)構(gòu)每一層中模塊表示對(duì)軟件抽象層次的次細(xì)化。用自頂向下,逐步求精的方法由抽象到具體的方式分配控制,簡(jiǎn)化了軟件設(shè)計(jì)和實(shí)施,提高了軟件的可理解性和可測(cè)試性,并使得軟件更容易維護(hù)。</p><p> 模塊獨(dú)立性。模塊的劃分要使模塊間
63、盡可能的相互獨(dú)立,獨(dú)立模塊較易維護(hù)。度量模塊的獨(dú)立程度有兩個(gè)標(biāo)準(zhǔn):內(nèi)聚和耦合。耦合是對(duì)一個(gè)軟件結(jié)構(gòu)內(nèi)不同模塊之間互連程度的度量。耦合強(qiáng)弱取決于模塊間接口的復(fù)雜程度,進(jìn)入或訪問(wèn)一個(gè)模塊的點(diǎn),以及通過(guò)接口的數(shù)。</p><p> 在軟件的設(shè)計(jì)中應(yīng)追求盡可能松散的耦合。內(nèi)聚標(biāo)志一個(gè)模塊內(nèi)各個(gè)元素彼此結(jié)合的緊密程度,它是信息隱藏和局部化概念的自然擴(kuò)展,理想內(nèi)聚的模塊只做一件事情。在設(shè)計(jì)時(shí)應(yīng)力求做到高內(nèi)聚。</p&
64、gt;<p> 4.2 功能模塊劃分</p><p><b> 查詢系統(tǒng)模塊</b></p><p> 該模塊實(shí)現(xiàn)公交查詢功能??蓪?shí)現(xiàn)按線路查詢、站點(diǎn)查詢和起點(diǎn)—終點(diǎn)查詢?nèi)N查詢方式。</p><p><b> 錄入系統(tǒng)模塊</b></p><p> 該模塊實(shí)現(xiàn)數(shù)據(jù)的新增、修
65、改、刪除功能。</p><p> 系統(tǒng)模塊圖如圖4-1所示:</p><p><b> 4.3 數(shù)據(jù)庫(kù)設(shè)計(jì)</b></p><p> 數(shù)據(jù)庫(kù)技術(shù)是在文件系統(tǒng)的基礎(chǔ)上發(fā)展起來(lái)的一種高效的數(shù)據(jù)管理技術(shù),它能保持系統(tǒng)數(shù)據(jù)的整體性,完整性和共享性。在數(shù)據(jù)庫(kù)系統(tǒng)中提供了對(duì)數(shù)據(jù)的訪問(wèn)機(jī)制,能有組織的存儲(chǔ)相關(guān)的數(shù)據(jù),具有合理的存儲(chǔ)方式,快速的查詢效率和
66、最小的數(shù)據(jù)冗余等特性。另外數(shù)據(jù)的存儲(chǔ)和應(yīng)用程序彼此獨(dú)立,不僅便于數(shù)據(jù)的管理與控制而且有利于應(yīng)用程序的編寫(xiě)與調(diào)試。數(shù)據(jù)庫(kù)類似于一個(gè)數(shù)據(jù)的大倉(cāng)庫(kù),能很好地實(shí)現(xiàn)數(shù)據(jù)共享,能維護(hù)數(shù)據(jù)的一致性。數(shù)據(jù)庫(kù)設(shè)計(jì)是系統(tǒng)設(shè)計(jì)的一個(gè)重要內(nèi)容,其設(shè)計(jì)質(zhì)量的好壞直接影響系統(tǒng)開(kāi)發(fā)的成敗,系統(tǒng)的質(zhì)量,系統(tǒng)效率及可維護(hù)性。</p><p> 在本系統(tǒng)的設(shè)計(jì)中,充分考慮到了管理系統(tǒng)數(shù)據(jù)繁雜,重復(fù)性很大,數(shù)據(jù)使用頻繁。因此本系統(tǒng)采用了一種能正確反
67、映用戶實(shí)現(xiàn)環(huán)境,能被現(xiàn)行系統(tǒng)接受,易于維護(hù)、效率高的數(shù)據(jù)管理方法--數(shù)據(jù)庫(kù)系統(tǒng)。</p><p> 數(shù)據(jù)模型是指數(shù)據(jù)庫(kù)中記錄與記錄之間聯(lián)系的數(shù)據(jù)結(jié)構(gòu)形成的。不同的數(shù)據(jù)管理系統(tǒng)有不同的數(shù)據(jù)模型,數(shù)據(jù)庫(kù)設(shè)計(jì)的核心問(wèn)題是設(shè)計(jì)好的數(shù)據(jù)模型。在目前的數(shù)據(jù)庫(kù)管理系統(tǒng)中有層次模型,網(wǎng)狀模型、關(guān)系模型三種數(shù)據(jù)模型。其中,關(guān)系模型具有較高的數(shù)據(jù)獨(dú)立性,使用也較為方便。本設(shè)計(jì)采用關(guān)系數(shù)據(jù)庫(kù)。該數(shù)據(jù)庫(kù)實(shí)行增、刪、編輯、統(tǒng)計(jì)。顯示和打
68、印都極為方便。其中的排序和索引功能,對(duì)數(shù)據(jù)快速定位,查詢提供了有利條件。交流互動(dòng)對(duì)于本系統(tǒng)的數(shù)據(jù)庫(kù)設(shè)計(jì)有以下幾點(diǎn)說(shuō)明:數(shù)據(jù)庫(kù)設(shè)計(jì)兼顧前面設(shè)計(jì)的數(shù)據(jù)流程圖,管理信息系統(tǒng)的設(shè)計(jì)并不是以數(shù)據(jù)庫(kù)為核心的數(shù)據(jù)庫(kù)應(yīng)用設(shè)計(jì),本系統(tǒng)的數(shù)據(jù)庫(kù)設(shè)計(jì)盡量滿足3NF(第三范式)的要求,本系統(tǒng)的數(shù)據(jù)庫(kù)設(shè)計(jì)以提高系統(tǒng)運(yùn)行效率為前提。</p><p> 4.3.1 數(shù)據(jù)庫(kù)概念結(jié)構(gòu)設(shè)計(jì)</p><p> 在系統(tǒng)設(shè)計(jì)的
69、開(kāi)始,我首先考慮的是如何用數(shù)據(jù)模型來(lái)數(shù)據(jù)庫(kù)的結(jié)構(gòu)與語(yǔ)義,以對(duì)現(xiàn)實(shí)世界進(jìn)行抽象。目前廣泛使用的數(shù)據(jù)模型可分為兩種類型,一種是獨(dú)立于計(jì)算機(jī)系統(tǒng)的“概念數(shù)據(jù)模型”,如“實(shí)體聯(lián)系模型”;另一種是直接面向數(shù)據(jù)庫(kù)邏輯結(jié)構(gòu)的“結(jié)構(gòu)數(shù)據(jù)模型”。在本系統(tǒng)中我采用“實(shí)體聯(lián)系模型”(ER模型)來(lái)描述數(shù)據(jù)庫(kù)的結(jié)構(gòu)與語(yǔ)義,以對(duì)現(xiàn)實(shí)世界進(jìn)行第一次抽象。ER模型直接從現(xiàn)實(shí)世界抽象出實(shí)體類型及實(shí)體間聯(lián)系,然后用ER圖來(lái)表示數(shù)據(jù)模型。它有兩個(gè)明顯的優(yōu)點(diǎn):接近于人的思維,
70、容易理解;與計(jì)算機(jī)無(wú)關(guān),用戶容易接受。但它只是數(shù)據(jù)庫(kù)設(shè)計(jì)的第一步。</p><p> E-R圖是直觀表示概念模型的工具,它有三個(gè)基本成分:</p><p> ?。?)矩形框,表示實(shí)體類型(考慮問(wèn)題的對(duì)象)。</p><p> ?。?)菱形框,表示聯(lián)系類型(實(shí)體間的聯(lián)系)。</p><p> ?。?)橢圓形框,表示實(shí)體的屬性。</p&
71、gt;<p> 實(shí)體和屬性的定義如下:</p><p> 管理員表(登陸ID,登錄姓名,登錄密碼)</p><p> 站名表(站名編號(hào),站名)</p><p> 車輛線路編號(hào)表(車次,車線類型)</p><p> 線路表(線路編號(hào),車次,站名,次序)</p><p> 車輛表(車輛編號(hào),車次,
72、車輛類型,服務(wù)類型,票價(jià),IC卡類型,運(yùn)行區(qū)間)</p><p> 冬季發(fā)車時(shí)間表(車次,編號(hào),首班時(shí)間,末班時(shí)間)</p><p> 夏季發(fā)車時(shí)間表(車次,編號(hào),首班時(shí)間,末班時(shí)間)</p><p> 各實(shí)體屬性圖如圖4-2所示。</p><p> 圖4-2 實(shí)體屬性關(guān)系圖</p><p> 本系統(tǒng)的總體E
73、-R圖如圖4-3所示。</p><p> 4.3.2數(shù)據(jù)庫(kù)邏輯結(jié)構(gòu)設(shè)計(jì)</p><p> 本系統(tǒng)采用的數(shù)據(jù)庫(kù)管理系統(tǒng)是Microsoft公司的SQL Server 2005。該管理系統(tǒng)由一系列產(chǎn)品組成,不僅能夠滿足最大的數(shù)據(jù)處理系統(tǒng)和商業(yè) Web 站點(diǎn)存儲(chǔ)數(shù)據(jù)的需要,還能為個(gè)人或小企業(yè)提供易于使用的數(shù)據(jù)存儲(chǔ)服務(wù)。</p><p> Microsoft SQL
74、Server 2005 的特性包括: </p><p><b> ?。?)企業(yè)數(shù)據(jù)管理</b></p><p> 在當(dāng)今的互聯(lián)世界中,數(shù)據(jù)和管理數(shù)據(jù)的系統(tǒng)必須始終為用戶可用且能夠確保安全。有了 SQL Server 2005,組織內(nèi)的用戶和信息技術(shù) (IT) 專家將從減少的應(yīng)用程序停機(jī)時(shí)間、提高的可伸縮性及性能、更緊密而靈活的安全控制中獲益。SQL Server 2
75、005 也包括了許多新的和改進(jìn)的功能來(lái)幫助 IT 工作人員更有效率地工作。SQL Server 2005 包含幾個(gè)在企業(yè)數(shù)據(jù)管理中關(guān)鍵的增強(qiáng):易管理性、可用性、可伸縮性、安全性。</p><p> SQL Server 2005 使部署、管理和優(yōu)化企業(yè)數(shù)據(jù)以及分析應(yīng)用程序變得更簡(jiǎn)單、更容易。作為一個(gè)企業(yè)數(shù)據(jù)管理平臺(tái),它提供單一管理控制臺(tái),使數(shù)據(jù)管理員能夠在任何地方監(jiān)視、管理和調(diào)諧企業(yè)中所有的數(shù)據(jù)庫(kù)和相關(guān)的服務(wù)。
76、它還提供了一個(gè)可以使用 SQL 管理對(duì)象輕松編程的可擴(kuò)展的管理基礎(chǔ)結(jié)構(gòu),使得用戶可以定制和擴(kuò)展他們的管理環(huán)境,同時(shí)使獨(dú)立軟件供應(yīng)商 (ISV) 也能夠創(chuàng)建附加的工具和功能來(lái)更好地?cái)U(kuò)展打開(kāi)即得的能力。</p><p> (2)SQL Server Management Studio</p><p> SQL Server 2005 通過(guò)提供一個(gè)集成的管理控制臺(tái)來(lái)監(jiān)視和管理 SQL Ser
77、ver 關(guān)系數(shù)據(jù)庫(kù)、Integration Services、Analysis Services、Reporting Services、Notification Services 以及在數(shù)量眾多的分布式服務(wù)器和數(shù)據(jù)庫(kù)上的 SQL Server Mobile Edition,從而簡(jiǎn)化了管理工作。數(shù)據(jù)庫(kù)管理員能夠同時(shí)執(zhí)行多個(gè)任務(wù),例如,編寫(xiě)和執(zhí)行查詢,查看服務(wù)器對(duì)象,管理對(duì)象,監(jiān)視系統(tǒng)活動(dòng)和查看聯(lián)機(jī)幫助。SQL Server Managem
78、ent Studio 提供了一個(gè)開(kāi)發(fā)環(huán)境,可在其中使用 Transact-SQL、多維表達(dá)式、XML for Analysis 和 SQL Server Mobile Edition 來(lái)編寫(xiě)、編輯和管理腳本和存儲(chǔ)過(guò)程。Management Studio 可以很容易地與源代碼控制集成在一起。Management Studio 還包括一些工具可用來(lái)調(diào)度 SQL Server 代理作業(yè)和管理維護(hù)計(jì)劃,以自動(dòng)執(zhí)行日常維護(hù)和操作任務(wù)。管理和腳本編
79、寫(xiě)集成在單一工具中,同時(shí),該工具</p><p> SQL Server 2005 開(kāi)放了 70 多個(gè)新的內(nèi)部數(shù)據(jù)庫(kù)性能和資源使用的度量值,涵蓋了從內(nèi)存、鎖定到對(duì)事務(wù)、網(wǎng)絡(luò)和磁盤 I/O 的調(diào)度等。這些動(dòng)態(tài)管理視圖 (DMV) 提供了對(duì)數(shù)據(jù)庫(kù)和強(qiáng)大的基礎(chǔ)結(jié)構(gòu)的更大的透明度和可見(jiàn)性,可以主動(dòng)監(jiān)視數(shù)據(jù)庫(kù)的狀況和性能。</p><p> ?。?)SQL 管理對(duì)象</p><
80、p> SQL 管理對(duì)象 (SMO) 是一個(gè)新的可編程對(duì)象集,它可實(shí)現(xiàn)所有 SQL Server 數(shù)據(jù)庫(kù)的管理功能。事實(shí)上,Management Studio 就是構(gòu)建在 SQL 管理對(duì)象之上的。SMO 是作為 Microsoft .NET Framework 程序集實(shí)現(xiàn)的。您可以使用 SMO 自動(dòng)執(zhí)行常見(jiàn)的 SQL Server 管理任務(wù),例如,用編程方式檢索配置設(shè)置,創(chuàng)建新數(shù)據(jù)庫(kù),應(yīng)用 Transact-SQL 腳本,創(chuàng)建 S
81、QL Server 代理作業(yè)以及調(diào)度備份等。SMO 對(duì)象模型替代了包含在 SQL Server 早期版本中的分布式管理對(duì)象 (DMO),因?yàn)樗踩煽坎⒕哂懈叩目缮炜s性。</p><p><b> (4)可用性</b></p><p> 在高可用性技術(shù)、額外的備份和恢復(fù)功能,以及復(fù)制增強(qiáng)上的投資使企業(yè)能夠構(gòu)建和部署高可用的應(yīng)用程序。在高可用性上的創(chuàng)新有:數(shù)據(jù)庫(kù)
82、鏡像、故障轉(zhuǎn)移群集、數(shù)據(jù)庫(kù)快照和增強(qiáng)的聯(lián)機(jī)操作,這有助于最小化停機(jī)時(shí)間,并確??梢栽L問(wèn)關(guān)鍵的企業(yè)系統(tǒng)。本節(jié)將詳細(xì)介紹這些增強(qiáng)特性。</p><p><b> ?。?)數(shù)據(jù)庫(kù)鏡像</b></p><p> 數(shù)據(jù)庫(kù)鏡像允許事務(wù)日志以連續(xù)的方式從源服務(wù)器傳遞到單臺(tái)目標(biāo)服務(wù)器上。當(dāng)主系統(tǒng)出現(xiàn)故障時(shí),應(yīng)用程序可以立即重新連接到輔助服務(wù)器上的數(shù)據(jù)庫(kù)。輔助實(shí)例幾秒鐘內(nèi)即可檢測(cè)到主
83、服務(wù)器發(fā)生了故障,并能立即接受數(shù)據(jù)庫(kù)連接。數(shù)據(jù)庫(kù)鏡像工作在標(biāo)準(zhǔn)服務(wù)器硬件下,不需要特定的存儲(chǔ)或控制器。</p><p> 本系統(tǒng)創(chuàng)建的SQL數(shù)據(jù)庫(kù)名稱為城市公交查詢系統(tǒng)。并將數(shù)據(jù)文件和日志文件保存在公交查詢系統(tǒng)APP_DATA文件夾中。此數(shù)據(jù)庫(kù)包含7個(gè)表:</p><p> ?、俟芾韱T表(LoginTable)</p><p> 管理員表存放登陸系統(tǒng)所需要的用戶
84、名和密碼,登錄后臺(tái)時(shí)需要訪問(wèn)此表。</p><p><b> 表4-1 管理員表</b></p><p><b> ?、谡久?lt;/b></p><p> 站名表存放站名等數(shù)據(jù),修改站名需要訪問(wèn)此表。</p><p><b> 表4-2 站名表</b></p>
85、<p><b> ③車輛線路編號(hào)表</b></p><p> 車輛線路編號(hào)表存放線路編號(hào)等數(shù)據(jù),修改車輛線路編號(hào)將要訪問(wèn)此表。</p><p> 表4-3 車輛線路編號(hào)表</p><p><b> ?、芫€路表</b></p><p> 線路表存放公交車線路的數(shù)據(jù),修改車輛線路需要
86、訪問(wèn)此表。</p><p><b> 表4-4線路表</b></p><p><b> ?、蒈囕v表</b></p><p> 車輛表存放車輛的相關(guān)信息,修改車輛等相關(guān)信息需要訪問(wèn)此表。</p><p><b> 表4-5 車輛表</b></p><p&
87、gt; ?、尴募景l(fā)車時(shí)刻表沈陽(yáng)王子科技 專業(yè)畢業(yè)設(shè)計(jì)培訓(xùn) 想了解我們 請(qǐng)登錄我們的官方網(wǎng)站:www.wangzikeji.com </p><p> 此系列論文均免費(fèi)下載,如果你使用了我們的論文,你可以把頁(yè)眉改掉,但是請(qǐng)你告訴你身邊的好朋友,此論文來(lái)自王子科技,我們衷心的表示感謝!QQ:45789022 電話 13898863631 王經(jīng)理</p><p> 夏季發(fā)車時(shí)刻表存放夏季發(fā)車
88、的時(shí)間,修改夏季發(fā)車時(shí)間需要訪問(wèn)此表。</p><p> 表4-6 夏季發(fā)車時(shí)刻表</p><p><b> ?、叨景l(fā)車時(shí)刻表</b></p><p> 冬季發(fā)車時(shí)刻表存放冬季發(fā)車的時(shí)間,修改冬季發(fā)車時(shí)間需要訪問(wèn)此表。</p><p> 表4-7 冬季發(fā)車時(shí)刻表</p><p> 第5章
89、 詳細(xì)設(shè)計(jì)與實(shí)現(xiàn)</p><p> 5.1 前臺(tái)功能的實(shí)施</p><p> 5.1.1連接數(shù)據(jù)庫(kù)的包含文件</p><p> 在動(dòng)態(tài)網(wǎng)站中,調(diào)用數(shù)據(jù)庫(kù)中的數(shù)據(jù)是十分頻繁的,為了避免編寫(xiě)重復(fù)的代碼。編寫(xiě)一個(gè)數(shù)據(jù)庫(kù)連接文件是非常重要的。DB.cs文件中包含了本系統(tǒng)中的數(shù)據(jù)庫(kù)的連接代碼。本系統(tǒng)的數(shù)庫(kù)的連接代碼如下:</p><p> pu
90、blic static SqlConnection createConnection()</p><p><b> {</b></p><p> SqlConnection con=new SqlConnection("server=.;database=城市公交查詢系統(tǒng);uid=sa;pwd=;");</p><p>
91、 return con;</p><p><b> }</b></p><p> 5.1.2按線路查詢</p><p> 線路查詢模塊:用戶進(jìn)入系統(tǒng)后,在線路查詢模塊的輸入框中輸入要查詢的線路,點(diǎn)擊查詢按鈕,系統(tǒng)首先檢查用戶所查詢的線路是否存在,如果不存在給出出錯(cuò)提示,如果存在給出這條線路的相關(guān)信息,如:雙向早晚車的工作時(shí)間,票價(jià),經(jīng)過(guò)
92、的站點(diǎn)。如線路存在,進(jìn)入線路界面如圖5-1所示:</p><p><b> 圖5-1 線路查詢</b></p><p><b> 主要實(shí)現(xiàn)代碼如下:</b></p><p> SqlCommand cmdsj=new SqlCommand(cmdstring,con);</p><p> S
93、qlDataReader sdrsj=cmdsj.ExecuteReader();</p><p> while(sdrsj.Read()){string linetemp1=sdrsj["首班時(shí)間"].ToString();</p><p> string linetemp2=sdrsj["末班時(shí)間"].ToString();</p>
94、;<p> line+="<font size=3>(首班時(shí)間為:"+linetemp1+" ";</p><p> line+="末班時(shí)間為:"+linetemp2+")</font><br>";}</p><p> SqlCommand cmd=n
95、ew SqlCommand("select * from 公交車線路表where 車次="+num+"order by 次序ASC",con);SqlDataReader sdr=cmd.ExecuteReader();</p><p> try{while(sdr.Read()){line+=sdr["站名"].ToString();</p&g
96、t;<p> line=line.Replace(sdr["站名"].ToString(),"<font color=red>"+sdr["站名"].ToString()+"</font>");</p><p> line+="-->";}}</p>&
97、lt;p> finally{dr.Close();con.Close();}</p><p><b> int i;</b></p><p> i=Convert.ToInt32(line.Length);</p><p> line=line.Substring(0,i-3); }</p><p> 5
98、.1.3按站點(diǎn)查詢</p><p> 站點(diǎn)查詢模塊:用戶進(jìn)入系統(tǒng)后,在站點(diǎn)查詢模塊中有二種選擇,第一個(gè)是按站點(diǎn)的確切信息也就是完全匹配查詢,此時(shí)用戶要給出站點(diǎn)的全稱,當(dāng)點(diǎn)擊查詢按鈕后,系統(tǒng)會(huì)在數(shù)據(jù)庫(kù)中檢測(cè)該站點(diǎn)是否存在,如果存在,系統(tǒng)顯示這個(gè)站點(diǎn)的相關(guān)信息。比如:經(jīng)過(guò)這個(gè)站點(diǎn)共有哪些線路,這些線路又各經(jīng)過(guò)哪些站點(diǎn),第二個(gè)選擇是站點(diǎn)的模糊查詢,也就是不完全匹配,用戶只需輸入站點(diǎn)名稱和部分字符信息,系統(tǒng)便會(huì)給出與此
99、相關(guān)的所有站點(diǎn)信息。當(dāng)輸入確切站點(diǎn)后,進(jìn)入的界面如圖5-2所示:</p><p><b> 圖5-2 站點(diǎn)查詢</b></p><p><b> 主要實(shí)現(xiàn)代碼如下:</b></p><p> SqlCommand cmd=new SqlCommand("SELECT 車次FROM 公交車線路表 WHERE
100、站名='"+a+"'",con);</p><p> SqlDataReader sdr=cmd.ExecuteReader();</p><p> while(sdr.Read()){alS.Add(sdr.GetValue(0));}</p><p> cmd.CommandText="SELECT
101、車次FROM 公交車線路表WHERE 站名='"+b+"'";</p><p> SqlDataReader sdr1=cmd.ExecuteReader();</p><p> while(sdr1.Read()){alE.Add(sdr1.GetValue(0));}</p><p> for(int
102、i=0;i<alS.Count;i++){for(int j=0;j<alE.Count;j++){</p><p> if(alS[i].ToString()==alE[j].ToString()){alNum.Add(alE[j]); }}}</p><p> 5.1.4按兩站點(diǎn)查詢</p><p> 兩站點(diǎn)查詢模塊:用戶進(jìn)入系統(tǒng)后,在主
103、頁(yè)面的換乘查詢模塊中有兩種選擇,第一是直達(dá),第二個(gè)是一次換乘。用戶可以在起點(diǎn)站輸入框中輸入自已的出發(fā)點(diǎn),然后在終點(diǎn)站輸入框輸入出行的終點(diǎn),如果選擇直達(dá),系統(tǒng)便會(huì)檢測(cè)這兩個(gè)站點(diǎn)間是否有直達(dá)車,如果沒(méi)有直達(dá)車,系統(tǒng)會(huì)給出相關(guān)提示,那么用戶便可以選擇一次換乘,系統(tǒng)會(huì)檢測(cè)是否有一次換乘方案,如果有系統(tǒng)會(huì)給出所換乘方案。界面如圖5-3,5-4所示:</p><p><b> 圖5-3 兩點(diǎn)查詢</b>
104、;</p><p><b> 圖5-4 兩點(diǎn)查詢</b></p><p><b> 主要實(shí)現(xiàn)代碼如下:</b></p><p> if(cixuS<cixuE) {zhanmNum=cixuE-cixuS+1;</p><p> cmd.CommandText="SELECT
105、 站名FROM 公交車線路表WHERE 次序BETWEEN "+cixuS+" AND "+cixuE+" AND 車次="+alNum[k].ToString()+" ORDER BY 次序ASC";}</p><p> else{zhanmNum=cixuS-cixuE+1;</p><p> cmd.Comma
106、ndText="SELECT 站名FROM 公交車線路表WHERE 次序BETWEEN "+cixuE+" AND "+cixuS+" AND 車次="+alNum[k].ToString()+" ORDER BY 次序DESC";}</p><p> str+="<font color=red>"
107、+alNum[k].ToString()+"</font>";</p><p> str+="路(總共經(jīng)過(guò)<font color=red>"+zhanmNum.ToString()+"</font>個(gè)站)";</p><p> 5.2后臺(tái)管理功能的實(shí)現(xiàn)</p><
108、p> 5.2.1新增車次線路</p><p> 此模塊為管理員操作,如當(dāng)?shù)爻霈F(xiàn)新的公交線路,或原有公交車線路有新的站點(diǎn)加入,管理員可以登陸此表,及時(shí)添加線路和站點(diǎn)的信息,以保證車次線路的及時(shí)更新,方便用戶查詢。添加的界面如圖5-5,5-6所示:</p><p><b> 圖5-5 新增車次</b></p><p> 圖5-6新增線
109、路站名</p><p><b> 主要實(shí)現(xiàn)代碼如下:</b></p><p> if(Check()){int maxChelNo=GetMaxChelNo();</p><p> SqlConnection con=DB.createConnection();</p><p> con.Open();</
110、p><p> SqlCommand cmd=new SqlCommand("INSERT INTO 車輛線路編號(hào)表(車次,車線類型)VALUES(@車次,@車線類型)",con);</p><p> SqlParameter para=new SqlParameter("@車次",SqlDbType.Int,4);</p><p&
111、gt; para.Value=Convert.ToInt32(this.txtCheci.Text.Trim());</p><p> cmd.Parameters.Add(para);</p><p> para=new SqlParameter("@車線類型",SqlDbType.NVarChar,50);</p><p> para
112、.Value=this.ddlLineType.SelectedValue;</p><p> cmd.Parameters.Add(para);</p><p> cmd.ExecuteNonQuery();</p><p> cmd.CommandText="INSERT INTO 車輛表(車輛編號(hào),車次,車輛類型,服務(wù)類型,IC卡類型,票價(jià),運(yùn)
溫馨提示
- 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ù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 公交查詢系統(tǒng)畢業(yè)論文
- 畢業(yè)論文---城市公交查詢系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)
- 城市公交查詢系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)畢業(yè)論文
- 畢業(yè)論文——城市公交查詢系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)
- 城市公交查詢系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)畢業(yè)論文
- 公交查詢系統(tǒng)畢業(yè)論文 (2)
- 基于java的城市公交查詢系統(tǒng)畢業(yè)論文
- 城市公交查詢系統(tǒng)畢業(yè)論文最終版.doc
- 城市公交查詢系統(tǒng)畢業(yè)設(shè)計(jì)
- 畢業(yè)論文(設(shè)計(jì))基于web的城市公交查詢系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)
- 畢業(yè)設(shè)計(jì)論文 公交查詢系統(tǒng)設(shè)計(jì)
- 基于java的公交查詢系統(tǒng) ——畢業(yè)論文
- 基于net的城市公交查詢系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)——畢業(yè)論文
- 基于net的城市公交查詢系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)——畢業(yè)論文
- 畢業(yè)論文——基于net的城市公交查詢系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)
- 城市公交查詢系統(tǒng).doc
- 畢業(yè)設(shè)計(jì)--公交查詢系統(tǒng)
- 任文健畢業(yè)論文(公交查詢系統(tǒng)).doc
- 城市公交查詢系統(tǒng).doc
- 城市公交查詢系統(tǒng).doc
評(píng)論
0/150
提交評(píng)論