工具軟件利用eclipse 2019開發(fā)工具和MySQL Workbench 8.0 CE數(shù)據(jù)庫來開發(fā)這個(gè)火車票管理系統(tǒng)。該系統(tǒng)要解決的是火車站網(wǎng)上售票工作所要解決的問題,可以滿足火車站網(wǎng)上售票的基本要求,包括查詢、訂票、退票等三個(gè)方面的功能。該系統(tǒng)能運(yùn)用到火車站售票的工作中,根據(jù)不同的需求,有用戶和管理員兩種權(quán)限,快捷方便的為用戶提供服務(wù)。
一. 簡介
該設(shè)計(jì)要求利用Socket和多線程機(jī)制,實(shí)現(xiàn)一個(gè)火車票管理系統(tǒng)。
通過該設(shè)計(jì),培養(yǎng)學(xué)生面向?qū)ο蟪绦蛟O(shè)計(jì)的思想,要求學(xué)生達(dá)到熟練掌握J(rèn)ava語言的基本知識和技能,基本掌握面向?qū)ο蟪绦蛟O(shè)計(jì)的基本思路和方法,能夠利用所學(xué)的基本知識和技能,解決簡單的面向?qū)ο蟪绦蛟O(shè)計(jì)問題。同時(shí)強(qiáng)調(diào)好的程序設(shè)計(jì)風(fēng)格,提高解決實(shí)際問題的能力。
三. 主要內(nèi)容、功能及技術(shù)指標(biāo)
1、要求利用面向?qū)ο蟮姆椒ㄒ约癑ava的編程思想來完成系統(tǒng)的設(shè)計(jì);
2、要求在設(shè)計(jì)的過程中,建立清晰的類層次;
3、在系統(tǒng)設(shè)計(jì)中要分析和定義各個(gè)類,每個(gè)類中要有各自的屬性和方法;
4、在系統(tǒng)的設(shè)計(jì)中,要求運(yùn)用面向?qū)ο蟮臋C(jī)制(繼承、派生及多態(tài)性)來實(shí)現(xiàn)系統(tǒng)功能。
5、系統(tǒng)主要要求:
(1)在服務(wù)器數(shù)據(jù)庫中存放火車票信息;
(2)客戶端(窗口)實(shí)現(xiàn)賣票、退票以及剩余車票的查詢。
本火車票管理系統(tǒng)應(yīng)該具備如下功能: 1.查詢 分為對用戶對指定始發(fā)地和目的地車次信息的查詢和用戶對指定車次號的車次信息的查詢。 要求:(1)對車次的查詢,可以按照發(fā)車車次進(jìn)行查詢; (2)對火車始發(fā)站和目的地的查詢,可以查詢從同一地發(fā)車到達(dá)同一地的所以車次; (3)車次信息包括:車次號、始發(fā)地、目的地、出發(fā)時(shí)間、剩余票數(shù)、是否高鐵、票價(jià); (4)車次信息只允許用戶查詢,不能修改。 2.購票 通過查詢系統(tǒng),客戶根據(jù)自己的需求找到滿意的車次,點(diǎn)擊購票即可預(yù)訂選中的車票。 要求:(1)訂票記錄包括車次號、始發(fā)地、目的地和出發(fā)時(shí)間; (2)一個(gè)用戶只能查詢自己的訂票記錄; (3)一個(gè)用戶不能重復(fù)買同一張票。 3.退票 可退票,通過退票系統(tǒng),客戶可以查看自己的訂票信息,通過輸入已購車票的車次號退去已購車票。 
圖1-1 系統(tǒng)功能模塊圖 1.2類層次設(shè)計(jì)1、Access類:登錄界面,包括用戶登陸,管理員登陸、注冊三個(gè)按鍵,用戶可以通過輸入用戶名和密碼進(jìn)入不同的模式,第一次使用的用戶可以使用注冊進(jìn)行注冊。 2、Register類:用戶注冊,輸入你的用戶名并設(shè)置密碼,為自己注冊賬戶。 3、Add類:管理員錄入車次信息,包括車次號、始發(fā)地、目的地、出發(fā)時(shí)間、剩余票數(shù)、是否高鐵、票價(jià); 4、Erase類:管理員刪除車次信息,通過輸入車次號刪除車次信息。 5、Update類:管理員修改車次信息,管理員通過輸入車次號,屬性和內(nèi)容進(jìn)行修改,其中屬性可以填寫始發(fā)地、目的地、出發(fā)時(shí)間、剩余票數(shù)、是否高鐵、票價(jià); 6、UserInfo類:管理員查看用戶信息,菜單欄相關(guān)按鈕,可以看到用戶資料查詢,瀏覽所有已注冊的用戶名和密碼。 7、Find1類:用戶通過始發(fā)地和目的地查詢車次,可以查到從始發(fā)地到目的地的所有車次 8、Find2類:用戶通過車次號查詢車次,可以查到從始發(fā)地到目的地的所有車次。 9、Purchase類:用戶購票,通過瀏覽自己已購車票,進(jìn)入退票系統(tǒng)進(jìn)行退票,操作結(jié)束后訂票信息被刪除。而車次信息顯示車票數(shù)加一。 10、Refund類:用戶退票,通過輸入車次號退掉已購車次。 11、Ticket類:用戶查看已購車票,可以看到自己買的車票的車次號、始發(fā)地、目的地和出發(fā)時(shí)間。 12、UserMainFrame類:系統(tǒng)菜單欄,包括我的車票,退票系統(tǒng)和注銷。

圖1-2 系統(tǒng)類層次圖 二、 詳細(xì)設(shè)計(jì)
2.1程序流程圖本系統(tǒng)主界面設(shè)置了用戶注冊、用戶登錄和管理員登錄。為用戶設(shè)計(jì)了三個(gè)功能操作以供選擇:查詢,訂票,退票。對于管理員本系統(tǒng)設(shè)計(jì)了四個(gè)功能操作:錄入車次信息、修改車次信息、查看車次信息、刪除車次信息同時(shí)可以查看已注冊本系統(tǒng)的用戶。 用戶和管理員可以根據(jù)需要觸發(fā)不同事件。用戶處理流程如圖2-1、圖2-2和圖2-3所示。 
圖2-1 購票處理流程圖

圖2-2 查詢處理流程圖

圖2-3 退票處理流程圖 三、 系統(tǒng)測試
3.1 常用的軟件測試方法(1)黑盒測試 黑盒測試也稱功能測試或數(shù)據(jù)驅(qū)動(dòng)測試,它是在已知產(chǎn)品所應(yīng)具有的功能,通過測試來檢測每個(gè)功能是否都能正常使用,在測試時(shí),把程序看作一個(gè)不能打開的黑盒子,在完全不考慮程序內(nèi)部結(jié)構(gòu)和內(nèi)部特性的情況下,測試者在程序接口進(jìn)行測試,它只檢查程序功能是否按照需求規(guī)格說明書的規(guī)定正常使用,程序是否能適當(dāng)?shù)亟邮蛰斎霐?shù)據(jù)而產(chǎn)生正確的輸出信息,并且保持外部信息(如數(shù)據(jù)庫或文件)的完整性。 "黑盒"法著眼于程序外部結(jié)構(gòu)、不考慮內(nèi)部邏輯結(jié)構(gòu)、針對軟件界面和軟件功能進(jìn)行測試。"黑盒"法是窮舉輸入測試,只有把所有可能的輸入都作為測試情況使用,才能以這種方法查出程序中所有的錯(cuò)誤。實(shí)際上測試情況有無窮多個(gè),人們不僅要測試所有合法的輸入,而且還要對不合法但是可能的輸入進(jìn)行測試。 (2)白盒測試 白盒測試按照程序內(nèi)部的邏輯對程序進(jìn)行測試,檢查程序中的每條通路是否能按預(yù)定要求正確工作。白盒測試又稱為結(jié)構(gòu)測試。 本系統(tǒng)采用的是黑盒法。 3.2 測試用例測試用例的作用:是為了高效地發(fā)現(xiàn)軟件缺陷而精心設(shè)計(jì)的少量測試數(shù)據(jù),可以預(yù)防或減少潛在錯(cuò)誤的發(fā)生。 (1)為保證信息安全,管理員用戶名和密碼無法注冊,只能在數(shù)據(jù)庫表里寫入。圖為數(shù)據(jù)庫中寫入的管理員用戶名和密碼。 
圖3-1 管理員用戶名和密碼 (2)用戶信息可以通過主界面注冊來實(shí)現(xiàn),已注冊用戶的用戶名、密碼及沒個(gè)用戶的訂票情況實(shí)時(shí)存儲(chǔ)到服務(wù)器數(shù)據(jù)庫中。 
圖3-2 已注冊用戶的用戶名和密碼 (3)本次測試用例為: 1、用戶:111 密碼:111 2、管理員:123 密碼123 3、錄入車次信息:車次號k1024,從蘭州到廣州,出發(fā)時(shí)間是2020.02.02 22:22,高鐵,售價(jià)366,剩余222張票。 4、注冊新用戶00000,密碼00000 3.3測試結(jié)果系統(tǒng)主界面有用戶登錄和管理員登錄,可輸入用戶名與密碼進(jìn)行登錄,當(dāng)輸入用戶名為111,密碼為111時(shí)登錄成功,結(jié)果如下圖所示。
圖3-3 用戶登錄 當(dāng)輸入管理員為123,密碼為123時(shí)登錄成功,結(jié)果如下圖所示。 
圖3-4 管理員登錄 通過點(diǎn)擊注冊按鍵,注冊新用戶00000,密碼00000,注冊成功,結(jié)果如下圖所示。 
圖3-5 新用戶注冊 四、 軟件使用說明書在管理員模式中,管理員可以進(jìn)行錄入車次信息、修改車次信息、查看車次信息、刪除車次信息同時(shí)可以查看已注冊本系統(tǒng)的用戶,如下圖所示。
圖3-6 管理員模式 通過輸入測試用例,測試成功,系統(tǒng)成功錄入1024車次信息,結(jié)果如下圖所示。 
圖3-7 錄入車次信息 
圖3-8 查看車次信息 
圖3-9 修改車次信息 
圖3-10 刪除車次信息 
圖3-11 查看用戶信息 用戶登錄后有了三個(gè)功能操作以供選擇:查詢,訂票,退票。測試結(jié)果如下圖所示。 
圖3-12 查詢界面 圖3-13 查詢結(jié)果 
圖3-14 界面 
圖3-15 查看已購界面 
圖3-16 退票界面 設(shè)計(jì)總結(jié)
這次系統(tǒng)的設(shè)計(jì)從最開始的可行性研究,需求分析,到系統(tǒng)的總體設(shè)計(jì),詳細(xì)設(shè)計(jì),再到編碼、測試等的一個(gè)整體過程,使我真正明白了要做一個(gè)軟件的難度,特別是要做一個(gè)真正可用的軟件,就更難了。在老師和同學(xué)的幫助下,我把以往所學(xué)的知識結(jié)合起來,利用JAVA開發(fā)工具,加上MySQL數(shù)據(jù)庫系統(tǒng),完成了本次設(shè)計(jì),盡量使它能滿足各個(gè)方面的要求。當(dāng)然,我的個(gè)人能力有限,還有很多不足的地方,敬請諒解。
以上壓縮包資料51hei附件下載:
java火車票管理.zip
(442.86 KB, 下載次數(shù): 25)
2021-7-20 11:09 上傳
點(diǎn)擊文件名下載附件
源代碼、說明書
|