版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、 公交查詢系統(tǒng)的設(shè) 計(jì)與實(shí)現(xiàn)班級:12物聯(lián)網(wǎng)工程學(xué)號:1201141057姓名:鄭秀成日期:2014年12月15日 引言隨著因特網(wǎng)發(fā)展的日新月異,人們利用網(wǎng)絡(luò)實(shí)現(xiàn)資源共享以及協(xié)同工作越來越成為時(shí)代的潮流,使用各種網(wǎng)上的軟件方便生活,已經(jīng)成為了一個(gè)不可扭轉(zhuǎn)的趨勢。以此設(shè)計(jì)題目為目的,選擇鄭州市作為實(shí)踐對象,以鄭州市公交系統(tǒng)為基礎(chǔ),再利用所學(xué)知識,熟練運(yùn)用開發(fā)工具后,開發(fā)一個(gè)鄭州市手機(jī)公交線路查詢軟件,并且盡可能將其開發(fā)為一個(gè)方便大眾使用的公交線路查詢軟件。而且在當(dāng)今公交出行線路多數(shù)是通過PC機(jī)查詢獲得的,但是假想一下在公交出行線路走到一半的時(shí)候計(jì)劃有所變化,公交出行線路需要有所調(diào)整,那么如何能夠
2、動態(tài)掌握線路信息顯得尤為重要,而且將來對生活的滿意度也不僅僅是百姓致富安居樂業(yè)就足以,而是逐漸趨向于一個(gè)更人性化的服務(wù)。城市交通服務(wù)以及附屬的一些服務(wù)一直都在不斷的隨著社會的進(jìn)步而進(jìn)步,這些服務(wù)從最開始的直接人力服務(wù)轉(zhuǎn)向技術(shù)型服務(wù),如電話詢問,路牌等,然而這些服務(wù)總是有比較大的局限性,即縱然你知道了這條路該怎么走,下條路線該通到哪卻不知,于是開發(fā)這個(gè)手機(jī)公交線路查詢軟件,可在手機(jī)上隨時(shí)隨地對公交線路進(jìn)行查詢,對用戶將要出行的路線了如指掌,這對用戶來說可以省去很多麻煩,節(jié)省不少時(shí)間。本次畢業(yè)設(shè)計(jì)結(jié)合鄭州市公交線路系統(tǒng)開發(fā)一個(gè)鄭州公交線路手機(jī)查詢軟件,服務(wù)于大眾。 目錄第一章 需求分析與概要設(shè)計(jì)1
3、1.1 可行性分析11.2需求分析1系統(tǒng)功能需求21.2.2 服務(wù)器端需求分析21.2.3 客戶端需求分析31.2.4 開發(fā)環(huán)境及工具需求分析41.3 概要設(shè)計(jì)41.3.1 開發(fā)流程41.3.2 系統(tǒng)數(shù)據(jù)流圖51.3.3 系統(tǒng)整體結(jié)構(gòu)說明61.3.4 系統(tǒng)功能模塊的劃分7第二章 模式設(shè)計(jì)102.1 C/S模式簡介102.2 B/S模式簡介102.3 B/S-C/S模式112.3.1 B/S-C/S模式定義112.3.2 B/S-C/S模式特點(diǎn)12第三章 數(shù)據(jù)庫設(shè)計(jì)133.1 數(shù)據(jù)庫結(jié)構(gòu)133.2 服務(wù)器數(shù)據(jù)庫設(shè)計(jì):133.3 客戶端數(shù)據(jù)庫設(shè)計(jì):173.3.1 SQLite簡介173.
4、3.2 數(shù)據(jù)庫設(shè)計(jì)18第四章 系統(tǒng)測試204.1系統(tǒng)測試方案204.2 性能分析20總結(jié)21第1章 需求分析與概要設(shè)計(jì)1.1 可行性分析可行性分析是對系統(tǒng)進(jìn)行全面、概要的分析。它的任務(wù)是確定項(xiàng)目開發(fā)時(shí)是否必要和可行。它的主要目標(biāo)是:進(jìn)一步明確系統(tǒng)的目標(biāo)、規(guī)模和功能,對系統(tǒng)開發(fā)背景、必要性和意義進(jìn)行調(diào)查分析,并且提出系統(tǒng)的邏輯模型和各種可能的方案,從而為系統(tǒng)開發(fā)項(xiàng)目的決策提供科學(xué)依據(jù)。主要從三個(gè)方面進(jìn)行研究:(1)技術(shù)可行性:以現(xiàn)有技術(shù)進(jìn)行系統(tǒng)開發(fā)及系統(tǒng)實(shí)施,是完全可行的。首先,從自身來分析,經(jīng)過2年多的學(xué)習(xí)已經(jīng)初步掌握了JSP控件、SQL數(shù)據(jù)庫等方面的編程技巧,對該軟件的設(shè)計(jì)并不存在
5、技術(shù)上的難點(diǎn)。第二方面,在設(shè)計(jì)這個(gè)系統(tǒng)之前,我進(jìn)行了一系列先期調(diào)研,查閱了有關(guān)使用JSP進(jìn)行數(shù)據(jù)庫開發(fā)方面的論著、教材和論文,更多是利用網(wǎng)絡(luò)的便利條件,從網(wǎng)上查閱了北京、上海、廣州、昆明等大型城市的公交查詢系統(tǒng),并認(rèn)真地對其進(jìn)行了分析研究,由于時(shí)間緊,任務(wù)重,我沒有更多的時(shí)間來開發(fā)完整的系統(tǒng),所以就以查詢作為這個(gè)系統(tǒng)的核心。其次,從數(shù)據(jù)庫方面來分析,也是可行的。系統(tǒng)所建立的數(shù)據(jù)庫表中包含有五個(gè)字段:bus_number,bus_station1, bus_station2, bus_station3, bus_station4。bus_number用來存放車次,bus_station1, bu
6、s_station2, bus_station3, bus_station4這四個(gè)字段用來存放站點(diǎn)。(2)經(jīng)濟(jì)可行性:從這方面來說,本系統(tǒng)的開發(fā)作為課題來說不需要什么經(jīng)濟(jì)投入,因此來說也是可行的。(3)營運(yùn)可行性:國內(nèi)很早就開始應(yīng)用公交查詢系統(tǒng),我國大部分城市都有公交查詢系統(tǒng)。那么從這方面來說是可行的。1.2需求分析手機(jī)公交線路查詢軟件最基本的功能是能夠有效的為用戶提供查詢服務(wù),在最短的時(shí)間內(nèi)給用戶一條或多條到達(dá)目標(biāo)地的路徑。整個(gè)查詢過程中,只有數(shù)據(jù)信息是依靠服務(wù)器同步獲取,其余功能均在手機(jī)端完成。在此分別對手機(jī)公交線路查詢軟件的服務(wù)器端和客戶端做需求分析。系統(tǒng)功能需求 本系統(tǒng)的用戶包括用戶和
7、管理員兩類,其中管理人員對此系統(tǒng)進(jìn)行數(shù)據(jù)的修改、刪除、查找、添加路線以及發(fā)布公交動態(tài)等功能。而用戶則可運(yùn)用本系統(tǒng)合理有效的查詢路線、安排行程。功能規(guī)劃:本系統(tǒng)有兩大功能:查詢功能以及更新維護(hù)功能。其中查詢功能包括站站查詢功能、車次查詢功能、公交站點(diǎn)車次查詢?nèi)?xiàng)基本功能。功能描述:a.站站查詢:乘客通過輸入起點(diǎn)和終點(diǎn)的站名,那么通過這兩個(gè)車站的所有車次就會顯示出來供乘客選擇合適的乘車路線b.車次查詢:乘客通過輸入公交車車次就可以查詢出該車次經(jīng)過的所有站點(diǎn),乘客可以根據(jù)站點(diǎn)來選擇自己的乘車路線c.公交站點(diǎn)車次查詢:這種方案一般針對不城市公交不熟悉的人,通過輸入站點(diǎn)或者車次就可以同時(shí)顯示站點(diǎn)和車次兩
8、種信息,根據(jù)這個(gè)就可以選出最佳的乘車方案。d.更新維護(hù):管理員負(fù)責(zé)對公交路線修改和更新,以及系統(tǒng)的維護(hù),同時(shí)公布最新的變動信息(包括車次變動和價(jià)格變動等)或者有關(guān)城市公交的新聞對性能的一般性規(guī)定:1靈活性:當(dāng)要對系統(tǒng)進(jìn)行添加數(shù)據(jù)或刪除、更新等操作時(shí),可以容易地對系統(tǒng)進(jìn)行操作,并且不影響系統(tǒng)的正常運(yùn)行,更不會有任何出錯的現(xiàn)象。2數(shù)據(jù)精確:因?yàn)榇藬?shù)據(jù)為系統(tǒng)內(nèi)部數(shù)據(jù),所以要求不能有誤差。3時(shí)間特性:系統(tǒng)應(yīng)有即時(shí)性,能盡快查詢出所需結(jié)果1.2.2 服務(wù)器端需求分析服務(wù)器作為后臺,需要專業(yè)人員對服務(wù)器操作和維護(hù),一般情況可由非專業(yè)人員借助管理軟件對服務(wù)器進(jìn)行常規(guī)維護(hù)。服務(wù)器可以通過數(shù)據(jù)庫同步,為客戶端數(shù)
9、據(jù)庫提供數(shù)據(jù)。通過仔細(xì)分析服務(wù)器需求之后,服務(wù)器端要完成以下功能:1、服務(wù)器后臺管理功能服務(wù)器后臺管理是針對數(shù)據(jù)庫進(jìn)行操作,具有增、刪、改、查功能。2、數(shù)據(jù)同步功能。采用Servlet技術(shù),響應(yīng)客戶端請求,返回給客戶端一端數(shù)據(jù)流,該數(shù)據(jù)流按照Xml語言規(guī)范寫入數(shù)據(jù)流。服務(wù)器端功能模塊劃分如圖1.1.1所示。圖 服務(wù)器端功能模塊圖1.2.3 客戶端需求分析客戶端主要是手機(jī),用戶無法通過手機(jī)對本地?cái)?shù)據(jù)庫進(jìn)行操作,也無法對服務(wù)器數(shù)據(jù)庫操作,管理員可以通過手機(jī)瀏覽器登錄到服務(wù)器管理員頁面對數(shù)據(jù)庫進(jìn)行操作,可以使用一些功能。該軟件應(yīng)滿足若干要求,比如能夠隨時(shí)掌握公交信息,動態(tài)更新最新數(shù)據(jù)等。也要考慮作為
10、手機(jī)軟件可能會出現(xiàn)查詢速度慢,數(shù)據(jù)流量過大,過度依賴服務(wù)器等問題。通過仔細(xì)分析用戶需求之后,該軟件要完成以下功能:1、查詢線路功能獲得線路經(jīng)過的每個(gè)站點(diǎn)信息以及線路的票價(jià)信息和發(fā)車時(shí)間信息。2、地圖查詢功能借助GoogleMap,完成公交查詢并顯示地圖線路。3、數(shù)據(jù)更新功能服務(wù)器響應(yīng)客戶端請求返回一段數(shù)據(jù)流,客戶端接收此數(shù)據(jù)流后,按照Xml語言規(guī)范對數(shù)據(jù)流進(jìn)行解析,解析后將數(shù)據(jù)存入客戶端數(shù)據(jù)庫。4、意見反饋功能通過手機(jī)郵件將意見發(fā)送到管理員的郵箱。 客戶端功能模塊劃分如圖1.1.2所示。圖1.2.2 客戶端功能模塊圖1.2.4 開發(fā)環(huán)境及工具需求分析服務(wù)器端開發(fā)環(huán)境,以windows7操作系統(tǒng)
11、為開發(fā)平臺,用Tomcat6.0做為服務(wù)器,Mysql5.0作為數(shù)據(jù)源,JSP作為開發(fā)工具,Dreamweaver8.0作為輔助開發(fā)工具,運(yùn)行在一般的PC機(jī)上即可??蛻舳碎_發(fā)環(huán)境,以Android手機(jī)操作系統(tǒng)為開發(fā)平臺,用Android手機(jī)操作系統(tǒng)自帶的SQLite作為數(shù)據(jù)源。Java語言和Xml語言作為開發(fā)工具,Eclipse3.5作為輔助開發(fā)工具。整個(gè)Android手機(jī)操作系統(tǒng)是在Android SDK提供的虛擬機(jī)中運(yùn)行,該虛擬機(jī)運(yùn)行在windows7操作系統(tǒng)上,所以客戶端的開發(fā)是在windows7操作系統(tǒng)上運(yùn)行的Android操作系統(tǒng)中進(jìn)行的二次開發(fā)。1.3 概要設(shè)計(jì)1.3.1 開發(fā)流程
12、開發(fā)流程如圖1.3.1所示。運(yùn)行測試調(diào)試程序編寫程序確定功能調(diào)查研究優(yōu)化完善圖1.3.1 開發(fā)流程圖1.3.2 系統(tǒng)數(shù)據(jù)流圖系統(tǒng)數(shù)據(jù)流程如圖1.3.2所示。圖1.3.2 系統(tǒng)數(shù)據(jù)流圖1.3.3 系統(tǒng)整體結(jié)構(gòu)說明該系統(tǒng)包括前臺和后臺兩部分,主要包括用登陸、站點(diǎn)輸入、線路輸出、站點(diǎn)修改、線路更新等功能。系統(tǒng)的整體功能模塊圖如圖1.2.3所示:圖整體功能模塊圖1.3.4 系統(tǒng)功能模塊的劃分公交查詢系統(tǒng)功能劃分模塊如下:1)查詢系統(tǒng)模塊 該模塊實(shí)現(xiàn)公交查詢功能??蓪?shí)現(xiàn)按起點(diǎn)中轉(zhuǎn)站終點(diǎn)查詢查詢和按線路查詢兩種查詢方式。圖查詢系統(tǒng)模塊2)錄入系統(tǒng)模塊 該模塊實(shí)現(xiàn)數(shù)據(jù)的錄入、修改、刪除功能。該模塊由公交站點(diǎn)
13、管理與公交線路管理兩部分組成.詳細(xì)設(shè)計(jì)視圖如圖錄入系統(tǒng)模塊所示:圖錄入系統(tǒng)模塊3)信息輸入輸出模塊如圖所示: 圖信息輸出模塊第二章 模式設(shè)計(jì)2.1 C/S模式簡介 精簡的說:C/S模式是一種三層結(jié)構(gòu)的系統(tǒng),第一層在客戶機(jī)上安裝了客戶機(jī)應(yīng)用程序,第二層在服務(wù)器上安裝服務(wù)器管理程序,第三層是數(shù)據(jù)訪問層。在C/S模式的工作過程中,客戶機(jī)程序發(fā)出請求,服務(wù)器程序接收并且處理客戶機(jī)程序提出的請求,然后返回結(jié)果。C/S模式特點(diǎn):(1)C/S模式將應(yīng)用與服務(wù)分離,系統(tǒng)具有穩(wěn)定性和靈活性(2)C/S模式配備的是點(diǎn)對點(diǎn)的結(jié)構(gòu)模式,適用于局域網(wǎng),有可靠的安全性(3)由于客戶端實(shí)現(xiàn)與服務(wù)器端的直接連接,沒有中間環(huán)節(jié)
14、,因此響應(yīng)速度快(4)在C/S模式中,作為客戶機(jī)的計(jì)算機(jī)都要安裝客戶機(jī)程序,一旦軟件系統(tǒng)升每臺客戶機(jī)都要安裝客戶機(jī)程序,系統(tǒng)升級和維護(hù)較為復(fù)雜發(fā)。2.2 B/S模式簡介精簡的說:B/S模式是一種從傳統(tǒng)的三層C/S模式發(fā)展起來的新的網(wǎng)絡(luò)結(jié)構(gòu)模式,其本質(zhì)也是三層結(jié)構(gòu)的C/S模式。在用戶的計(jì)算機(jī)上安裝瀏覽器軟件,在服務(wù)器上存放數(shù)據(jù)并且安裝服務(wù)應(yīng)用程序,服務(wù)器有WWW服務(wù)器和文件服務(wù)器等。用戶通過瀏覽器訪問服務(wù)器,進(jìn)行信息瀏覽、文件傳輸和電子郵件等服務(wù)。B/S模式特點(diǎn):(1)系統(tǒng)開發(fā)、維護(hù)、升級方便 每當(dāng)服務(wù)器應(yīng)用程序升級時(shí),只要在服務(wù)器上升級服務(wù)應(yīng)用程序即可,用戶計(jì)算機(jī)上的瀏覽器軟件不需要修改,系統(tǒng)
15、開發(fā)和升級維護(hù)方便。(2)B/S模式具有很強(qiáng)的開放性 在B/S模式下,用戶通過通用的瀏覽器進(jìn)行訪問,系統(tǒng)開放性好。(3)B/S模式的結(jié)構(gòu)易于擴(kuò)展 由于Web的平臺無關(guān)性,B/S模式的結(jié)構(gòu)可以任意擴(kuò)展,可以從包含一臺服務(wù)器和幾個(gè)用戶的小型系統(tǒng)擴(kuò)展成為擁有成千上萬個(gè)用戶的大型系統(tǒng)。(4)用戶使用方便 B/S模式的應(yīng)用軟件都是基于Web瀏覽器的,而Web瀏覽器的界面是類似的。對于無用戶交換功能的頁面。用戶接觸的界面都是一致的,用戶使用方便。2.3 B/S-C/S模式2.3.1 B/S-C/S模式定義B/S-C/S模式是將B/S模式和C/S模式組合而來的,吸取這兩種模式的優(yōu)點(diǎn),達(dá)到互補(bǔ)的作用。B/S模
16、式和C/S模式都是三層結(jié)構(gòu),B/S模式第一層是表現(xiàn)層,第二層是業(yè)務(wù)邏輯層,第三層是數(shù)據(jù)訪問層。C/S模式三層結(jié)構(gòu)中第一層是客戶端與B/S模式中的第一層不一樣,其余兩層相同。在B/S模式和C/S模式數(shù)據(jù)訪問過程和業(yè)務(wù)邏輯處理過程中是在服務(wù)器端完成,用戶只需接受服務(wù)器返回的結(jié)果。在B/S-C/S模式中,一部分?jǐn)?shù)據(jù)訪問過程和業(yè)務(wù)邏輯處理過程在客戶端完成,另外一部分?jǐn)?shù)據(jù)訪問過程和業(yè)務(wù)邏輯處理過程在服務(wù)器端完成。本手機(jī)公交線路查詢軟件一部分功能只要依靠手機(jī)本地?cái)?shù)據(jù)庫就可以實(shí)現(xiàn),令外一部分功能需要借助互聯(lián)網(wǎng)實(shí)現(xiàn)。目前不論是手機(jī)硬件還是計(jì)算機(jī)硬件,更新速度很快,而且硬件的配置水平也越來越高,在硬件條件允許的
17、情況下把一部分業(yè)務(wù)處理、數(shù)據(jù)訪問的過程放在客戶端去完成,那么對服務(wù)器的硬件要求就會低一些,甚至一些高性能的PC機(jī)就可以作為服務(wù)器。從整個(gè)作業(yè)量來看,本質(zhì)上是把作業(yè)量往客戶端多分?jǐn)傄徊糠郑档头?wù)器的作業(yè)量,因此,對客戶端的硬件要求是比較高的。B/S-C/S模式結(jié)構(gòu)如圖2.3.1 所示。圖2.3.1 B/S-C/S模式結(jié)構(gòu)圖本軟件系統(tǒng)采用B/S-C/S模式,系統(tǒng)框架如圖2.3.2所示。圖2.3.2 系統(tǒng)框架圖2.3.2 B/S-C/S模式特點(diǎn) B/S-C/S模式在繼承了B/S模式和C/S模式的優(yōu)點(diǎn)之后,還具有以下特點(diǎn):(1) 可靠性高1、客戶端不必完全依賴于服務(wù)器,即便脫離服務(wù)器,還有手機(jī)數(shù)據(jù)庫
18、的支持,可以繼續(xù)使用一部分功能。2、客戶端的數(shù)據(jù)丟失的時(shí)候,可以采用數(shù)據(jù)庫同步的方式從服務(wù)器獲得新的數(shù)據(jù)信息。(2) 省資源一部分作業(yè)在客戶端完成,服務(wù)器的訪問量和作業(yè)量都會減少,省資源,維護(hù)起來會更加方便。第三章 數(shù)據(jù)庫設(shè)計(jì)3.1 數(shù)據(jù)庫結(jié)構(gòu)服務(wù)器數(shù)據(jù)庫為總數(shù)據(jù)源,每一個(gè)客戶端都擁有獨(dú)立的小型數(shù)據(jù)庫??蛻舳藬?shù)據(jù)庫信息從服務(wù)器端同步獲得。服務(wù)器的數(shù)據(jù)庫是基于Mysql建立,客戶端數(shù)據(jù)庫是基于SQLite建立。數(shù)據(jù)庫體系結(jié)構(gòu)如圖4.1.1所示。圖3.1.1 數(shù)據(jù)庫體系結(jié)構(gòu)圖3.2 服務(wù)器數(shù)據(jù)庫設(shè)計(jì): 用戶的需求具體體現(xiàn)在對各種信息的提供、保存、更新和查詢等方面。因此,一個(gè)滿足要求的數(shù)據(jù)庫必須充分
19、滿足對各種信息的輸入輸出需要。公交查詢系統(tǒng)應(yīng)滿足以下信息需求:l 管理員必須先登錄系統(tǒng)后臺管理才能對系統(tǒng)中線路、站點(diǎn)等信息進(jìn)行添加、刪除、修改等工作。l 普通用戶不需進(jìn)行注冊就可以直接查詢相關(guān)信息。l 一輛公交車經(jīng)過多個(gè)站點(diǎn)。l 每個(gè)站點(diǎn)有多輛公交叫信息。l 一輛公交只有一條行駛線路。l 一條線路包括多個(gè)站點(diǎn)。綜合上面對網(wǎng)上購物系統(tǒng)數(shù)據(jù)庫的需求分析,考慮到未來功能上的擴(kuò)展,設(shè)計(jì)如下的數(shù)據(jù)項(xiàng)結(jié)構(gòu):l 管理員信息包括的數(shù)據(jù)項(xiàng):帳號、姓名和密碼。l 公交車信息包括的數(shù)據(jù)項(xiàng):線路號、始發(fā)時(shí)間、末班時(shí)間、車輛等級、車輛類型、始發(fā)站、 終點(diǎn)站。l 站點(diǎn)信息包括的數(shù)據(jù)項(xiàng):站點(diǎn)名稱、要經(jīng)過的線路號。l 線路信
20、息包括的數(shù)據(jù)項(xiàng):線路號、線路中包括的站點(diǎn)號。通過上面數(shù)據(jù)庫的需求分析可知,該系統(tǒng)的實(shí)體有管理員實(shí)體、公交車實(shí)體、線路實(shí)體、站點(diǎn)實(shí)體。管理員實(shí)體如圖3.2.1 所示:管理員 NumPasswordName圖3.2.1 管理員實(shí)體圖公交車實(shí)體圖如圖3.2.2所示:公交車BusNumEndTimeBeigenStBeigenTimeEndStBusStateBusLevel 圖3.2.2公交車實(shí)體圖線路實(shí)體如圖3.2.3所示:線路NoteLineNumEndStBeigenSt圖3.2.3 線路實(shí)體圖站點(diǎn)實(shí)體圖如圖3.2.4所示:站點(diǎn)StNoteStName 圖3.2.4站點(diǎn)實(shí)體圖 各實(shí)體間關(guān)系的E
21、-R圖如圖3.2.5 所示:添加、刪除、修改管理員站點(diǎn)1n添加、刪除、修改1m包括nn公交車行駛線路11mn查詢用戶查詢nm圖3.2.5各實(shí)體間關(guān)系E-R圖 根據(jù)上面的E-R圖,本軟件服務(wù)器端定義的arashmen數(shù)據(jù)庫設(shè)計(jì)了以下4張表:站點(diǎn)表:station(表2)、線路表:routes(表3)、發(fā)車時(shí)間表:departuretime(表4)、票表:fare(表5)。本軟件服務(wù)器數(shù)據(jù)庫所包含的表的描述如表1。 表3.1 管理員信息表數(shù)據(jù)名稱字段類型說明Account文本管理員帳號Name文本管理員姓名PassWord文本管理員密碼線路的信息表如表3.2所示: 表3.2 線路信息表數(shù)據(jù)名稱字段
22、類型說明LineName文本線路名稱BeigenSt文本起始站點(diǎn)EndSt文本終止站點(diǎn)Note文本線路信息公交車的信息表如表3.3所示:數(shù)據(jù)名稱字段類型說明BusNum文本公交線路號BeigenSt文本始發(fā)站EndSt文本終點(diǎn)站BusLevel文本公交等級BusState 文本公交類型BeigenTime文本始發(fā)時(shí)間EndTime文本末班時(shí)間 表3.3公交車信息表站點(diǎn)的信息表如表3.4 所示: 表3.4站點(diǎn)信息表數(shù)據(jù)名稱字段類型說明StName文本站點(diǎn)名稱StNote文本站點(diǎn)信息3.3 客戶端數(shù)據(jù)庫設(shè)計(jì):3.3.1 SQLite簡介Android數(shù)據(jù)庫使用的是SQLiteDatabase,我們
23、來簡單的介紹下Android平臺上的SQLiteDatabase 。SQLite是一款輕型的數(shù)據(jù)庫,是遵守ACID的關(guān)聯(lián)式數(shù)據(jù)庫管理系統(tǒng),它的設(shè)計(jì)目標(biāo)是嵌入式的,而且目前已經(jīng)在很多嵌入式產(chǎn)品中使用了它,它占用資源非常的低,在嵌入式設(shè)備中,可能只需要幾百K的內(nèi)存就夠了。它能夠支持Windows/Linux/Unix等等主流的操作系統(tǒng),同時(shí)能夠跟很多程序語言相結(jié)合,比如Tcl、PHP、Java等,還有ODBC接口,同樣比起Mysql、PostgreSQL這兩款世界著名開源的數(shù)據(jù)庫管理系統(tǒng)來講,它的處理速度比他們都快。該軟件數(shù)據(jù)庫的建立是完全在Android平臺上執(zhí)行Java代碼,通過DVM編譯來建
24、立的,沒有什么輔助工具,由于整個(gè)SQLite數(shù)據(jù)庫是非可視化操作,所有對數(shù)據(jù)庫的操作都是通過執(zhí)行Java代碼實(shí)現(xiàn),在完成其查詢功能的時(shí)候沒有使用數(shù)據(jù)庫高級編程,較為麻煩的關(guān)節(jié)是在如何有機(jī)的將客戶端數(shù)據(jù)庫整體結(jié)構(gòu)實(shí)現(xiàn)出來,實(shí)現(xiàn)過程是無可視界面,也沒有數(shù)據(jù)庫輔助工具情況下,整個(gè)過程很抽象。且表的設(shè)計(jì)應(yīng)盡量簡單,不要有錯綜復(fù)雜的關(guān)系,每張表都是獨(dú)立的,不存在任何約束,數(shù)據(jù)庫也是獨(dú)立數(shù)據(jù)庫,不采用Android特有的可共享數(shù)據(jù)庫。3.3.2 數(shù)據(jù)庫設(shè)計(jì)E-R關(guān)系如圖3.3.1所示。圖3.3.1 客戶端數(shù)據(jù)庫E-R圖根據(jù)上面的E-R圖,本軟件客戶端定義的arashmen數(shù)據(jù)庫中包含以下4張表:站點(diǎn)表:s
25、tation(表7)、線路表:routes(表8)、發(fā)車時(shí)間表:departuretime(表9)、票表:fare(表10)。本軟件服務(wù)器數(shù)據(jù)庫所包含的表的描述如表6。表3.6 數(shù)據(jù)庫概況表表名描述主要字段stations(站點(diǎn)表)保存站點(diǎn)信息ID,stationroutes(線路表)保存線路信息ID,RouteName,ContentDeparturetime(發(fā)車時(shí)間表)保存首班發(fā)車時(shí)間保存末班發(fā)車時(shí)間RouteNameFirstDepartureTime,LastDepartureTimefare(票價(jià)信息表)保存公交線路票價(jià)信息ID,isFixed,F(xiàn)ullFare表3.7 站點(diǎn)表字段
26、名數(shù)據(jù)類型長度主鍵/外鍵默認(rèn)值描述idInt4PKID,自動增長StationVarchar50站點(diǎn)名稱表3.8 線路表字段名數(shù)據(jù)類型長度主鍵/外鍵默認(rèn)值描述RouteNameChar20PK線路名稱ContentLongText線路全徑表3.9 發(fā)車時(shí)間表字段名數(shù)據(jù)類型長度主鍵/外鍵默認(rèn)值描述idInt4PKID,自動增長RouteNameChar20FK線路名稱FirstDepartureTimeTime首班發(fā)車時(shí)間LastDepartureTimeTime末班發(fā)車時(shí)間表3.10 票價(jià)信息表字段名數(shù)據(jù)類型長度主鍵/外鍵默認(rèn)值描述idInt4PKID,自動增長RouteNameChar20FK線路名稱isFixedFareChar5是否為分段計(jì)費(fèi)FullFareDouble8全程票價(jià)第四章 系統(tǒng)測試4.1系統(tǒng)測試方案根據(jù)本程序的實(shí)際情況,進(jìn)行了如下測試:1) 輸入異常數(shù)據(jù)或進(jìn)行異常操作在主頁面中輸入與車次無關(guān)的站點(diǎn)信息,系統(tǒng)將對所輸入的信息與數(shù)據(jù)庫中的信息作比較,如果沒有找到相對應(yīng)的信息,則系統(tǒng)顯示為空。當(dāng)用戶沒有輸入任何字符的時(shí)候,系統(tǒng)會提示用戶輸入相應(yīng)的信息,以便查詢。只有符合數(shù)據(jù)庫中的信息,才能進(jìn)行相應(yīng)的查找。2) 災(zāi)難恢復(fù)性測試由于本系統(tǒng)需要一個(gè)數(shù)據(jù)庫作為數(shù)據(jù)存儲的平臺,所以當(dāng)數(shù)據(jù)庫遭到破壞的時(shí)候就無法運(yùn)行,所以管理員在日常的添加、修改和刪除前都要進(jìn)行必要的數(shù)據(jù)庫備份
溫馨提示
- 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. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 二零二五年度文化藝術(shù)行業(yè)離職員工解除合同證明
- 二零二五年度豪華別墅管家式住家保姆雇傭合同
- 二零二五年度智能交通系統(tǒng)股權(quán)收購合作協(xié)議
- 施工現(xiàn)場施工防噪隔音制度
- 現(xiàn)代家居設(shè)計(jì)中的綠植藝術(shù)實(shí)踐
- 醫(yī)療護(hù)理醫(yī)學(xué)培訓(xùn) 小麥病蟲害防治課件
- DB6528T 202-2024春玉米滴灌栽培技術(shù)規(guī)程
- 中小企業(yè)勞動合同模板大全
- 個(gè)人與工廠合作協(xié)議合同
- 個(gè)人借款合同條款解析
- 遼寧省沈陽市鐵西區(qū)2025屆初三最后一次模擬(I卷)數(shù)學(xué)試題含解析
- 幼教培訓(xùn)課件:《幼兒園如何有效組織幼兒戶外自主游戲》
- 2024-2030年中國輕型運(yùn)動飛機(jī)行業(yè)市場發(fā)展趨勢與前景展望戰(zhàn)略分析報(bào)告
- 暑假作業(yè) 09 高二英語閱讀七選五20篇(原卷版)-【暑假分層作業(yè)】2024年高二英語暑假培優(yōu)練(人教版2019)
- 20以內(nèi)的加減法練習(xí)題1000道
- 電纜銷售年終工作總結(jié)與計(jì)劃
- (完整)三年級數(shù)學(xué)口算題300道(直接打印)
- TB 10012-2019 鐵路工程地質(zhì)勘察規(guī)范
- 新蘇教版三年級下冊科學(xué)全冊知識點(diǎn)(背誦用)
- 【良心出品】架空輸電線路巡視內(nèi)容
- 10000以內(nèi)加減法混合豎式題
評論
0/150
提交評論