




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)
文檔簡介
1、存檔日期: 存檔編號: 本科生畢業(yè)設(shè)計 題 目: 火車訂票管理系統(tǒng)的設(shè)計與實現(xiàn)姓 名: 2015年 答辯通過的論文及程序 系 別: 全套開題報告、英文翻譯、論文、程序、任務(wù)書、進展報告 專 業(yè): RMB:100 年 級 、 學(xué) 號: qq:1113121143 指 導(dǎo) 教 師: 江蘇師范大學(xué)科文學(xué)院印制江蘇師范大學(xué)計算機學(xué)院學(xué)士學(xué)位畢業(yè)設(shè)計原創(chuàng)性聲明本人鄭重聲明:所呈交的畢業(yè)設(shè)計說明書 火車訂票管理系統(tǒng)的設(shè)計與實現(xiàn) 是本人在導(dǎo)師指導(dǎo)下,在江蘇師范大學(xué)計算機學(xué)院學(xué)習(xí)期間,進行畢業(yè)設(shè)計時取得的成果。本人知道,除文中已經(jīng)標(biāo)明引用的內(nèi)容外,本畢業(yè)設(shè)計說明書不包含任何其他個人或集體已經(jīng)發(fā)表或撰寫過的研究
2、成果。對本文的研究做出貢獻的個人或集體,均已在文中以明確方式標(biāo)明。本人完全意識到本聲明的法律后果由本人承擔(dān)。班級:11物聯(lián)學(xué)號:學(xué)生簽名: 2015 年05月23 日火車訂票管理系統(tǒng)的設(shè)計與實現(xiàn)摘 要:隨著生活節(jié)奏的加快,人們對火車訂票有了更高的要求,而計算機科學(xué)的飛速發(fā)展為網(wǎng)上訂票系統(tǒng)提供了更好的解決方案。本系統(tǒng)使用JAVA 語言開發(fā),myeclipise為工作平臺和SQL Server 2005的數(shù)據(jù)庫,使用jsp技術(shù)以及jdbc數(shù)據(jù)訪問技術(shù)。Web程序前臺使用了 html+css+javascript技術(shù)制作頁面,Windows程序使用了JSwing組件技術(shù)制作 J2ME窗體。本火車訂票
3、管理系統(tǒng)滿足了網(wǎng)上火車訂票的基本需求,其中包含查詢、訂票、退票等功能。本系統(tǒng)能很好的運用到網(wǎng)上火車訂票的環(huán)節(jié)中,根據(jù)用戶的權(quán)限,分成管理員和普通用戶兩類,快捷方便的為用戶提供訂票管理服務(wù)。其中老人購買臥鋪優(yōu)先分配下鋪為主要特色。 關(guān)鍵詞: Java、MyEclipse、Jsp、SQL Server 2005 The Design and Implementation of Train Ticket Management SystemAbstract:With the accelerating rhythm of life, people have a higher request for th
4、e train ticket booking, and the rapid development of computer science for online reservation system provides a better solution.The system of development uses JAVA , the work platform is myeclipse and SQL Server 2005 database .The system uses jdbc jsp technology and data access technology. Web applic
5、ation foreground uses html + css + javascript technical production page. Windows program uses JSwing component technology to make J2ME form. This train ticket booking management system can meet the basic needs of the train tickets online, which contains the query, booking tickets, upgrade, refund, e
6、tc.The system can apply to the online train ticket booking link, according to the user's permissions, divided into two types of administrators and ordinary users, fast and convenient for users provide ticketing management services. The old man to buy a sleeper berth for
7、the main features of priority allocation.Keywords: Java、MyEclipse、Jsp、SQL Server 2005目 錄第1章 緒論11.1 項目開發(fā)背景11.2 國內(nèi)相關(guān)進展現(xiàn)狀分析11.3 系統(tǒng)開發(fā)目的與意義11.4 本文研究內(nèi)容及主要貢獻2第2章 開發(fā)平臺介紹32.1 B/S體系結(jié)構(gòu)介紹32.1.1 B/S介紹32.1.2 C/S 與 B/S 區(qū)別32.2 SQL Server 2005 簡介32.2.1 SQL Server 2005介紹32.2.2 SQL Server 2005的特點32.3 MyEclipse介紹4
8、2.4本章小結(jié)4第3章 系統(tǒng)分析53.1 可行性分析53.1.1 經(jīng)濟可行性53.1.2 技術(shù)可行性53.1.3 操作可行性53.2 系統(tǒng)需求分析53.2.1 功能需求53.2.2 數(shù)據(jù)需求63.2.3 性能需求63.3 本章小結(jié)7第4章 總體設(shè)計84.1 軟件結(jié)構(gòu)設(shè)計8 總體流程圖84.1.2 注冊用戶功能模塊84.1.3 管理員用戶功能模塊94.1.4 E-R圖94.2 數(shù)據(jù)庫設(shè)計104.2.1 用戶表104.2.2 用戶組表104.2.3 車次表104.2.4 車次線路表114.2.5 車次席位表114.2.6 車票表124.3本章小結(jié)12第 5章 系統(tǒng)實現(xiàn)135.1 登錄界面135.2
9、 車輛管理145.3 車次管理155.4 余票查詢175.5 火車訂票185.6 本章小結(jié)21第6章 總結(jié)與展望226.1 總結(jié)226.2 展望226.3 本章小結(jié)22畢業(yè)設(shè)計體會23致謝24參考文獻25英文翻譯26第1章 緒論1.1 項目開發(fā)背景信息化推動工業(yè)化,用現(xiàn)代信息技術(shù)改革傳統(tǒng)產(chǎn)業(yè),這是一項具有戰(zhàn)略性的任務(wù)。鐵路作為現(xiàn)代工業(yè)文明的產(chǎn)物,如何運用已有的技術(shù),來實現(xiàn)運營、管理、服務(wù)的信息化是如今的一個重要課題。由于我國國土面積廣闊、人口基數(shù)龐大,激生出“春運”這樣的特有現(xiàn)狀,鐵路運輸問題一直存在,訂票管理的問題也尤為突出?;疖囉喥惫芾淼囊?guī)范化一直是困擾我們的老問題,也是其工作難點。訂票管
10、理只是火車市場中最基本的業(yè)務(wù),但是它同時涵蓋了管理與服務(wù)多方面的內(nèi)容。人工訂票越來越跟不上人們快捷的生活方式,也難以滿足更人性化的需求1。窗口售票的方式低效無力,旅客往往需要排長隊才能買到票,有時等待半天被告知所需車票已售空,白白浪費大量寶貴時間。計算機技術(shù)的發(fā)展帶動了火車事業(yè)的轉(zhuǎn)型,目前,火車訂票管理正在往網(wǎng)絡(luò)的方向過渡,以此緩解現(xiàn)實壓力。隨著信息技術(shù)的飛速發(fā)展,將計算機科學(xué)技術(shù)運用到火車訂票管理中無疑是一個明智之選2?;疖囉喥惫芾淼目茖W(xué)化、信息化也標(biāo)志我國科學(xué)強國的決心,是現(xiàn)代交通尤其是鐵路交通發(fā)展的必經(jīng)之路。1.2 國內(nèi)相關(guān)進展現(xiàn)狀分析目前國內(nèi)火車訂票管理系統(tǒng)已得以大范圍的推廣,但是收獲
11、還不夠理想,每到節(jié)假日,仍能在各大火車站售票窗口前看到長長的隊伍?!?2306”作為國內(nèi)最大的官方火車訂票系統(tǒng)承受了太大的壓力,曾經(jīng)一度出現(xiàn)網(wǎng)上訂票需要排隊的情況,這就變得和實體購票一樣,失去了它實時易用的特性。它更多的在城鎮(zhèn)居民、高校學(xué)生這樣一類受眾中得到廣泛使用,作為一個全民系統(tǒng),它具有一定的局限性,未能將另一部分人考慮進來,如農(nóng)民工。其次,它缺少競爭對手,也就很難有更多的動力來源,于是多年來國內(nèi)火車訂票管理系統(tǒng)進展緩慢。1.3 系統(tǒng)開發(fā)目的與意義 隨著信息技術(shù)的不斷發(fā)展,計算機科學(xué)日趨成熟,計算機技術(shù)在人們?nèi)粘5纳a(chǎn)生活中扮演著重要角色。其擁有智能化、便捷化、高效化、低錯誤等特
12、點,而這樣一些特點正是現(xiàn)代網(wǎng)上火車訂票管理所需要的。合理的利用這些優(yōu)點,可以有效的提高火車運營管理的經(jīng)濟效益,有利于提高火車行業(yè)的市場競爭力。基于我國鐵路訂票管理方面的諸多現(xiàn)狀,經(jīng)過多方面的調(diào)查,結(jié)合已有的一些火車訂票管理系統(tǒng),開發(fā)一個適合當(dāng)下的火車訂票管理系統(tǒng),通過實現(xiàn)票務(wù)信息的計算機管理,以提高工作效率。實現(xiàn)計算機管理的最佳技術(shù)就是數(shù)據(jù)庫技術(shù),利用數(shù)據(jù)庫將整個火車站的票務(wù)情況存入計算機,再配置上功能豐富的用戶接口,以滿足用戶需求3。利用java語言和數(shù)據(jù)庫技術(shù)編寫的本火車訂票管理系統(tǒng),擁有較好的人機交互界面4,能很好的被用戶接受,方便了旅客的購票出行;有完善的數(shù)據(jù)庫,存儲量大,檢索方便。本
13、系統(tǒng)符合火車訂票管理的基本業(yè)務(wù)流程,能夠模擬售票員(管理員)和用戶之間的各項操作。實現(xiàn)了快捷方便的票務(wù)信息查詢、智能自動的網(wǎng)上訂票、人性化的退票改簽,另外該系統(tǒng)還包含了管理人員對票務(wù)的維護管理。合理利用網(wǎng)絡(luò)資源,建設(shè)更高效的管理系統(tǒng),提高對車票管理工作的服務(wù)水平和工作效率,這對于火車事業(yè)和旅客本身都非常有意義5。1.4 本文研究內(nèi)容及主要貢獻本文研究內(nèi)容:第一章交代研究背景與課題意義,第二章介紹開發(fā)平臺的相關(guān)信息,第三章進行可行性分析和需求分析,第四章具體說明火車站訂票系統(tǒng)的總體設(shè)計方案,第五章展示系統(tǒng)實現(xiàn)情況,第六章總結(jié)本論文。主要貢獻:此火車訂票管理系統(tǒng),能夠讓人們利用計算機方便快速的查詢
14、火車信息。本軟件集火車基本數(shù)據(jù)、車次管理、車票查詢于一身,目的在于讓管理人員更加快捷方便的對火車時刻進行更新和調(diào)整,同時能夠讓用戶更加方便和快速的查詢火車車次、時刻信息。此火車訂票管理系統(tǒng)使火車余票信息的查詢工作更加自動化、規(guī)范化、系統(tǒng)化。一方面能夠提高管理人員的工作效率,以減輕傳統(tǒng)人工管理方式所帶需求的物力、人力;另一方面,因為本軟件具有查尋方便、可靠性良好、存儲量大的優(yōu)點,所以實現(xiàn)了訂票信息查詢及管理的自動化。第2章 開發(fā)平臺介紹軟件的開發(fā)離不開平臺,接下來就大體介紹本系統(tǒng)開發(fā)過程中所用到的開發(fā)平臺相關(guān)資料。2.1 B/S體系結(jié)構(gòu)介紹2.1.1 B/S介紹瀏覽器/服務(wù)器(Browser/S
15、erver)模式構(gòu)成的B/S結(jié)構(gòu),是隨著Internet技術(shù)的興起出現(xiàn)的網(wǎng)絡(luò)結(jié)構(gòu)模式6,是對C/S結(jié)構(gòu)的一種改進的結(jié)構(gòu)。這種模式將大部分系統(tǒng)邏輯功能集中到服務(wù)器上,而客戶端上只有小部分事務(wù)邏輯,系統(tǒng)開發(fā)起來更簡單,維護也方便。開發(fā)一次到位,人們可以隨時隨地,以不同的方式(如LAN, WAN, Internet)訪問共同的數(shù)據(jù)庫并操作它。同時服務(wù)器數(shù)據(jù)庫安全性能高,能很好的保護數(shù)據(jù)和管理訪問權(quán)限。B/S結(jié)構(gòu),主要是利用了不斷發(fā)展的瀏覽器技術(shù),同時結(jié)合多種瀏覽器腳本語言(如VBScript、JavaScript等)和ActiveX技術(shù)6,用常用的瀏覽器就實現(xiàn)了原來需要專用軟件才能實現(xiàn)的許多功能,成
16、本得到了很大的節(jié)約,是如今首選的軟件系統(tǒng)構(gòu)造技術(shù)。2.1.2 C/S 與 B/S 區(qū)別C/S(Client/Server)是建立在局域網(wǎng)的基礎(chǔ)上的,B/S(Browser/Server)是建立在廣域網(wǎng)的基礎(chǔ)上的7;B/S程序中軟件的重用性要比C/S好;B/S結(jié)構(gòu)利用瀏覽器表現(xiàn)形式豐富,而C/S則較為單一;B/S結(jié)構(gòu)受操作系統(tǒng)影響小,C/S結(jié)構(gòu)受操作系統(tǒng)影響大?;疖囉喥惫芾硐到y(tǒng)使用 B/S結(jié)構(gòu)比C/S結(jié)構(gòu)有著很大的優(yōu)越性,一來節(jié)約成本,二來方便,只要能上網(wǎng),就能購票,利于操作。綜上所述,本設(shè)計的火車站訂票管理系統(tǒng)選取的是B/S。2.2 SQL Server 2005 簡介 2.2.1 SQL S
17、erver 2005介紹數(shù)據(jù)庫技術(shù)是計算機科學(xué)與技術(shù)的重要組成部分,是信息管理與數(shù)據(jù)處理的核心。Microsoft SQL Server 2005 則是目前一個較為全面的數(shù)據(jù)庫平臺,是 Windows 操作系統(tǒng)上重要的一種數(shù)據(jù)庫管理系統(tǒng),數(shù)據(jù)庫設(shè)計主要是進行數(shù)據(jù)庫的邏輯設(shè)計,它將數(shù)據(jù)按特定的分類、分組系統(tǒng)和邏輯層次結(jié)合起來,是面向用戶的。Microsoft SQL Server 2005使用了集成的商業(yè)智能工具可以為用戶提供企業(yè)級的數(shù)據(jù)管理8。此外 Microsoft SQL Server 2005 結(jié)合了分析、報表、集成和通知功能,可以構(gòu)建和管理可用性高和性能理想的數(shù)據(jù)應(yīng)用程序,這使得用戶可
18、以快速部署 BI解決方案。同時Microsoft SQL Server 2005 數(shù)據(jù)庫還為數(shù)據(jù)提供了強大的存儲功能,它能很好的解決計算機信息處理過程中大量數(shù)據(jù)有效存儲的問題,實現(xiàn)數(shù)據(jù)共享、減少系統(tǒng)中的數(shù)據(jù)冗余、保護數(shù)據(jù)安全、快速檢索數(shù)據(jù),其安全性和可靠性在關(guān)系型數(shù)據(jù)和結(jié)構(gòu)化數(shù)據(jù)上尤為突出。2.2.2 SQL Server 2005的特點(1)安全性SQL Server2005中的安全模式將用戶和對象分開,并允許對數(shù)據(jù)存取進行更大的控制。另外,所有系統(tǒng)表格將作為視圖得到實施,對數(shù)據(jù)庫系統(tǒng)對象進行了更大程度的控制9。(2)SQL服務(wù)中介SQL服務(wù)中介將為大型、營業(yè)范圍內(nèi)的應(yīng)用軟件,提供一個分布式
19、的、異步應(yīng)用框架。(3)Web服務(wù)使用SQL Server2005,開發(fā)人員將能夠在數(shù)據(jù)庫層開發(fā)Web服務(wù),將SQL Server當(dāng)作一個超文本傳輸協(xié)議(HTTP)偵聽器,并且為網(wǎng)絡(luò)服務(wù)中心應(yīng)用軟件提供一個新型的數(shù)據(jù)存取功能10。2.3 MyEclipse介紹MyEclipse企業(yè)級工作平臺,是在eclipse的基礎(chǔ)上增加自己的插件而構(gòu)成的功能更強大的企業(yè)級集成開發(fā)環(huán)境11,它是一個十分優(yōu)秀的插件集合,用于開發(fā)Java、Java EE以及移動應(yīng)用。MyEclipse的功能非常強大,支持也十分廣泛,尤其是對各種開源產(chǎn)品的支持相當(dāng)不錯。 MyEclipse可以支持JavaServlet、AJAX、
20、JSP、JSF、Struts、Spring、JDBC數(shù)據(jù)庫鏈接工具等多項功能12??梢哉fMyEclipse是幾乎囊括了目前市面上所有主流開源產(chǎn)品的專屬eclipse開發(fā)工具。支持快速添加技術(shù)功能到Web項目中,使用可視化編輯器以便編碼和配置,并且還可以在多種應(yīng)用服務(wù)器上測試任務(wù)。作為本設(shè)計的開發(fā)平臺是很合適的。2.4本章小結(jié)本章介紹了系統(tǒng)中運用到的B/S結(jié)構(gòu)、SQL Server 2005數(shù)據(jù)庫以及MyEclipse工作平臺。第3章 系統(tǒng)分析 系統(tǒng)的搭建離不開前期分析,接下來就本系統(tǒng)進行可行性分析與需求分析。3.1 可行性分析3.1.1 經(jīng)濟可行性本火車訂票管理系統(tǒng)軟件所需的開發(fā)軟硬件方便獲取
21、、成本較低,系統(tǒng)開發(fā)周期不長,后期維護過程也相對簡單13,一旦投入使用,可以有效的提高訂票管理的效率,降低原有人力、財力的消耗。又由于我國鐵路事業(yè)蓬勃發(fā)展,系統(tǒng)投入使用產(chǎn)生的效益遠大于前期投入,因此本系統(tǒng)符合經(jīng)濟可行性的要求。3.1.2 技術(shù)可行性本訂票系統(tǒng)開發(fā)涉及到的技術(shù)包含如下幾個方面:(1)配置環(huán)境(2)系統(tǒng)架構(gòu)的規(guī)劃(3)頁面開發(fā)(4)數(shù)據(jù)庫技術(shù)環(huán)境配置用到windows系統(tǒng)計算機一臺,搭建MyEclipse平臺和Tomcat服務(wù)器等14。系統(tǒng)以B/S為整體架構(gòu),前臺瀏覽器(IE等)、后臺服務(wù)器,頁面用到j(luò)sp技術(shù),MyEclipse軟件本身操作簡單、界面友好、系統(tǒng)完善、兼容性高,使用
22、Java語言編寫便捷。數(shù)據(jù)庫使用SQL Server 2005,使用時上手容易數(shù)據(jù)庫完整性強、安全性高。以上軟件、語言都相對熟悉,因此技術(shù)上可行。3.1.3 操作可行性用戶通過常規(guī)瀏覽器輸入網(wǎng)址即可注冊、登錄,實現(xiàn)網(wǎng)上訂票,實現(xiàn)用戶與數(shù)據(jù)的實時交互。系統(tǒng)采用菜單形式,界面簡潔友好,操作簡便15。管理員用戶登錄后臺,對票務(wù)、列車信息進行維護,只需對業(yè)務(wù)流程了解即可,無需掌握相關(guān)的數(shù)據(jù)庫等知識。系統(tǒng)設(shè)計時就考慮到用戶接受能力,將界面盡可能做到方便可操作。3.2 系統(tǒng)需求分析3.2.1 功能需求 本系統(tǒng)所需具備的主要功能包括以下兩個模塊:(1) 用戶功能模塊1 注冊登錄功能2 查看系統(tǒng)公告功能3 查
23、看、修改個人信息功能4 增刪聯(lián)系人功能5 修改密碼功能6 余票查詢功能7 訂票、退票功能8 查看已購車票信息功能(2) 管理員功能模塊1 登錄功能2 用戶管理功能:新建用戶、刪除用戶、更改用戶信息3 編輯列車基礎(chǔ)信息功能:車型管理(高鐵、動車、普快、特快等)、車輛管理(座位分級、設(shè)置席位數(shù)量、設(shè)置席位價格)、車站管理(增加、刪除車站信息)4 運營管理功能:車次管理(編輯車次、車型、途經(jīng)站點、行駛時間)、運行時刻編輯功能5 售票管理功能:出票、退票、訂單管理6 公告管理功能:發(fā)布、修改、刪除公告信息3.2.2 數(shù)據(jù)需求數(shù)據(jù)需求在系統(tǒng)中表現(xiàn)為數(shù)據(jù)信息的輸入輸出。對本訂票系統(tǒng)分析,其中涉及的部分?jǐn)?shù)據(jù)
24、輸入輸出如下表:表3.1 數(shù)據(jù)需求表數(shù)據(jù)輸入數(shù)據(jù)處理數(shù)據(jù)輸出用戶輸入始末車站及乘車日期 檢索數(shù)據(jù)庫系統(tǒng) 符合要求的車次及余票信息 用戶輸入相關(guān)訂票信息 執(zhí)行訂票邏輯 反饋操作(訂票成功) 用戶輸入乘車人、身份證等信息 檢索數(shù)據(jù)庫系統(tǒng) 已購車票信息 用戶輸入退票信息 執(zhí)行相關(guān)邏輯 反饋操作(退票成功)數(shù)據(jù)處理、輸出的準(zhǔn)確性的前提是數(shù)據(jù)輸入時的準(zhǔn)確性。由于數(shù)據(jù)輸入是手工完成的,錯誤輸入在所難免,這就給系統(tǒng)帶來不必要的麻煩。錯誤的數(shù)據(jù)是無法被檢索的,無法被執(zhí)行的,也沒有必要將這樣的冗余數(shù)據(jù)錄入數(shù)據(jù)庫,來增加系統(tǒng)壓力。于是系統(tǒng)對輸入數(shù)據(jù)要有合理的約束,不符合要求的數(shù)據(jù)應(yīng)該被拒絕,同時給出相應(yīng)的錯誤提示
25、信息,便于用戶二次操作16。3.2.3 性能需求為了使火車訂票長期運作,本系統(tǒng)應(yīng)當(dāng)滿足安全、穩(wěn)定、便捷、高效的性能需求17。(1)及時準(zhǔn)確對于旅客來說,時間就是金錢,有時晚了一分鐘訂票就可能需要花上半天等下一班車,這時候訂票系統(tǒng)的及時準(zhǔn)確性顯得尤為關(guān)鍵。系統(tǒng)開發(fā)之初就預(yù)計到了這些問題,充分考慮未來會承受的購票壓力,采用合理訂票邏輯,避免了市面上其他相同軟件出現(xiàn)的訂票需要排隊、排隊后車票已售空的尷尬局面。用戶隨時查看余票數(shù)量,訂票后余票數(shù)實時同步,刷新即顯示,及時準(zhǔn)確。(2)易用便捷火車訂票系統(tǒng)面向的是大眾群體,在中國尤其是“春運”時期,農(nóng)民工作為主要受眾18,他們對計算機的相關(guān)功用并非那么熟悉
26、,所以開發(fā)一個具有良好人機交互界面的系統(tǒng)是十分必要的。易用便捷這樣的特性很大程度上決定著系統(tǒng)的成敗,系統(tǒng)應(yīng)采用便捷的用戶接口,簡單的引導(dǎo)提示,使絕大部分人輕而易舉的使用本系統(tǒng)。(3)安全穩(wěn)定安全問題在任何軟件中都是舉足輕重的,在本訂票系統(tǒng)中也是如此。一方面管理員不會泄露用戶信息,另一方面系統(tǒng)對管理員、用戶進行權(quán)限劃分,用戶只能瀏覽相關(guān)的車次、車輛、價格信息,無權(quán)限對其修改。使用到的SQL Server 數(shù)據(jù)庫也是很穩(wěn)定的,對數(shù)據(jù)的存儲、更新以及數(shù)據(jù)的一致性這些處理能力也是公認(rèn)的19。(4)可擴展性考慮到中國市場的瞬息萬變,系統(tǒng)的可擴展性也是十分重要的。系統(tǒng)充分考慮到日后鐵路線路的變更、天氣因素
27、、人們生活消費水平的改變等,將系統(tǒng)設(shè)計成可擴充形。管理員可以在后臺操作,變更列車行駛線路、路程、時間、價格等一系列的操作。這樣一來系統(tǒng)就能跟上變革,長期使用。3.3 本章小結(jié)本章對系統(tǒng)進行可行性分析,認(rèn)定系統(tǒng)設(shè)計是可行的。進行需求分析,包括功能需求、數(shù)據(jù)需求、性能需求。第4章 總體設(shè)計 系統(tǒng)總體設(shè)計包括軟件結(jié)構(gòu)設(shè)計和數(shù)據(jù)庫設(shè)計兩個部分。4.1 軟件結(jié)構(gòu)設(shè)計 總體流程圖 本系統(tǒng)分成基礎(chǔ)數(shù)據(jù)、車次管理、售票管理和售后四個部分20,其具體項目和總體流程如圖4.1所示: 圖4.1 系統(tǒng)流程圖4.1.2 注冊用戶功能模塊 根據(jù)需求分析所得,注冊用戶功能如圖4.2所示:圖4.2 注冊用戶功能模塊圖4.1.
28、3 管理員用戶功能模塊 據(jù)需求分析所得,管理員功能設(shè)計如圖4.3所示:圖4.3管理員用戶功能模塊圖4.1.4 E-R圖 本系統(tǒng)實體包括車次、用戶、訂票信息,其各實體關(guān)系如E-R圖4.4所示21:圖4.4 實體E-R圖4.2 數(shù)據(jù)庫設(shè)計本系統(tǒng)使用SQL Server2005設(shè)計數(shù)據(jù)庫,其中主要設(shè)計的表如表4.1、表4.2、表4.3、表4.4、表4.5、表4.6所示:4.2.1 用戶表 管理員和注冊用戶存一起,根據(jù)用戶組區(qū)分,管理員允許不記錄姓名和身份證號。表4.1 用戶 Administrator4.2.2 用戶組表 包括管理員和注冊用戶兩類。表4.2 用戶組 AdministratorGrou
29、p4.2.3 車次表 儲存車次信息。表4.3 車次 checi4.2.4 車次線路表 存儲車次具體線路信息。表4.4 車次線路 checilines4.2.5 車次席位表 存儲車次席位信息。表4.5 車次席位 checisites4.2.6 車票表 存儲車票信息。表4.6 車票 chepiao4.3本章小結(jié) 本章列出了系統(tǒng)總體流程圖、功能模塊圖以及重要的數(shù)據(jù)庫表。第 5章 系統(tǒng)實現(xiàn) 本章將介紹系統(tǒng)主要功能模塊的實現(xiàn),包括登錄界面、 車輛管理、車次管理、余票查詢、火車訂票。5.1 登錄界面系統(tǒng)根據(jù)用戶名識別管理員和普通用戶的登錄,同時可以在登錄界面注冊新用戶。圖5.1登錄界面圖 主要功能代碼如下
30、: </script></head> <body><form> <center> <div id="mainbody"><center> <div class="login_940_642"><table><tr><td style='width:479px;height:193px'></td><td></td></tr><tr><td>
31、;</td><td><table> <tr><td>用戶名</td><td><input id="txtUsername"name="txtUsername" type="text" /></td></tr><tr><td>密碼</td><td><input id="txtPassword" name="txtPassword&quo
32、t; type="password"value="" /></td></tr><tr><td></td><td><input id="btnOk" name="btnOk"onclick="_doPostback('./Action/UserAction.jsp','SubmitLogin','')"type="button" value=&qu
33、ot;登錄" /> <input id="btnCancel"name="btnCancel"onclick="_doPostback('./Action/UserAction.jsp','CancelLogin','')"type="button" value="注冊" /></td></tr></table></td></tr></table>&
34、lt;/div></center> </div></center></form></body></html>5.2 車輛管理管理員可以添加、刪除、修改車輛類型信息22。圖5.2車型管理圖 主要功能代碼如下:SessionConfig sc = new SessionConfig(session);String userName = sc.getUsername();int userGroupid = sc.getUsergroupid();MenuConfig menuConfig = new MenuConfig(
35、"車輛類型",sc);String ActionPath = "./Action/ChelxAction.jsp"DataRowEx foreignKeys = new DataRowEx();DataCellEx primaryKey = new DataCellEx();primaryKey.SetKey("Lxid");PageEdit pageEdit = new PageEdit(request,response,primaryKey,foreignKeys);int Lxid = TypeConvert.ToInt32(p
36、ageEdit.getPrimarykey().GetValue();CChelx obj = new CChelx();if( Lxid > 0 ) obj = CChelxDal.Create(Lxid);else obj.setmLxid( TypeConvert.ToInt32( "編號"); obj.setmLxno( TypeConvert.ToString( "類型代碼"); obj.setmLxname( TypeConvert.ToString( "類型名稱");%><jsp:include pag
37、e="./Program/Banner.jsp"></jsp:include><%out.print(menuConfig.ToHtml();%><%PageEditConfig pageEditConfig = new PageEditConfig("編輯車輛類型",out);pageEditConfig.enableEdit=true;/*btnOk-btnCancel*/pageEditConfig.btnOk.OnClick("_doPostback('"+ActionPath+&q
38、uot;','Submit','" + Lxid + "')");pageEditConfig.btnCancel.OnClick("_doPostback('"+ActionPath+"','EditCancel','')");/*txt類型代碼*/TextBox txtLxno = new TextBox("txtLxno",TypeConvert.ToString(obj.getmLxno();pageEditC
39、onfig.AddItem( "類型代碼", txtLxno);/*txt類型名稱*/TextBox txtLxname = new TextBox("txtLxname",TypeConvert.ToString(obj.getmLxname();pageEditConfig.AddItem( "類型名稱", txtLxname);pageEditConfig.toHtml();%><jsp:include page="./Program/Footer.jsp"></jsp:include
40、>5.3 車次管理管理員可以編輯車次的具體信息,包括車次代碼、車型、途徑站、運行時間、總里程等。圖5.3車次管理圖 主要功能代碼如下:PageEditConfig pageEditConfig = new PageEditConfig("編輯車次",out);pageEditConfig.enableEdit=true;/*btnOk-btnCancel*/pageEditConfig.btnOk.OnClick("_doPostback('"+ActionPath+"','Submit','&qu
41、ot; + Ccid + "')");pageEditConfig.btnCancel.OnClick("_doPostback('"+ActionPath+"','EditCancel','')");/*txt車次代碼*/TextBox txtCcno = new TextBox("txtCcno",TypeConvert.ToString(obj.getmCcno();pageEditConfig.AddItem( "車次代碼", tx
42、tCcno);/*txt車輛類型*/DropDownList txtLxid = new DropDownList();txtLxid.setID("txtLxid");txtLxid.setValue( TypeConvert.ToString(obj.getmLxid() );CChelxList objCChelxList = CChelxDal.Select();for(CChelx objCChelx : objCChelxList ) txtLxid.addItems( TypeConvert.ToString( objCChelx.getmLxid(), Ty
43、peConvert.ToString(objCChelx.getmLxno();pageEditConfig.AddItem( "車輛類型", txtLxid);/*txt運行時間*/TextBox txtMinlong = new TextBox("txtMinlong",TypeConvert.ToString(obj.getmMinlong();pageEditConfig.AddItem( "運行時間", txtMinlong+"(分鐘)");/*txt總里程*/TextBox txtLongth = ne
44、w TextBox("txtLongth",TypeConvert.ToString(obj.getmLongth();pageEditConfig.AddItem( "總里程", txtLongth+"(公里)");/*編輯線路*/pageEditConfig.AddItem( "線路", "<div id=dataLings></div>");pageEditConfig.toHtml();%><style>#txtCzno width:45px;
45、#txtMinrun width:45px; #txtMinstop width:45px; #txtLongthrun width:45px; #txtCzno width:45px; </style><jsp:include page="./Program/Footer.jsp"></jsp:include>5.4 余票查詢用戶根據(jù)首末站名、發(fā)車時間來查詢余票信息。圖5.4余票查詢圖 主要功能代碼如下:</script><table cellpadding="0" cellspacing=&quo
46、t;0" border="0" class=esedit><Tr><th class=esedit_th>始發(fā)站</th><td class=esedit_td> <%= txtIdxstart.toString() %> </td><th class=esedit_th>終到站</th><td class=esedit_td><%= txtIdxend.toString() %> </td> <th class=esed
47、it_th>上車日期</th><td class=esedit_td> <%= txtTimestart.toString() %><br /></td> <Td class=esedit_td colspan="1" ><%= btnSearch.toString() %></Td></Tr> <Tr><th class=esedit_th>車輛類型</th><td class=esedit_td><%=
48、txtLxid.toString() %> </td><th class=esedit_th>車次</th><td class=esedit_td><%= txtCcid.toString() %> </td> <td class=esedit_td colspan="3"> *上車日期用8位整數(shù)表示"年月日",*站點名稱,中文</td></Tr></table> </div><Br/><div id
49、=pagetitle>查詢結(jié)果</div><%if( TypeConvert.Equals(action,"search") )/提交查詢條件,生成查詢結(jié)果到本頁 if( TypeConvert.IsNullOrEmpty(Idxstart,Idxend ,Timestart) | Timestart.length() != "20140524".length() | TypeConvert.Equals(Idxstart,Idxend)%><div class=pagedata><br />請輸入合
50、法的查詢條件,<br />時間和出發(fā)終到地點不能為空,時間日期參數(shù)要求8位年月日,<br />始發(fā)和終到站點不能為同一站<br />發(fā)車時間小于2小時,不能提交訂單</div><% 5.5 火車訂票乘客根據(jù)所需選擇車票訂購火車票。圖5.5火車訂票圖 主要功能代碼如下: SessionConfig sc = new SessionConfig(session); String userName = sc.getUsername(); int userGroupid = sc.getUsergroupid(); MenuConfig menuC
51、onfig = new MenuConfig("車票",sc); String ActionPath = "./Action/RunningtimeAction.jsp" UrlBuilder urlBuilder = new UrlBuilder(request);int cpoid = TypeConvert.ToInt32(urlBuilder.getParams("cpoid");CChepiaoorder objOrder = CChepiaoorder.Create(cpoid);int count = objOrder.
52、getmCounts(); int type = objOrder.getmTypes(); int runningid = objOrder.getmRunningid(); String Idxstart = objOrder.getmIdxstart(); String Idxend = objOrder.getmIdxend(); String Timestart = objOrder.getmTimestart(); CRunningtime obj = CRunningtimeDal.Create(runningid); CCheci objCheci = CCheciDal.Cr
53、eate(obj.getmCcid(); LinesMgr lm = new LinesMgr(CLinesDal.Select("ccid="+ obj.getmCcid(),"order by idx"); %><jsp:include page="./Program/Banner.jsp"></jsp:include><%out.print(menuConfig.ToHtml();%><%PageEditConfig pageEditConfig = new PageEditCon
54、fig("提交訂單",out);pageEditConfig.enableEdit=true;/*btnOk-btnCancel*/pageEditConfig.btnOk.OnClick("_doPostback('"+ActionPath+"','SubmitTickit','" + runningid + "')");pageEditConfig.btnOk.setText("提交訂單");pageEditConfig.btnCancel.O
55、nClick("_doPostback('"+ActionPath+"','EditCancel','')"); /*txt車次編號*/ Static txtCcno = new Static("txtCcno",obj.getmCcno();pageEditConfig.AddItem( "車次", txtCcno+"("+lm.getNameFirst()+"->"+ lm.getNameEnd() +")&
56、quot;); Static txtIdxstart = new Static("txtIdxstart",Idxstart);Static txtIdxend = new Static("txtIdxend",Idxend);CRunningdetail rdStart = CRunningdetailDal.Select("runningid="+ obj.getmRunningid()+" and czno='"+ Idxstart +"'", "" )
57、.get(0);CRunningdetail rdEnd = CRunningdetailDal.Select("runningid="+ obj.getmRunningid()+" and czno='"+ Idxend +"'", "" ).get(0);CRunningdetailList rdMids = CRunningdetailDal.Select("runningid="+ obj.getmRunningid() + " and idx>=&quo
58、t;+rdStart.getmIdx()+" and idx <= "+ rdEnd.getmIdx() +" ", "ORDER BY IDX" ); Calendar time1 = Calendar.getInstance(); time1.setTime(rdStart.getmTimestart(); Calendar time2 = Calendar.getInstance(); time2.setTime(rdEnd.getmTimestart(); String idxList = "," f
59、or( int i = 0 ; i < rdMids.size()-1 ; i+ ) idxList += rdMids.get(i).getmIdx()+"-"+ rdMids.get(i+1).getmIdx()+"," pageEditConfig.AddItem( "路線", txtIdxstart+"("+ time1.get(Calendar.HOUR_OF_DAY)+"時" + time1.get(Calendar.MINUTE)+"分"+")&
60、quot;+"->"+txtIdxend+"("+ time2.get(Calendar.HOUR_OF_DAY)+"時" + time2.get(Calendar.MINUTE)+"分"+")" ); Static txtTimestart = new Static("txtTimestart",Timestart);pageEditConfig.AddItem( "發(fā)車時間", txtTimestart); Static txttype = ne
61、w Static("txttype",new SiteType(type).typeName);pageEditConfig.AddItem( "席位類型", txttype); Static txtcount = new Static("txtcount",count+"");pageEditConfig.AddItem( "席位數(shù)量", txtcount); String html="<table border=0>"html += "<tr>"html += "<th>席位號</th>" html += "<th>席位類別</th>" html += &quo
溫馨提示
- 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 自然語言及語音處理項目式教程 實訓(xùn)指導(dǎo) 實訓(xùn)1 配置NLP環(huán)境
- 分析師預(yù)期選股策略月報:分析師預(yù)期修正選股策略今年相對中證全指超額3.06
- 2025以色列與伊朗沖突全面解析課件
- 氫能源未來2025年加氫站建設(shè)成本效益分析與布局指南報告
- 2025年家具制造業(yè)個性化定制生產(chǎn)模式市場風(fēng)險預(yù)警報告
- 2025年煤炭清潔燃燒技術(shù)產(chǎn)業(yè)鏈上下游協(xié)同發(fā)展報告
- 工業(yè)互聯(lián)網(wǎng)平臺安全多方計算在智能倉儲物流中的應(yīng)用報告
- 教育大數(shù)據(jù)分析2025年:教育資源配置優(yōu)化與教育公平研究報告
- 工業(yè)互聯(lián)網(wǎng)平臺網(wǎng)絡(luò)安全態(tài)勢感知技術(shù)在電力行業(yè)的應(yīng)用與優(yōu)化報告
- 工業(yè)互聯(lián)網(wǎng)平臺安全多方計算技術(shù):2025年網(wǎng)絡(luò)安全風(fēng)險預(yù)警與應(yīng)對策略研究報告
- 處方點評工作表模板
- 貴陽市南明區(qū)吉祥寵物醫(yī)院建設(shè)項目環(huán)評報告
- 智能制造裝備及系統(tǒng) 配套課件
- 遼寧省沈陽市沈北新區(qū)2022-2023學(xué)年六年級下學(xué)期期末考試語文試題
- 北師大版七年級上冊數(shù)學(xué)27有理數(shù)的乘法課件(2課時)
- 安全生產(chǎn)標(biāo)準(zhǔn)化推進計劃 模板
- 2022年咖啡師資格證考試參考題庫及答案
- 新視野大學(xué)英語第三版第一冊電子書
- 野生動物管理學(xué)知到章節(jié)答案智慧樹2023年東北林業(yè)大學(xué)
- 2023年黑龍江省文化和旅游系統(tǒng)事業(yè)單位人員招聘筆試模擬試題及答案解析
- 口才與演講實訓(xùn)教程智慧樹知到答案章節(jié)測試2023年湖南師范大學(xué)
評論
0/150
提交評論