版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、<p> 火車訂票系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)</p><p><b> 摘 要</b></p><p> 隨著科學(xué)技術(shù)的不斷提高,計(jì)算機(jī)科學(xué)日漸成熟,其強(qiáng)大的功能已為人們深刻認(rèn)識(shí),它已進(jìn)入人類社會(huì)的各個(gè)領(lǐng)域并發(fā)揮著越來(lái)越重要的作用。作為計(jì)算機(jī)應(yīng)用的一部分使用計(jì)算機(jī)對(duì)火車信息進(jìn)行管理,具有手工管理所無(wú)法比擬的優(yōu)點(diǎn)。例如:檢索迅速?查找方便?可靠性高?存儲(chǔ)量
2、大?保密性好?壽命長(zhǎng)?成本低等?這些優(yōu)點(diǎn)能夠極大地提高火車信息管理的效率,也是企業(yè)的科學(xué)化?正規(guī)化管理,與世界接軌的重要條件。</p><p> 本文針對(duì)火車站的訂票實(shí)際情況,按照軟件工程的結(jié)構(gòu)化設(shè)計(jì)思想,經(jīng)過(guò)項(xiàng)目的可行性研究和需求分析,總體設(shè)計(jì),詳細(xì)設(shè)計(jì),以及編碼實(shí)現(xiàn)和調(diào)試等步驟設(shè)計(jì)開(kāi)發(fā)了火車站網(wǎng)上訂票系統(tǒng)。并運(yùn)用數(shù)據(jù)流圖和數(shù)據(jù)字典,E-R圖和數(shù)據(jù)庫(kù)邏輯結(jié)構(gòu),層次圖,系統(tǒng)流程圖,以及程序流程圖,對(duì)該系統(tǒng)的數(shù)據(jù)
3、需求,數(shù)據(jù)庫(kù),系統(tǒng)軟件結(jié)構(gòu),系統(tǒng)流程,以及處理過(guò)程等進(jìn)行了分析和設(shè)計(jì)。</p><p> 本系統(tǒng)前臺(tái)主要使用JSP作為開(kāi)發(fā)語(yǔ)言,后臺(tái)使用MySQL作為數(shù)據(jù)庫(kù)管理系統(tǒng),開(kāi)發(fā)環(huán)境是MyEclipse,服務(wù)器采用tomcat,開(kāi)發(fā)出的一個(gè)基于Web技術(shù)的B/S結(jié)構(gòu)的火車訂票系統(tǒng)。</p><p> 關(guān)鍵詞:信息管理 火車訂票 JSP B/S結(jié)構(gòu)</p><p>
4、 The Design and Implementation of Train ticketing system</p><p><b> Abstract</b></p><p> With the continuous improvement of science and technology, computer science increasingly
5、mature, its powerful features for people to have a profound understanding, it has entered the human society in various fields and play an increasingly important role. As part of the computer application the use of comput
6、ers to train information management, with a manual management of the incomparable advantages. For example: the rapid retrieval and search for convenient, high reliability, large storage capac</p><p> Aiming
7、 at the train station booking the actual situation, in accordance with a structured software engineering design, after the project can do research and needs analysis, general design, detailed design, coding and debugging
8、 steps as well as the design and development of fire station online booking system. And use the data flow diagram and data dictionary, E-R diagram and database logical structure, hierarchy diagram, system flow chart, and
9、 program flow chart of the system, data requirements, </p><p> The front of the system using JSP as a development language, the use of MySQL as a database management system, the development environment is M
10、yEclipse, server using tomcat, developed a Web technology based on B/S structure of railway ticketing system.</p><p> Key words: information management; train ticket; JSP; B / S structure</p><p&g
11、t;<b> 目 錄</b></p><p><b> 中文摘要i</b></p><p><b> 英文摘要ii</b></p><p><b> 目錄iii</b></p><p><b> 第一章 緒論1</b&g
12、t;</p><p><b> 1.1課題背景1</b></p><p> 1.2目的和意義1</p><p> 1.3開(kāi)發(fā)工具及技術(shù)1</p><p> 1.3.1開(kāi)發(fā)工具1</p><p> 1.3.2 JSP2</p><p> 1.3.3 Ja
13、vaScript2</p><p> 1.3.4 Struts2簡(jiǎn)介3</p><p> 1.3.5 Hibernate簡(jiǎn)介3</p><p> 1.4軟硬件需求3</p><p> 第二章 需求分析4</p><p><b> 2.1需求調(diào)研4</b></p>
14、<p> 2.2可行性分析4</p><p> 2.2.1技術(shù)的可行性4</p><p> 2.2.2經(jīng)濟(jì)的可行性4</p><p> 2.2.3操作可行性4</p><p> 2.2.4法律的可行性5</p><p> 2.3系統(tǒng)用戶用例圖5</p><p>
15、; 2.3.1管理員用例圖5</p><p> 2.3.2會(huì)員用例圖5</p><p> 2.4功能模塊需求分析6</p><p> 2.5設(shè)計(jì)的基本思想7</p><p><b> 2.6性能需求7</b></p><p> 2.6.1系統(tǒng)的安全性7</p>
16、<p> 2.6.2數(shù)據(jù)的完整性7</p><p><b> 2.7界面需求7</b></p><p> 第三章 系統(tǒng)分析與設(shè)計(jì)8</p><p> 3.1數(shù)據(jù)庫(kù)的分析與設(shè)計(jì)8</p><p> 3.1.1數(shù)據(jù)庫(kù)的概念結(jié)構(gòu)設(shè)計(jì)8</p><p> 3.1.2數(shù)據(jù)庫(kù)
17、的邏輯結(jié)構(gòu)設(shè)計(jì)10</p><p> 3.1.3數(shù)據(jù)庫(kù)的連接原理12</p><p> 3.2中文亂碼問(wèn)題處理12</p><p> 第四章 系統(tǒng)功能實(shí)現(xiàn)13</p><p> 4.1前臺(tái)網(wǎng)站模塊13</p><p> 4.1.1網(wǎng)站首面13</p><p> 4.1.2
18、用戶注冊(cè)13</p><p> 4.1.3車票預(yù)訂14</p><p> 4.2會(huì)員功能模塊14</p><p> 4.2.1會(huì)員中心14</p><p> 4.2.2我的基本信息15</p><p> 4.2.3我的訂單信息15</p><p> 4.2.4修改密碼1
19、6</p><p> 4.3管理員功能模塊16</p><p> 4.3.1登錄系統(tǒng)16</p><p> 4.3.2管理員主頁(yè)面17</p><p> 4.3.3會(huì)員信息管理18</p><p> 4.3.4車次信息管理18</p><p> 4.3.5訂單信息管理20
20、</p><p> 4.3.6修改密碼21</p><p> 4.3.7退出系統(tǒng)21</p><p> 第五章 系統(tǒng)測(cè)試23</p><p> 5.1系統(tǒng)測(cè)試目的與意義23</p><p> 5.2測(cè)試過(guò)程23</p><p> 5.2.1主頁(yè)面的登錄模塊測(cè)試23<
21、/p><p> 5.2.2其他錯(cuò)誤24</p><p> 第六章 結(jié) 論25</p><p><b> 致 謝26</b></p><p><b> 參考文獻(xiàn)27</b></p><p><b> 第一章 緒論</b></p>
22、;<p><b> 1.1課題背景</b></p><p> 火車站市場(chǎng)的管理和規(guī)范問(wèn)題,是困擾我們多年的一個(gè)老問(wèn)題,也是政府管理中的一個(gè)難點(diǎn),訂票是客運(yùn)業(yè)務(wù)中的一個(gè)最基本的業(yè)務(wù),表面上看,它只是火車站業(yè)務(wù)的一個(gè)簡(jiǎn)單的部分,但是它涉及到管理與客戶服務(wù)等多方面[1],因此,過(guò)去傳統(tǒng)的售票方式已經(jīng)不能滿足現(xiàn)代客運(yùn)業(yè)務(wù)流量劇增的客觀要求,這就要求一種全新的訂票方式——網(wǎng)上訂票,來(lái)
23、緩解訂票高峰時(shí)期的客運(yùn)壓力,并為用戶提供方便快捷的訂票服務(wù)。</p><p><b> 1.2目的和意義</b></p><p> 中國(guó)現(xiàn)在擁有非常先進(jìn)、發(fā)達(dá)的鐵路系統(tǒng),但目前的售票系統(tǒng)還是上世紀(jì)60年代開(kāi)發(fā)的。2003年以后,中國(guó)鐵路開(kāi)始加快現(xiàn)代化建設(shè),近幾年來(lái)中國(guó)的火車訂票系統(tǒng)已經(jīng)逐步走向現(xiàn)代化,訂票全路聯(lián)網(wǎng),實(shí)現(xiàn)了信息化管理[2]。但是鐵路歷史由來(lái)的“老大難
24、”問(wèn)題——售票問(wèn)題,一直無(wú)法得到解決。每年的各大節(jié)假日,全國(guó)人民總會(huì)為買票問(wèn)題而苦惱,一部分人更是無(wú)緣車票。雖然目前的電話訂票,也極大地方便了旅客,然而最貼近現(xiàn)代化發(fā)展水平的還是網(wǎng)上訂票項(xiàng)目,國(guó)家也積極推進(jìn)。</p><p> 1.3開(kāi)發(fā)工具及技術(shù)</p><p><b> 1.3.1開(kāi)發(fā)工具</b></p><p> 此次設(shè)計(jì)主要采用M
25、yEclipse加Tomcat后臺(tái)服務(wù)器進(jìn)行,設(shè)計(jì)過(guò)程中頁(yè)面主要使用JSP技術(shù)完成,下面對(duì)MyEclipse、Tomcat和MySQL數(shù)據(jù)庫(kù)進(jìn)行簡(jiǎn)要介紹。</p><p> 1.3.1.1 MyEclipse </p><p> MyEclipse,是一個(gè)十分優(yōu)秀的用于開(kāi)發(fā)Java,J2EE的Eclipse插件集合,MyEclipse的功能非常強(qiáng)大,支持也十分廣泛,尤其是對(duì)各種開(kāi)元產(chǎn)品
26、的支持十分不錯(cuò)。MyEclipse企業(yè)級(jí)工作平臺(tái)(MyEclipse Enterprise Workbench,簡(jiǎn)稱MyEclipse)是對(duì)Eclipse IDE[3]的擴(kuò)展,利用它我們可以在數(shù)據(jù)庫(kù)和JavaEE的開(kāi)發(fā)、發(fā)布,以及應(yīng)用程序服務(wù)器的整合方面極大的提高工作效率。它是功能豐富的JavaEE集成開(kāi)發(fā)環(huán)境,包括了完備的編碼、調(diào)試、測(cè)試和發(fā)布功能,完整支持HTML, Struts, JSP, CSS, Javascript, SQL
27、, Hibernate。</p><p> 1.3.1.2 Tomcat </p><p> Tomcat是一個(gè)小型的輕量級(jí)應(yīng)用服務(wù)器,在中小型系統(tǒng)和并發(fā)訪問(wèn)用戶不是很多的場(chǎng)合下被普遍使用,是開(kāi)發(fā)和調(diào)試JSP 程序的首選。可以這樣認(rèn)為,當(dāng)在一臺(tái)機(jī)器上配置好Apahce服務(wù)器,可利用它響應(yīng)對(duì)HTML頁(yè)面的訪問(wèn)請(qǐng)求。實(shí)際上Tomcat 部分是Apache 服務(wù)器[3]的擴(kuò)展,但它是獨(dú)立運(yùn)行
28、的,所以當(dāng)運(yùn)行tomcat 時(shí),它實(shí)際上作為一個(gè)與Apache 獨(dú)立的進(jìn)程單獨(dú)運(yùn)行的。</p><p> 1.3.1.3 MySQL </p><p> MySQL 是一個(gè)關(guān)系型數(shù)據(jù)庫(kù)管理系統(tǒng),由瑞典 MySQL AB 公司開(kāi)發(fā),目前屬于 Oracle 公司。MySQL是最流行的關(guān)系型數(shù)據(jù)庫(kù)管理系統(tǒng),在 WEB 應(yīng)用方面 MySQL 是最好的 RDBMS(Relational Data
29、base Management System,關(guān)系數(shù)據(jù)庫(kù)管理系統(tǒng))應(yīng)用軟件之一。MySQL 是一種關(guān)聯(lián)數(shù)據(jù)庫(kù)管理系統(tǒng),關(guān)聯(lián)數(shù)據(jù)庫(kù)將數(shù)據(jù)保存在不同的表中,而不是將所有數(shù)據(jù)放在一個(gè)大倉(cāng)庫(kù)內(nèi),這樣就增加了速度并提高了靈活性。MySQL 所使用的 SQL 語(yǔ)言是用于訪問(wèn)數(shù)據(jù)庫(kù)的最常用標(biāo)準(zhǔn)化語(yǔ)言[3]。MySQL 軟件由于其體積小、速度快、總體擁有成本低,尤其是開(kāi)放源碼這一特點(diǎn),一般中小型網(wǎng)站的開(kāi)發(fā)都選擇 MySQL 作為網(wǎng)站數(shù)據(jù)庫(kù)。</p
30、><p><b> 1.3.2 JSP</b></p><p> JSP技術(shù)使用Java編程語(yǔ)言編寫類XML的tags和scriptlets,來(lái)封裝產(chǎn)生動(dòng)態(tài)網(wǎng)頁(yè)的處理邏輯。網(wǎng)頁(yè)還能通過(guò)tags和scriptlets訪問(wèn)存在于服務(wù)端的資源的應(yīng)用邏輯。JSP將網(wǎng)頁(yè)邏輯與網(wǎng)頁(yè)設(shè)計(jì)和顯示分離,支持可重用的基于組件的設(shè)計(jì)[4],可以使基于Web的應(yīng)用程序的開(kāi)發(fā)變得迅速和容易。&
31、lt;/p><p> Web服務(wù)器在遇到訪問(wèn)JSP網(wǎng)頁(yè)的請(qǐng)求時(shí),首先執(zhí)行其中的程序段,然后將執(zhí)行結(jié)果連同JSP文件中的HTML代碼一起返回給客戶。插入的Java程序段可以操作數(shù)據(jù)庫(kù)、重新定向網(wǎng)頁(yè)等,以實(shí)現(xiàn)建立動(dòng)態(tài)網(wǎng)頁(yè)所需要的功能。JSP與Servlet一樣,是在服務(wù)器端執(zhí)行的,通常返回給客戶端就是一個(gè)HTML文本,因此客戶端只要有瀏覽器能瀏覽。JSP頁(yè)面由HTML代碼和嵌入其中的Java代碼所組成。服務(wù)器在頁(yè)面被客
32、戶端請(qǐng)求以后對(duì)這些Java代碼進(jìn)行處理,然后將生成的HTML頁(yè)面返回給客戶端的瀏覽器[5]。Servlet是JSP的技術(shù)基礎(chǔ),而且大型的Web應(yīng)用程序的開(kāi)發(fā)需要Java Servlet和JSP配合才能完成。JSP具備了Java技術(shù)的簡(jiǎn)單易用,完全的面向?qū)ο螅哂衅脚_(tái)無(wú)關(guān)性且安全可靠,主要面向因特網(wǎng)的所有特點(diǎn)[6]。</p><p> 1.3.3 JavaScript</p><p>
33、JavaScript是一種基于對(duì)象和事件驅(qū)動(dòng)并具有相對(duì)安全性的客戶端腳本語(yǔ)言。同時(shí)也是一種廣泛用于客戶端Web開(kāi)發(fā)的腳本語(yǔ)言,常用來(lái)給HTML網(wǎng)頁(yè)添加動(dòng)態(tài)功能,比如響應(yīng)用戶的各種操作。JavaScript的一個(gè)重要功能就是面向?qū)ο蟮墓δ?,通過(guò)基于對(duì)象的程序設(shè)計(jì),可以用更直觀、模塊化和可重復(fù)使用的方式進(jìn)行程序開(kāi)發(fā)。在HTML基礎(chǔ)上,使用Javascript可以開(kāi)發(fā)交互式Web網(wǎng)頁(yè)。Javascript的出現(xiàn)使得網(wǎng)頁(yè)和用戶之間實(shí)現(xiàn)了一種實(shí)時(shí)
34、性的、動(dòng)態(tài)的、交互性的關(guān)系,使網(wǎng)頁(yè)包含更多活躍的元素和更加精彩的內(nèi)容[7]。在本系統(tǒng)中很多地方使用了javascript技術(shù),比如說(shuō),檢驗(yàn)用戶輸入數(shù)據(jù)的有效性,是否重復(fù),是否為空等等。</p><p> 1.3.4 Struts2簡(jiǎn)介</p><p> Struts最早是作為Apache Jakarta項(xiàng)目的組成部分問(wèn)世運(yùn)作。項(xiàng)目的創(chuàng)立者希望通過(guò)對(duì)該項(xiàng)目的研究,改進(jìn)和提高Java Se
35、rver Pages、Servlet、標(biāo)簽庫(kù)以及面向?qū)ο蟮募夹g(shù)水準(zhǔn)。它的目的是為了減少在運(yùn)用MVC設(shè)計(jì)模型來(lái)開(kāi)發(fā)Web應(yīng)用的時(shí)間。</p><p> 使用Struts的目的是為了幫助我們減少在運(yùn)用MVC設(shè)計(jì)模型來(lái)開(kāi)發(fā)Web應(yīng)用的時(shí)間。Struts是Apache軟件基金會(huì)(ASF)贊助的一個(gè)開(kāi)源項(xiàng)目。它最初是Jakarta項(xiàng)目中的一個(gè)子項(xiàng)目,并在2002年3月成為ASF的頂級(jí)項(xiàng)目。它通過(guò)采用Java Servle
36、t/JSP技術(shù),實(shí)現(xiàn)了基于Java EE Web應(yīng)用的Model-View-Controller〔MVC〕設(shè)計(jì)模式的應(yīng)用框架〔Web Framework〕[3],是MVC經(jīng)典設(shè)計(jì)模式中的一個(gè)經(jīng)典產(chǎn)品。而Struts2則是Struts的升級(jí)版本。</p><p> 1.3.5 Hibernate簡(jiǎn)介</p><p> Hibernate是一個(gè)開(kāi)放源代碼的對(duì)象關(guān)系映射框架,它對(duì)JDBC進(jìn)行
37、了非常輕量級(jí)的對(duì)象封裝,使得Java程序員可以隨心所欲的使用對(duì)象編程思維來(lái)操縱數(shù)據(jù)庫(kù)。Hibernate可以應(yīng)用在任何使用JDBC的場(chǎng)合,既可以在Java的客戶端程序使用,也可以在Servlet/JSP的Web應(yīng)用中使用,最具革命意義的是,Hibernate可以在應(yīng)用EJB的J2EE架構(gòu)中取代CMP[3],完成數(shù)據(jù)持久化的重任。</p><p> Hibernate的核心接口一共有2個(gè),分別為:Session、
38、SessionFactory、Transaction、Query和Configuration。這2個(gè)核心接口在任何開(kāi)發(fā)中都會(huì)用到。通過(guò)這些接口,不僅可以對(duì)持久化對(duì)象進(jìn)行存取,還能夠進(jìn)行事務(wù)控制[3]。</p><p><b> 1.4軟硬件需求</b></p><p><b> 硬件需求:</b></p><p>
39、CPU:Pentium以上計(jì)算機(jī) </p><p> 內(nèi)存:512M以上 </p><p><b> 軟件需求:</b></p><p> 操作系統(tǒng)版本:Windows XP/vista/Win7 </p><p> 開(kāi)發(fā)工具:MyEclipse 10 </p><p> 后臺(tái)服務(wù)器:A
40、pache Tomcat 7 </p><p> 開(kāi)發(fā)語(yǔ)言:Java </p><p> 瀏覽器:IE 10 </p><p><b> 第二章 需求分析</b></p><p><b> 2.1需求調(diào)研</b></p><p> 在項(xiàng)目的開(kāi)始是需求調(diào)研,經(jīng)過(guò)一系列
41、的調(diào)查發(fā)現(xiàn),火車站市場(chǎng)的管理和規(guī)范問(wèn)題,是困擾我們多年的一個(gè)老問(wèn)題,也是政府管理中的一個(gè)難點(diǎn)。訂票是客運(yùn)業(yè)務(wù)中的一個(gè)最基本的業(yè)務(wù),表面上看,它只是火車站業(yè)務(wù)的一個(gè)簡(jiǎn)單的部分,但是它涉及到管理與客戶服務(wù)等多方面[1],因此,過(guò)去傳統(tǒng)的售票方式已經(jīng)不能滿足現(xiàn)代客運(yùn)業(yè)務(wù)流量劇增的客觀要求,這就要求一種全新的訂票方式——網(wǎng)上訂票,來(lái)緩解訂票高峰時(shí)期的客運(yùn)壓力,并為用戶提供方便快捷的訂票服務(wù)。</p><p><b&
42、gt; 2.2可行性分析</b></p><p> 開(kāi)發(fā)任何一個(gè)系統(tǒng),都會(huì)受到時(shí)間和資源上的限制。因此,在每一個(gè)項(xiàng)目開(kāi)發(fā)之前,都要進(jìn)行可行性分析,可以減少項(xiàng)目的開(kāi)發(fā)風(fēng)險(xiǎn),避免人力、物力和財(cái)力的浪費(fèi)。下面就技術(shù)、經(jīng)濟(jì)、操作和法律四個(gè)方面來(lái)介紹。</p><p> 2.2.1技術(shù)的可行性</p><p> 本系統(tǒng)開(kāi)發(fā)工具是MyEclipse和MySQ
43、L數(shù)據(jù)庫(kù),開(kāi)發(fā)語(yǔ)言是Java,主要使用了J2EE的技術(shù),java是一種面向?qū)ο缶幊陶Z(yǔ)言,簡(jiǎn)單易學(xué)而且靈活方便。大三時(shí)就學(xué)習(xí)了java課程,大四期間也系統(tǒng)的了解了J2EE的知識(shí),火車訂票系統(tǒng)總體上開(kāi)發(fā)難度不高,數(shù)據(jù)庫(kù)的設(shè)計(jì)和操作是本系統(tǒng)設(shè)計(jì)的核心。在大學(xué)期間學(xué)習(xí)過(guò)UML統(tǒng)一建模語(yǔ)言等課程,每個(gè)學(xué)期也會(huì)完成對(duì)應(yīng)的課程設(shè)計(jì),具備一定的系統(tǒng)分析、設(shè)計(jì)和測(cè)試能力。因此,完成系統(tǒng)實(shí)現(xiàn)在技術(shù)上完全具有可行性。</p><p>
44、 2.2.2經(jīng)濟(jì)的可行性</p><p> 如今是信息化時(shí)代,信息化管理可以使車票管理、預(yù)訂工作更加系統(tǒng)化、快速化、全面化。這樣可以為企業(yè)帶來(lái)較高的工作效益和經(jīng)濟(jì)效益,本系統(tǒng)對(duì)計(jì)算機(jī)配置的要求不高,企業(yè)機(jī)房更換下來(lái)的低配置電腦都可以完全滿足需要,再者,企業(yè)在管理工作上的高效率和便捷性遠(yuǎn)遠(yuǎn)超過(guò)了開(kāi)發(fā)本系統(tǒng)的成本[8],所以在經(jīng)濟(jì)上具有完全的可行性。</p><p> 2.2.3操作可行
45、性</p><p> 本系統(tǒng)操作簡(jiǎn)單,輸入信息頁(yè)面大多數(shù)都是下拉框的選擇形式,在某些頁(yè)面,信息可以自動(dòng)生成,無(wú)需輸入,時(shí)間的輸入也是用的日歷控件,操作簡(jiǎn)便,對(duì)操作人員的要求很低,只需對(duì)WINDOWS操作熟練,加之對(duì)本系統(tǒng)的操作稍加培訓(xùn)即可工作,而且本系統(tǒng)可視性非常好,所以在技術(shù)上不會(huì)有很大難度。</p><p> 2.2.4法律的可行性</p><p> 本系
46、統(tǒng)是自行開(kāi)發(fā)的管理系統(tǒng),是很有實(shí)際意義的系統(tǒng),開(kāi)發(fā)環(huán)境軟件和使用的數(shù)據(jù)庫(kù)都是開(kāi)源代碼,開(kāi)發(fā)這個(gè)系統(tǒng)不同于開(kāi)發(fā)普通的系統(tǒng)軟件,不存在侵權(quán)等問(wèn)題,即法律上是可行的[8]。</p><p> 綜上所述,開(kāi)發(fā)一個(gè)網(wǎng)絡(luò)火車訂票系統(tǒng)與傳統(tǒng)售票的方式相比具有速度更快,操作更準(zhǔn)確,節(jié)省開(kāi)支等有利之處,因此,建立一個(gè)網(wǎng)絡(luò)火車訂票系統(tǒng)是必要可行的。</p><p> 2.3系統(tǒng)用戶用例圖</p>
47、;<p> 2.3.1管理員用例圖</p><p> 管理員是系統(tǒng)的核心用戶,涉及到四大功能模塊,管理員對(duì)系統(tǒng)的所有用戶有著操作的權(quán)限,能夠及時(shí)動(dòng)態(tài)的掌握車票及訂單的各項(xiàng)情況。管理員用例圖如圖2-1所示:</p><p> 圖2-1 管理員用例圖</p><p> 2.3.2會(huì)員用例圖</p><p> 會(huì)員是系統(tǒng)的主
48、要用戶,登錄系統(tǒng)可進(jìn)入會(huì)員中心。會(huì)員用例圖如圖2-2所示:</p><p> 圖2-2 會(huì)員用例圖</p><p> 2.4功能模塊需求分析</p><p> 本系統(tǒng)最大的特點(diǎn)是使用操作簡(jiǎn)單、友好的提示信息。本系統(tǒng)將實(shí)現(xiàn)以下基本功能:</p><p> ?。?)系統(tǒng)具有簡(jiǎn)潔大方的頁(yè)面,使用簡(jiǎn)便,友好的錯(cuò)誤操作提示。</p>
49、<p> ?。?)管理員用戶具有管理員信息管理、會(huì)員信息管理、車次信息管理、訂單信息管理等功能。</p><p> ?。?)具有較強(qiáng)的安全性,避免用戶的惡意操作[9]。</p><p> 管理員功能模塊圖說(shuō)明:管理員是功能最多的一種用戶角色。</p><p> (1)管理員管理模塊:在該模塊中完成管理員的密碼修改功能。</p><
50、p> (2)會(huì)員信息管理模塊:在該模塊中定義了注冊(cè)會(huì)員信息的管理,其功能包括會(huì)員信息的查詢、刪除等操作。</p><p> (3)車次信息管理模塊:在該模塊中定義了對(duì)車次信息的管理,其功能包括車次信息錄入、查詢、刪除等操作。</p><p> (4)訂單信息管理模塊:在該模塊中定義了對(duì)訂單信息的管理,其功能包括訂單信息查詢、受理、刪除等操作。</p><p&
51、gt; 管理員用戶功能模塊圖如圖2-3所示:</p><p> 圖2-3 管理員用戶功能模塊圖</p><p> 2.5設(shè)計(jì)的基本思想</p><p> 設(shè)計(jì)思想遵循以下幾點(diǎn):</p><p> 1. 采用B/S模式進(jìn)行開(kāi)發(fā),其優(yōu)點(diǎn)是后臺(tái)與前臺(tái)處理層次分明,而且符合眾多已經(jīng)習(xí)慣網(wǎng)頁(yè)方式的用戶。</p><p>
52、; 2. 采用面向?qū)ο蟮拈_(kāi)發(fā)與設(shè)計(jì)理念。運(yùn)用面向?qū)ο蠹夹g(shù)的前提是對(duì)整體系統(tǒng)的高度和準(zhǔn)確抽象,通過(guò)它可以保證系統(tǒng)良好的框架,進(jìn)而帶來(lái)產(chǎn)品較強(qiáng)的穩(wěn)定性和運(yùn)行效率。</p><p> 3. 采用模塊化設(shè)計(jì)。模塊化設(shè)計(jì)要求將整個(gè)系統(tǒng)劃分成基于小的模塊,有利于代碼的重載,簡(jiǎn)化設(shè)計(jì)和實(shí)現(xiàn)過(guò)程。</p><p> 4. 簡(jiǎn)單方便的系統(tǒng)界面。設(shè)計(jì)簡(jiǎn)單友好的系統(tǒng)界面,方便用戶較快的適應(yīng)系統(tǒng)的操作。&l
53、t;/p><p> 5.速度優(yōu)先原則。由于此工具最重要的評(píng)測(cè)標(biāo)準(zhǔn)就是速度,因此在設(shè)計(jì)過(guò)程中,具體過(guò)程盡量做到資源占用少,速度快。</p><p> 6.設(shè)計(jì)既要突出重點(diǎn),又要細(xì)致周到。要符合設(shè)計(jì)需求,在有可能改進(jìn)的地方進(jìn)行擴(kuò)充,使系統(tǒng)更適應(yīng)用戶的需要[9]。</p><p><b> 2.6性能需求</b></p><p&
54、gt; 2.6.1系統(tǒng)的安全性</p><p> 火車訂票系統(tǒng)在管理權(quán)限上要嚴(yán)格進(jìn)行控制,具體要求如下:</p><p> 想登錄火車訂票系統(tǒng)后臺(tái)進(jìn)行操作,必須有操作權(quán)限,沒(méi)有權(quán)限的用戶不能通過(guò)任何方式登錄系統(tǒng)查看系統(tǒng)的任何信息和數(shù)據(jù),以確保系統(tǒng)的嚴(yán)密性和安全性;要在前臺(tái)提交訂單等信息,必須先進(jìn)行注冊(cè),未注冊(cè)的用戶不能進(jìn)行任何操作。</p><p> 2.6
55、.2數(shù)據(jù)的完整性</p><p> 1.各種記錄信息的完整性,信息記錄內(nèi)容不能為空。</p><p> 2.各種數(shù)據(jù)間相互聯(lián)系的正確性。</p><p> 3.相同數(shù)據(jù)在不同記錄中的一致性。</p><p><b> 2.7界面需求</b></p><p> 界面設(shè)計(jì)目前已經(jīng)成為評(píng)價(jià)軟件
56、質(zhì)量的一條重要指標(biāo),一個(gè)好的用戶界面可以增加用戶使用系統(tǒng)的信心和興趣,提高工作效率,JSP技術(shù)是用JAVA語(yǔ)言作為腳本語(yǔ)言的,JSP網(wǎng)頁(yè)為整個(gè)服務(wù)器端的JAVA庫(kù)單元提供了一個(gè)接口來(lái)服務(wù)于HTTP的應(yīng)用程序。創(chuàng)建動(dòng)態(tài)頁(yè)面非常方便。用戶界面是指軟件系統(tǒng)與用戶交互的接口,通常包括輸出、輸入、人-機(jī)對(duì)話的界面格式等[10]。</p><p> 第三章 系統(tǒng)分析與設(shè)計(jì)</p><p> 3.1
57、數(shù)據(jù)庫(kù)的分析與設(shè)計(jì)</p><p> 計(jì)算機(jī)信息系統(tǒng)以數(shù)據(jù)庫(kù)為核心,在數(shù)據(jù)庫(kù)管理系統(tǒng)的支持下,進(jìn)行信息的收集、整理、存儲(chǔ)、檢索、更新、加工、統(tǒng)計(jì)和傳播等操作。數(shù)據(jù)庫(kù)已經(jīng)成為現(xiàn)在信息系統(tǒng)等計(jì)算機(jī)系統(tǒng)的基礎(chǔ)與核心部分[10]。數(shù)據(jù)庫(kù)設(shè)計(jì)的好壞直接影響到整個(gè)系統(tǒng)的質(zhì)量和效率。</p><p> 數(shù)據(jù)庫(kù)的設(shè)計(jì)一般經(jīng)過(guò)規(guī)劃。需求分析、概念設(shè)計(jì)、邏輯設(shè)計(jì)、物理設(shè)計(jì)5個(gè)步驟。</p>
58、<p> 3.1.1數(shù)據(jù)庫(kù)的概念結(jié)構(gòu)設(shè)計(jì)</p><p> 概念設(shè)計(jì)是指在數(shù)據(jù)分析的基礎(chǔ)上自底向上的建立整個(gè)系統(tǒng)的數(shù)據(jù)庫(kù)概念結(jié)構(gòu),從用戶的角度進(jìn)行視圖設(shè)計(jì),然后將視圖集成,最后對(duì)集成的結(jié)構(gòu)分析優(yōu)化得到最后結(jié)果[9]。</p><p> 數(shù)據(jù)庫(kù)的概念結(jié)構(gòu)設(shè)計(jì)采用實(shí)體—聯(lián)系(E-R)模型設(shè)計(jì)方法。E-R模型法的組成元素有:實(shí)體、屬性、聯(lián)系,E-R模型用E-R圖表示,是提示用戶工
59、作環(huán)境中所涉及的事物,屬性則是對(duì)實(shí)體特性的描述[9]。</p><p> 根據(jù)以上對(duì)數(shù)據(jù)庫(kù)的需求分析,并結(jié)合系統(tǒng)概念模型的特點(diǎn)及建立方法,建立E-R模型圖。</p><p> 會(huì)員信息實(shí)體E-R圖如圖3-1所示:</p><p> 圖3-1 會(huì)員信息實(shí)體E-R圖</p><p> 車次信息實(shí)體E-R圖如圖3-2所示</p>
60、<p> 圖3-2 車次信息實(shí)體E-R圖</p><p> 訂單信息E-R圖如圖3-3所示</p><p> 圖3-3 訂單信息實(shí)體E-R圖</p><p> 管理員信息E-R圖如圖3-4所示</p><p> 圖3-4 管理員信息實(shí)體E-R圖</p><p> 3.1.2數(shù)據(jù)庫(kù)的邏輯結(jié)構(gòu)設(shè)計(jì)
61、</p><p> 我們知道,數(shù)據(jù)庫(kù)概念模型獨(dú)立于任何特定的數(shù)據(jù)庫(kù)管理系統(tǒng),因此,需要根據(jù)具體使用的數(shù)據(jù)庫(kù)管理系統(tǒng)的特點(diǎn)進(jìn)行轉(zhuǎn)換。即轉(zhuǎn)化為按計(jì)算機(jī)觀點(diǎn)處理的邏輯關(guān)系模型,E-R模型向關(guān)系數(shù)據(jù)庫(kù)模型轉(zhuǎn)換應(yīng)遵循下列原則:</p><p> *每一個(gè)實(shí)體要轉(zhuǎn)換成一個(gè)關(guān)系</p><p> *所有的主鍵必須定義非空(NOT NULL)</p><p
62、> *對(duì)于二元聯(lián)系應(yīng)按照一對(duì)多、弱對(duì)實(shí)、一對(duì)一、多對(duì)多等聯(lián)系來(lái)定義外鍵[9]。</p><p> 根據(jù)E-R模型,火車訂票系統(tǒng)建立了以下邏輯數(shù)據(jù)結(jié)構(gòu),下面是各數(shù)據(jù)表的詳細(xì)說(shuō)明。</p><p> (1)會(huì)員信息表主要是記錄了會(huì)員基本信息。表結(jié)構(gòu)如表3-5所示。</p><p> 表3-5會(huì)員信息表(t_user)</p><p>
63、; (2)車次信息表主要是記錄了車次的基本信息,表結(jié)構(gòu)如表3-6所示。</p><p> 表3-6車次信息表(t_checi)</p><p> (3)訂單信息表主要是記錄訂單的基本信息,表結(jié)構(gòu)如表3-7所示。</p><p> 表3-7訂單信息表(t_yuding)</p><p> (6)管理員信息表主要記錄管理員的賬號(hào)信息,包
64、括用戶名和密碼,表結(jié)構(gòu)如表3-8所示。</p><p> 表3-8管理員信息表(t_admin)</p><p> 3.1.3數(shù)據(jù)庫(kù)的連接原理</p><p> 本系統(tǒng)采用Hibernate對(duì)數(shù)據(jù)庫(kù)進(jìn)行管理。Hibernate 是一個(gè)開(kāi)放源代碼的對(duì)象關(guān)系映射框架,它對(duì) JDBC 進(jìn)行了輕量級(jí)的對(duì)象封裝,使 Java 程序員可以隨心所欲的使用對(duì)象編程思維來(lái)操縱數(shù)
65、據(jù)庫(kù)。它不僅提供了從 Java 類到數(shù)據(jù)表之間的映射,也提供了數(shù)據(jù)查詢和恢復(fù)機(jī)制[3]。相對(duì)于使用 JDBC 和 SQL 來(lái)手工操作數(shù)據(jù)庫(kù),Hibernate 可以大大減少操作數(shù)據(jù)庫(kù)的工作量。另外Hibernate 可以利用代理模式來(lái)簡(jiǎn)化載入類的過(guò)程,這將大大減少利用 Hibernate QL 從數(shù)據(jù)庫(kù)提取數(shù)據(jù)的代碼的編寫量,從而節(jié)約開(kāi)發(fā)時(shí)間和開(kāi)發(fā)成本 Hibernate 可以和多種Web 服務(wù)器或者應(yīng)用服務(wù)器良好集成,如今已經(jīng)支持幾乎
66、所有的流行的數(shù)據(jù)庫(kù)服務(wù)器。</p><p> Hibernate 技術(shù)本質(zhì)上是一個(gè)提供數(shù)據(jù)庫(kù)服務(wù)的中間件。它的架構(gòu)如圖3-9所示:</p><p> 圖3-9 Hibernatre架構(gòu)圖</p><p> 圖3.5顯示了 Hibernate 的工作原理,它是利用數(shù)據(jù)庫(kù)以及其他一些配置文件如 Hibernate.properties,XML Mapping 等來(lái)
67、為應(yīng)用程序提供數(shù)據(jù)持久化服務(wù)的。</p><p> Hibernate 具有很大的靈活性,但同時(shí)它的體系結(jié)構(gòu)比較復(fù)雜,提供了好幾種不同的運(yùn)行方式。在輕型體系中,應(yīng)用程序提供 JDBC 連接,并且自行管理事務(wù),這種方式使用了 Hibernate 的一個(gè)最小子集[3];在全面解決體系中,對(duì)于應(yīng)用程序來(lái)說(shuō),所有底層的 JDBC/JTA API 都被抽象了,Hibernate 會(huì)替你照管所有的細(xì)節(jié)。</p>
68、<p> 3.2中文亂碼問(wèn)題處理</p><p> 在程序中經(jīng)常會(huì)遇到中文亂碼的情況,解決辦法是將頁(yè)面的編碼方式和struts.xml的設(shè)置的編碼方式都用成utf-8。</p><p> 在jsp頁(yè)面設(shè)定字符編碼,<%@ page pageEncoding="UTF-8" %>;</p><p> 在struts
69、.properties中加入?yún)?shù)struts.i18n.encoding = UTF-8。</p><p> 第四章 系統(tǒng)功能實(shí)現(xiàn)</p><p> 在管理信息系統(tǒng)的生命周期中,經(jīng)過(guò)了需求分析、系統(tǒng)設(shè)計(jì)等階段之后,便開(kāi)始了系統(tǒng)實(shí)施階段。在系統(tǒng)分析和設(shè)計(jì)階段,系統(tǒng)開(kāi)發(fā)工作主要是集中在邏輯、功能和技術(shù)設(shè)計(jì)上,系統(tǒng)實(shí)施階段要繼承此前面各個(gè)階段的工作成果,將技術(shù)設(shè)計(jì)轉(zhuǎn)化為物理實(shí)現(xiàn),因此系統(tǒng)實(shí)施
70、的成果是系統(tǒng)分析和設(shè)計(jì)階段的結(jié)晶[10-13]。</p><p><b> 4.1前臺(tái)網(wǎng)站模塊</b></p><p> 4.1.1網(wǎng)站首面 </p><p> 1.描述:火車訂票系統(tǒng)網(wǎng)首頁(yè)分為頂部菜單、右側(cè)的登錄模塊及日歷表、中間主要的車次信息三部分組成。</p><p> 2.程序效果圖如下圖4-1所示:&l
71、t;/p><p><b> 圖4-1 網(wǎng)站首頁(yè)</b></p><p><b> 4.1.2用戶注冊(cè)</b></p><p> 1.描述:新用戶通過(guò)該模塊實(shí)現(xiàn)網(wǎng)站注冊(cè)會(huì)員功能的實(shí)現(xiàn)。</p><p> 2.程序效果圖如下圖4-2所示:</p><p> 圖4-2 用戶注
72、冊(cè)界面</p><p><b> 4.1.3車票預(yù)訂</b></p><p> 1.描述:注冊(cè)用戶瀏覽主頁(yè)中的所有可預(yù)訂的車票信息,點(diǎn)擊預(yù)訂,填寫預(yù)訂信息,完成車票預(yù)訂操作。預(yù)訂車票時(shí)要先判斷用戶是否登錄,否則不能預(yù)訂。</p><p> 2.程序效果圖如下圖4-3所示:</p><p> 圖4-3 車票預(yù)訂界面
73、</p><p><b> 4.2會(huì)員功能模塊</b></p><p><b> 4.2.1會(huì)員中心</b></p><p> 1.描述:會(huì)員中心主頁(yè)面:左方頁(yè)面展示了會(huì)員可操作的兩大功能,進(jìn)入相關(guān)的管理頁(yè)面可以鏈接到子菜單,每個(gè)管理模塊下面都有相應(yīng)的子菜單。</p><p> 2.程序運(yùn)行
74、效果圖如圖4-4所示:</p><p> 圖4-4會(huì)員中心主頁(yè)面</p><p> 4.2.2我的基本信息</p><p> 1.描述:會(huì)員點(diǎn)擊左側(cè)的菜單“我的基本信息”,頁(yè)面跳轉(zhuǎn)到我的基本信息界面,調(diào)用后臺(tái)的action類查詢出我的基本信息,并顯示到頁(yè)面上。</p><p> 2.程序效果圖如下圖4-5所示:</p>
75、<p> 圖4-5 我的基本信息</p><p> 4.2.3我的訂單信息</p><p> 1.描述:會(huì)員點(diǎn)擊左側(cè)的菜單“我的訂單信息”,頁(yè)面跳轉(zhuǎn)到會(huì)員訂單信息管理界面,調(diào)用后臺(tái)的action類查詢出所有的會(huì)員訂單信息,并把這些信息封轉(zhuǎn)到數(shù)據(jù)集合List中,綁定到request對(duì)象,然后頁(yè)面跳轉(zhuǎn)到相應(yīng)的jsp,顯示出會(huì)員訂單信息。</p><p>
76、 2.程序效果圖如下圖4-6所示:</p><p> 圖4-6 會(huì)員訂單信息</p><p><b> 4.2.4修改密碼</b></p><p> 1.描述:輸入用戶的原有密碼,輸入新密碼以后點(diǎn)擊修改按鈕即可修改密碼成功。</p><p> 2.程序效果圖如圖4-7所示:</p><p&g
77、t;<b> 圖4-7 修改密碼</b></p><p> 4.3管理員功能模塊</p><p><b> 4.3.1登錄系統(tǒng)</b></p><p> 1.描述:為了保證后臺(tái)管理系統(tǒng)的安全性,要使用本系統(tǒng),必須先登陸到系統(tǒng)中,管理員需要正確的賬號(hào)和密碼登錄本系統(tǒng)后臺(tái)管理。</p><p>
78、 2.程序運(yùn)行效果圖如圖4-8所示:</p><p> 圖4-8 后臺(tái)系統(tǒng)登陸頁(yè)面設(shè)計(jì)</p><p> 4.3.2管理員主頁(yè)面</p><p> 1.描述:管理員主頁(yè)面:左方頁(yè)面展示了管理員可操作的四大功能,進(jìn)入相關(guān)的管理頁(yè)面可以鏈接到子菜單,每個(gè)管理模塊下面都有相應(yīng)的子菜單。</p><p> 2.程序運(yùn)行效果圖如圖4-9所示:
79、</p><p> 圖4-9管理員主頁(yè)面</p><p> 4.3.3會(huì)員信息管理</p><p> 4.3.3.1會(huì)員信息管理</p><p> 1.描述:管理員點(diǎn)擊左側(cè)的菜單“會(huì)員信息管理”,頁(yè)面跳轉(zhuǎn)到會(huì)員信息管理界面,調(diào)用后臺(tái)的action類查詢出所有的會(huì)員信息,并把這些信息封轉(zhuǎn)到數(shù)據(jù)集合List中,綁定到request對(duì)象,然
80、后頁(yè)面跳轉(zhuǎn)到相應(yīng)的jsp,顯示出會(huì)員信息。</p><p> 2.程序效果圖如下圖4-10所示</p><p> 圖4-10 會(huì)員信息管理</p><p> 4.3.3.2會(huì)員信息刪除</p><p> 1.描述:點(diǎn)擊會(huì)員信息管理,頁(yè)面跳轉(zhuǎn)到會(huì)員信息管理界面,瀏覽所有的會(huì)員信息,點(diǎn)擊要?jiǎng)h除的會(huì)員信息,彈出的確定對(duì)話框,即可刪除該會(huì)員信
81、息。</p><p> 2.程序效果圖如圖4-11所示:</p><p> 圖4-11 會(huì)員信息刪除</p><p> 4.3.4車次信息管理</p><p> 4.3.4.1查詢車次信息</p><p> 1.描述:管理員點(diǎn)擊左側(cè)的菜單“車次信息管理”,頁(yè)面跳轉(zhuǎn)到車次信息管理界面,調(diào)用后臺(tái)的action類查
82、詢出所有的車次信息,并把這些信息封轉(zhuǎn)到數(shù)據(jù)集合List中,綁定到request對(duì)象,然后頁(yè)面跳轉(zhuǎn)到相應(yīng)的jsp,顯示出車次信息。還可以通過(guò)輸入條件查找到對(duì)應(yīng)的車次,然后進(jìn)行編輯或刪除。</p><p> 2.程序效果圖如圖4-12所示:</p><p> 圖4-12 查詢車次信息</p><p> 4.3.4.2添加車次信息</p><p&
83、gt; 1.描述:管理員輸入車次相關(guān)正確信息后點(diǎn)擊提交按鈕,如果是沒(méi)有輸入完整的車次信息,都會(huì)給出相應(yīng)的錯(cuò)誤提示,不能錄入成功。輸入數(shù)據(jù)都通過(guò)form表單中定義的方法onsubmit="return checkForm()"來(lái)檢查,checkForm()函數(shù)中是各種的校驗(yàn)輸入數(shù)據(jù)的方式。</p><p> 2.程序效果圖如圖4-13所示:</p><p> 圖4-
84、13 添加車次信息</p><p> 4.3.4.3修改車次信息</p><p> 1.描述:點(diǎn)擊車次信息管理,頁(yè)面跳轉(zhuǎn)到車次信息管理界面,瀏覽所有的車次信息,點(diǎn)擊要修改的車次信息,跳轉(zhuǎn)到車次信息修改頁(yè)面修改該條車次信息。</p><p> 2.程序效果圖如下圖4-14所示</p><p> 圖4-14 修改車次信息</p>
85、;<p> 4.3.5訂單信息管理</p><p> 4.3.5.1訂單信息管理</p><p> 1.描述:管理員點(diǎn)擊左側(cè)的菜單“訂單信息管理”,頁(yè)面跳轉(zhuǎn)到訂單信息管理界面,調(diào)用后臺(tái)的action類查詢出所有的訂單信息,并把這些信息封轉(zhuǎn)到數(shù)據(jù)集合List中,綁定到request對(duì)象,然后頁(yè)面跳轉(zhuǎn)到相應(yīng)的jsp,顯示出訂單信息。管理員可以對(duì)訂單進(jìn)行受理或刪除。</
86、p><p> 2.程序效果圖如下圖4-15所示</p><p> 圖4-15 訂單信息管理</p><p> 4.3.5.2訂單信息刪除</p><p> 1.描述:點(diǎn)擊訂單信息管理,頁(yè)面跳轉(zhuǎn)到訂單信息界面,瀏覽所有的訂單信息,點(diǎn)擊要?jiǎng)h除的訂單信息,彈出的確定對(duì)話框,即可刪除該訂單信息。</p><p> 2.程
87、序效果圖如圖4-16所示:</p><p> 圖4-16 訂單信息刪除</p><p><b> 4.3.6修改密碼</b></p><p> 1.描述:輸入管理員的原有密碼,輸入新密碼以后點(diǎn)擊修改按鈕即可修改密碼成功。</p><p> 2.程序效果圖如圖4-17所示:</p><p>
88、 圖4-17 修改密碼</p><p><b> 4.3.7退出系統(tǒng)</b></p><p> 1.描述:點(diǎn)此按鈕回到系統(tǒng)的主頁(yè)面。</p><p> 2.程序效果圖如圖4-18所示:</p><p> 圖4-18 退出系統(tǒng)</p><p> 3.關(guān)鍵代碼:主要是通過(guò)javascrip
89、t語(yǔ)句來(lái)實(shí)現(xiàn),item_word[8][4]="退出"; item_link[8][4]="javascript:window.open('../index.jsp','_self')"; </p><p><b> 第五章 系統(tǒng)測(cè)試</b></p><p> 5.1系統(tǒng)測(cè)試目的與意義<
90、/p><p> 系統(tǒng)測(cè)試是管理信息系統(tǒng)開(kāi)發(fā)周期中一個(gè)十分重要而漫長(zhǎng)的的階段。其重要性體現(xiàn)在他是保證系統(tǒng)質(zhì)量與可靠性的最后關(guān)口,是對(duì)整個(gè)系統(tǒng)開(kāi)發(fā)過(guò)程包括系統(tǒng)分析、系統(tǒng)設(shè)計(jì)和系統(tǒng)實(shí)現(xiàn)的最終審查。</p><p> 系統(tǒng)測(cè)試的任務(wù)是盡可能徹底的檢查出程序中的錯(cuò)誤,提高軟件系統(tǒng)的可靠性,其目的是檢驗(yàn)系統(tǒng)“做得怎樣”。這這階段又可以分為三個(gè)步驟:模塊測(cè)試,測(cè)試每個(gè)模塊的程序是否正確;組裝測(cè)試,測(cè)試模
91、塊之間的接口是否正確;確認(rèn)測(cè)試,測(cè)試整個(gè)軟件系統(tǒng)是否滿足用戶功能和性能的要求。測(cè)試發(fā)現(xiàn)問(wèn)題之后要經(jīng)過(guò)調(diào)試找出錯(cuò)誤原因和位置,然后進(jìn)行改正。是基于系統(tǒng)整體需求說(shuō)明書的黑盒測(cè)試,應(yīng)覆蓋系統(tǒng)隨偶聯(lián)合的部件[10-13]。系統(tǒng)測(cè)試是正對(duì)整個(gè)產(chǎn)品系統(tǒng)進(jìn)行的測(cè)試,目的是驗(yàn)證系統(tǒng)是否滿足了需求規(guī)格的定義,找出需求規(guī)格不符合或與之矛盾的地方。</p><p><b> 5.2測(cè)試過(guò)程</b></p&
92、gt;<p> 在測(cè)試之初,由于將數(shù)據(jù)庫(kù)中的數(shù)據(jù)是隨便輸入,沒(méi)有實(shí)用性,為了使系統(tǒng)更加完善,在系統(tǒng)測(cè)試的過(guò)程中,本系統(tǒng)將一開(kāi)始編程隨便輸入的數(shù)據(jù)全部清理后,輸入了一些有效的測(cè)試數(shù)據(jù),這樣可以更真實(shí)的反映系統(tǒng)的功能實(shí)現(xiàn)情況。</p><p> 這樣不斷發(fā)現(xiàn)問(wèn)題,經(jīng)過(guò)反復(fù)的測(cè)試、調(diào)試,把問(wèn)題一個(gè)個(gè)的解決,最終系統(tǒng)可以正常運(yùn)行。</p><p> 5.2.1主頁(yè)面的登錄模塊測(cè)
93、試</p><p> 測(cè)試流程: 1.打開(kāi)系統(tǒng)首頁(yè),輸入錯(cuò)誤的登錄信息</p><p><b> 2.登錄</b></p><p> 3.輸入正確的登錄信息</p><p><b> 4.登錄</b></p><p><b> 5.測(cè)試結(jié)果</b&g
94、t;</p><p><b> 5.2.2其他錯(cuò)誤</b></p><p> 在程序設(shè)計(jì)實(shí)現(xiàn)的過(guò)程中不可避免的會(huì)產(chǎn)生各種難以預(yù)料的錯(cuò)誤,如書寫錯(cuò)誤、傳值類型不一致、參數(shù)傳遞問(wèn)題等等。這些都需要通過(guò)細(xì)心的檢測(cè)與不斷的調(diào)試才能夠排除。比如在action配置時(shí)因粗心錯(cuò)誤導(dǎo)致運(yùn)行導(dǎo)致所報(bào)錯(cuò)誤,如圖5-1所示:</p><p> 圖 5-1 由于a
95、ction配置錯(cuò)誤,運(yùn)行時(shí)的提示</p><p> 很多時(shí)候往往是一些小錯(cuò)誤,debug難找到錯(cuò)誤所在,讓我調(diào)試半天。因此做系統(tǒng)一定要思維嚴(yán)謹(jǐn),編寫代碼要認(rèn)真仔細(xì),做事要細(xì)致。</p><p><b> 第六章 結(jié) 論</b></p><p> 本次畢業(yè)設(shè)計(jì)將我大學(xué)四年所學(xué)的軟件理論知識(shí)用到了具體的實(shí)踐中去,深化了理論知識(shí),同時(shí)也鍛煉了
96、動(dòng)手實(shí)踐能力。在這段日子里,我查閱了許多有關(guān)火車票網(wǎng)上訂票系統(tǒng)的資料,翻閱了許多JSP的書籍,結(jié)合自己的經(jīng)驗(yàn),詳細(xì)調(diào)查了網(wǎng)上訂票=管理的工作內(nèi)容與細(xì)節(jié),開(kāi)發(fā)設(shè)計(jì)了這個(gè)火車訂票系統(tǒng),雖然每個(gè)學(xué)期都會(huì)有相應(yīng)課程的課程設(shè)計(jì)和實(shí)訓(xùn)來(lái)作為動(dòng)手練習(xí)訓(xùn)練,不過(guò)在本次畢業(yè)設(shè)計(jì)具體的實(shí)踐的時(shí)候還是遇到了很多小問(wèn)題,比如說(shuō)在jsp頁(yè)面將輸入框設(shè)為不可用是添加屬性readonly=“true”,而我在實(shí)際編程中卻錯(cuò)寫成disable=“true”,這樣直接導(dǎo)
97、致了request對(duì)象取不到數(shù)據(jù),調(diào)試了程序很久才發(fā)現(xiàn)request對(duì)象獲得的返回值一直是空,之前一直以為是代碼哪里出了問(wèn)題,總是在查源程序的邏輯。這些雖然都是小問(wèn)題,但是由于不細(xì)心在具體實(shí)踐中卻浪費(fèi)了不少時(shí)間,看來(lái)平時(shí)還是要多多實(shí)踐才是。</p><p> 在系統(tǒng)的開(kāi)發(fā)過(guò)程中,我運(yùn)用到了B/S三層結(jié)構(gòu)技術(shù)和自己在平時(shí)學(xué)習(xí)中掌握的一些技術(shù),通過(guò)這些技術(shù)的實(shí)現(xiàn),整個(gè)系統(tǒng)的性能得到了大大的提高。這些技術(shù)都在論文中做
98、了比較詳細(xì)的介紹。本系統(tǒng)還存在許多的缺陷和不足之處,比如很多細(xì)節(jié)上做的還不行,有些功能模塊還應(yīng)再加強(qiáng)。希望在以后的時(shí)間里,我可以把這些缺陷都彌補(bǔ)過(guò)來(lái),進(jìn)一步完善系統(tǒng)。</p><p> 通過(guò)本次畢業(yè)設(shè)計(jì)我鍛煉了自己的自學(xué)、研究能力,也從中學(xué)到不少在課堂上學(xué)不到的東西。通過(guò)實(shí)踐我也深刻的體會(huì)到軟件開(kāi)發(fā)的艱辛及問(wèn)題解決后的喜悅心情,培養(yǎng)我的獨(dú)立思考問(wèn)題的能力,同時(shí)也增強(qiáng)了我的理論聯(lián)系實(shí)際的能力,這為自己以后的工作奠
99、定了良好的基礎(chǔ)。</p><p> 本系統(tǒng)可以在很大程度上增加人們售票的途徑,減少購(gòu)票的排隊(duì)時(shí)間,但由于時(shí)間按和技術(shù)條件的限制,還存在一些不足之處,有些功能還需要改進(jìn),還應(yīng)該做進(jìn)一步的系統(tǒng)調(diào)查需求分析工作,更深入的完善系統(tǒng)??傊粋€(gè)緊跟時(shí)代步伐的真正使用的軟件必需有一個(gè)不斷完善改進(jìn)的過(guò)程。</p><p><b> 致 謝</b></p>&l
100、t;p> 本次設(shè)計(jì)歷時(shí)三個(gè)月。在本次畢業(yè)設(shè)計(jì)中,能夠基本順利的完成任務(wù),是與錢亞冠老師的耐心指導(dǎo)分不開(kāi)的。錢老師無(wú)論是在畢業(yè)設(shè)計(jì)過(guò)程中,還是在論文完成中都給予了我極大的幫助。同時(shí),錢老師認(rèn)真負(fù)責(zé)的工作態(tài)度,嚴(yán)謹(jǐn)?shù)闹螌W(xué)精神和深厚的理論水平都使我受益匪淺。他勤奮嚴(yán)謹(jǐn)?shù)慕虒W(xué)態(tài)度也給我留下了極為深刻的印象。我從老師身上學(xué)到了很多東西。在理論上還是在實(shí)踐中,我能力都得到不少的提高,這對(duì)于我以后的工作和學(xué)習(xí)都有一種巨大的幫助,在此,特向錢老
101、師表示由衷的感謝。</p><p> 通過(guò)這次畢業(yè)設(shè)計(jì)的整個(gè)開(kāi)發(fā)過(guò)程,我系統(tǒng)開(kāi)發(fā)過(guò)程從需求分析到具體功能實(shí)現(xiàn),再到最終測(cè)試和維護(hù)的理解有了很大的進(jìn)步,讓我對(duì)系統(tǒng)開(kāi)發(fā)有了更深層次的認(rèn)識(shí)。現(xiàn)在我的動(dòng)手能力和獨(dú)立解決問(wèn)題的能力也得到了很大的鍛煉和提高,這是這次畢業(yè)設(shè)計(jì)最好的收獲。</p><p> 最后,在整個(gè)系統(tǒng)開(kāi)發(fā)過(guò)程中,我身邊的同學(xué)和朋友給了我很多的建議,讓我很快的確定了系統(tǒng)的業(yè)務(wù)邏輯
102、。在次我衷心的向他們表示感謝。</p><p><b> 參考文獻(xiàn)</b></p><p> [1] 馬建軍,許紅,楊浩.鐵路信息化發(fā)展戰(zhàn)略規(guī)劃研究[J].交通與計(jì)算機(jī).2011,13(03): 77-81. </p><p> [2] 吳沖.我國(guó)鐵路信息化建設(shè)現(xiàn)狀及發(fā)展方向[J].物流工程與管理.2013,5(01):82-84.<
103、;/p><p> [3] 郝玉龍等.JavaEE編程技術(shù)[M].北京:清華大學(xué)出版社;北京交通大學(xué)出版社,2009: 7-51. </p><p> [4] 方逵.JSP編程技術(shù)與應(yīng)用[M].北京:北京高等教育出版社,2012: 11-32. </p><p> [5] 劉國(guó)玲,姜合.基于JSP的信息傳遞技術(shù)[J].山東輕工業(yè)學(xué)院學(xué)報(bào).2014,9(7):40-4
104、5. </p><p> [6] 段永紅,李春海.基于JSP的網(wǎng)站建設(shè)[J].電腦開(kāi)發(fā)與應(yīng)用.2010,11(8):25-29.</p><p> [7] 張長(zhǎng)富,黃中敏.JavaScript動(dòng)態(tài)網(wǎng)頁(yè)編程實(shí)例手冊(cè)[M].北京:海洋出版社,2011: 54-66.</p><p> [8] 徐勇輝,胡琳,劉萍.基于網(wǎng)絡(luò)的火車售票系統(tǒng)[J].電腦知識(shí)與技術(shù)(學(xué)術(shù)交
105、流).2012,3(17): 40-42.</p><p> [9] 任奕帆.基于Java技術(shù)的的火車票訂購(gòu)系統(tǒng)設(shè)計(jì)研究[J].電子技術(shù)與軟件工程.2013,6(07): 29.</p><p> [10] (美)Bruce Eckel著,陳昊鵬譯. Java編程思想(第三版)[M].北京:機(jī)械工業(yè)出版社,2009: 57-83. </p><p> [11]
106、 (美)David Flanagan著,吳益華,陳志遠(yuǎn)譯. Java 技術(shù)手冊(cè)[M].北京:中國(guó)電力出版社,2010: 14-31. </p><p> [12] Tony C Shan,Wachovia Bank.Taxonomy of Java Web Application Frameworks[J].Proceedings. IEEE International Conference on e-Busi
107、ness Engineering.2006,13(6): 378-385. </p><p> [13] Gachet,A.Software Frameworks for Developing Decision Support Systems - A New Component in the Classification of DSS Development Tools.Journal of Decision
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 計(jì)算機(jī)系畢業(yè)論文---招聘信息管理系統(tǒng)
- 計(jì)算機(jī)信息管理畢業(yè)論文
- 計(jì)算機(jī)信息管理畢業(yè)論文
- 計(jì)算機(jī)信息管理畢業(yè)論文
- 計(jì)算機(jī)信息管理專業(yè)畢業(yè)論文
- 計(jì)算機(jī)信息管理專業(yè)畢業(yè)論文
- 計(jì)算機(jī)信息管理專業(yè)畢業(yè)論文
- 計(jì)算機(jī)信息管理專業(yè)畢業(yè)論文
- 計(jì)算機(jī)系畢業(yè)論文---基于web的學(xué)生信息管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)
- 計(jì)算機(jī)信息管理畢業(yè)論文---計(jì)算機(jī)圖書管理系統(tǒng)
- 計(jì)算機(jī)畢業(yè)論文-nba信息管理系統(tǒng)
- 計(jì)算機(jī)信息管理專科畢業(yè)論文
- 計(jì)算機(jī)信息管理系統(tǒng)畢業(yè)論文(設(shè)計(jì))
- 計(jì)算機(jī)系平面設(shè)計(jì)專業(yè)畢業(yè)論文
- 計(jì)算機(jī)學(xué)生信息管理系統(tǒng)畢業(yè)論文
- 淺析計(jì)算機(jī)信息管理系統(tǒng)畢業(yè)論文
- 計(jì)算機(jī)系畢業(yè)論文網(wǎng)絡(luò)安全
- 計(jì)算機(jī)系畢業(yè)設(shè)計(jì)論文
- 數(shù)學(xué)與計(jì)算機(jī)系網(wǎng)站優(yōu)化畢業(yè)論文
- 計(jì)算機(jī)信息管理畢業(yè)論文-- 學(xué)生管理系統(tǒng)
評(píng)論
0/150
提交評(píng)論