基于WEB和MYSQL開發(fā)的機(jī)票預(yù)訂系統(tǒng)_第1頁
基于WEB和MYSQL開發(fā)的機(jī)票預(yù)訂系統(tǒng)_第2頁
基于WEB和MYSQL開發(fā)的機(jī)票預(yù)訂系統(tǒng)_第3頁
基于WEB和MYSQL開發(fā)的機(jī)票預(yù)訂系統(tǒng)_第4頁
基于WEB和MYSQL開發(fā)的機(jī)票預(yù)訂系統(tǒng)_第5頁
已閱讀5頁,還剩25頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

題目基于WEB和MYSQL開發(fā)的機(jī)票預(yù)訂系統(tǒng)系別數(shù)學(xué)與信息工程系專業(yè)年級(jí)移動(dòng)互聯(lián)網(wǎng)2012級(jí)基于WEB和MYSQL開發(fā)的機(jī)票預(yù)訂系統(tǒng)摘要:本課程設(shè)計(jì)利用JSP和MYSQL數(shù)據(jù)庫來開發(fā)的。該系統(tǒng)要解決的是機(jī)票網(wǎng)上訂購管理中所要解決的一些問題,可以滿足機(jī)票網(wǎng)上預(yù)訂的一些簡單要求。能根據(jù)需求,快速的提供服務(wù)。本論文主要設(shè)計(jì)軟件,數(shù)據(jù)庫與網(wǎng)絡(luò)技術(shù)等。涵蓋知識(shí)面廣,可有效的提高同學(xué)們綜合知識(shí)分析及解決問題的能力,增強(qiáng)學(xué)生對(duì)事物的理解與掌握,培養(yǎng)學(xué)生的科學(xué)研究方法,正確的設(shè)計(jì)思想,獨(dú)立思考,用于進(jìn)取,敢于創(chuàng)新,為以后奠定基礎(chǔ)。關(guān)鍵詞:WEB技術(shù),系統(tǒng)設(shè)計(jì),機(jī)票網(wǎng)上預(yù)訂Abstract:ThiscoursedesignusingJSPandMYSQLdatabasetodevelopment,Thesystemtosolvetheticketorderonlinemanagementofsomeoftheproblemstobesolved,cansatisfytherequirementoftheonlineticketbookingsomesimple,Accordingtorequirements,fastservice.Thisthesismainlydesignsoftware,databaseandnetworktechnology,etc.Coverabroadscope,whichcaneffectivelyimprovestudentscomprehensiveknowledgeofanalysisandproblemsolvingskills,enhancestudentsunderstandingandgraspofthings,tocultivatethestudents`scientificresearchmethods,thecorrectdesignidea,independentthinking,forenterprising,daretoinnovation,tolaythefoundationforlater.Keywords:WEBtechnology,systemdesign,airticketsbookingonline目錄摘要 1Abstract 1第1章緒論 31.1選題目的和意義 31.2系統(tǒng)開發(fā)的必要性 31.3開發(fā)技術(shù) 31.3.1JSP技術(shù) 31.4開發(fā)工具 51.4.1Eclipses 51.4.2MYSQL 61.4.3Tomcat 61.5系統(tǒng)的主要功能 61.6背景說明 7第2章需求分析 72.1系統(tǒng)可行性分析 72.1.1技術(shù)可行性 72.1.2操作可行性 72.2數(shù)據(jù)需求 82.2.1數(shù)據(jù)錄入的準(zhǔn)確性與及時(shí) 82.2.2數(shù)據(jù)錄入的一致性與完整性 82.2.3數(shù)據(jù)的共享性與獨(dú)立性 8第3章數(shù)據(jù)庫設(shè)計(jì) 83.1實(shí)體E-R圖設(shè)計(jì) 83.1.1旅客信息實(shí)體E-R圖的 83.1.2航班信息實(shí)體E-R圖的 93.1.3已定信息實(shí)體E-R圖的 93.1.4各實(shí)體之間的E-R圖 93.2數(shù)據(jù)庫表設(shè)計(jì) 93.2.1user旅客信息表 103.2.2din旅客訂單信息表 103.2.3sch機(jī)票信息表 10第4章系統(tǒng)實(shí)現(xiàn) 104.1系統(tǒng)設(shè)計(jì)的總框圖 104.2用戶訂票系統(tǒng)的概要設(shè)計(jì) 114.3后臺(tái)管理系統(tǒng)的概要設(shè)計(jì) 11第5章主要設(shè)計(jì)代碼及界面 125.1普通用戶 125.1.1用戶登陸界面及主要代碼 135.1.2注冊(cè)信息界面及主要代碼 135.1.3航班信息頁面及主要代碼 235.1.4確定訂票信息界面及主要代碼 265.1.5個(gè)人信息頁面及主要代碼 285.1.6訂單頁面及主要代碼 315.2后臺(tái)管理系統(tǒng) 335.2.1制定航班頁面及主要代碼 335.2.2安排航班頁面及主要代碼 355.2.3查看航班頁面及主要代碼 375.2.4查看訂單頁面及主要代碼 39參考文獻(xiàn) 41致謝 411緒論1.1選題目的和意義隨著社會(huì)發(fā)展的不斷進(jìn)步,名航事業(yè)的壯大,人們消費(fèi)水平的提高,越來越多的人開始乘坐飛機(jī)出行,離學(xué)校遠(yuǎn)的學(xué)生去上課,白領(lǐng)辦公以及旅游的人們都選擇航空出行,飛機(jī)票的預(yù)訂在人們生活中也越來越重要了。人工售票始終還是有點(diǎn)點(diǎn)落后,網(wǎng)上訂票更加方便快捷。機(jī)票預(yù)訂系統(tǒng)是為機(jī)場(chǎng)工作人員和客戶提供方便的系統(tǒng),它具有開放體系結(jié)構(gòu)的,易維護(hù)的,易添加的,良好的人機(jī)界面的好處。它不但克服了存儲(chǔ)信息少,查詢效率低等問題,還有其安全性,可靠性,實(shí)現(xiàn)訂票自動(dòng)化,會(huì)為企業(yè)的決策層提供準(zhǔn)確,精細(xì),迅速的銷售信息,為乘客提供出行方便,便于管理。提高了工作效率。1.2系統(tǒng)開發(fā)的必要性為方便乘客出行能夠更快,更及時(shí)的了解以及不浪費(fèi)時(shí)間,乘客自己把機(jī)票預(yù)訂信息輸入預(yù)訂系統(tǒng)客戶端程序,系統(tǒng)經(jīng)過查詢航空公司內(nèi)的航班數(shù)據(jù)服務(wù)器后,為旅客安排航班。旅客在飛機(jī)起飛前一天憑通知后交款取票。要求系統(tǒng)能有效,快速,易于操作。1.3開發(fā)技術(shù)1.3.1JSP技術(shù)Jsp(JavaServerPages),是Sun公司開發(fā)的一種動(dòng)態(tài)網(wǎng)頁開發(fā)技術(shù),它具有如下一些功能:簡便性和有效性

JSP動(dòng)態(tài)網(wǎng)頁的編寫與一般的靜態(tài)HTML的網(wǎng)頁編寫是十分相似的。只是在原來的HTML網(wǎng)頁中加入一些JSP專有的標(biāo)簽,或是一些腳本程序(此項(xiàng)不是必需的)。這樣,一個(gè)熟悉HTML網(wǎng)頁編寫的設(shè)計(jì)人員可以很容易進(jìn)行JSP網(wǎng)頁的開發(fā)。而且開發(fā)人員完全可以不自己編寫腳本程序,而只是通過JSP獨(dú)有的標(biāo)簽使用別人已寫好的部件來實(shí)現(xiàn)動(dòng)態(tài)網(wǎng)頁的編寫。這樣,一個(gè)不熟悉腳本語言的網(wǎng)頁開發(fā)者,完全可以利用JSP做出漂亮的動(dòng)態(tài)網(wǎng)頁。而這在其他的動(dòng)態(tài)網(wǎng)頁開發(fā)中是不可實(shí)現(xiàn)的。程序的獨(dú)立性

JSP是Java

API家族的一部分,它擁有一般的Java程序的跨平臺(tái)的特性。換句話說,就是擁有程序的對(duì)平臺(tái)的獨(dú)立性,即Write

once,Run

anywhere!。

程序的兼容性

JSP中的動(dòng)態(tài)內(nèi)容可以各種形式進(jìn)行顯示,所以它可以為各種客戶提供服務(wù),即從使用HTML/DHTML的瀏覽器,到使用WML的各種手提無線設(shè)備(例如,移動(dòng)電話和個(gè)人數(shù)字設(shè)備PDA),再到使用XML的B2B應(yīng)用,都可以使用JSP的動(dòng)態(tài)頁面。

程序的可重用性

在JSP頁面中可以不直接將腳本程序嵌入,而只是將動(dòng)態(tài)的交互部分作為一個(gè)部件加以引用。這樣,一旦這樣的一個(gè)部件寫好,它可以為多個(gè)程序重復(fù)引用,實(shí)現(xiàn)了程序的可重用性。現(xiàn)在,大量的標(biāo)準(zhǔn)JavaBeans程序庫就是一個(gè)很好的例證。1.3.2Servlet技術(shù)Servlet技術(shù)是由Sun和其他幾個(gè)廠商為了將Java的瀏覽器的Applet技術(shù)擴(kuò)展到Web服務(wù)器端而提出的一種技術(shù)。Servlet的出現(xiàn)替代傳統(tǒng)的CGI,且其相對(duì)于傳統(tǒng)的CGI有著巨大的優(yōu)勢(shì),得到了開發(fā)人員的廣泛接受。

Servlet是用Java編寫的Server端程序,它與協(xié)議和平臺(tái)無光。Servlet運(yùn)行于Java-enabled

Web

Server中。Java

Servlet可以動(dòng)態(tài)地?cái)U(kuò)展Server的能力,并采用其他的基于Java的Web

Server開始支持標(biāo)準(zhǔn)的ServletAPI。Servlet是動(dòng)態(tài)加載模塊,為來自Web服務(wù)器的請(qǐng)求提供服務(wù)。最常見的用途是擴(kuò)展Web服務(wù)器,提供安全、可移植、易于使用的CGI替代品。

Servlet是Java技術(shù)對(duì)CGI編程的回應(yīng)。Servlet程序在服務(wù)器端運(yùn)行,動(dòng)態(tài)地生成Web頁面。與傳統(tǒng)的CGI和許多其他類似CGI的技術(shù)相比,Java

Servlet具有更高的效率,更容易使用,功能更強(qiáng)大,具備更好的可移植性,更節(jié)省投資。

高效

在傳統(tǒng)的CGI中,每個(gè)請(qǐng)求都要啟動(dòng)一個(gè)新的進(jìn)程,如果CGI程序本身的執(zhí)行時(shí)間較短,啟動(dòng)進(jìn)程所需要的開銷很可能反而超過實(shí)際執(zhí)行時(shí)間。而在Servlet中,每個(gè)請(qǐng)求由一個(gè)輕量級(jí)的Java線程處理(而不是重量級(jí)的操作系統(tǒng)進(jìn)程)。在傳統(tǒng)CGI中,如果有N個(gè)并發(fā)的對(duì)同一個(gè)CGI程序的請(qǐng)求,則該CGI程序代碼在內(nèi)存中重復(fù)裝載了N次;而對(duì)于Servlet,處理請(qǐng)求的是N個(gè)線程,這需要一份Servlet類代碼。在性能優(yōu)化方面,Servlet也比CGI有著更多的選擇,比如緩沖以前的計(jì)算結(jié)果,保持?jǐn)?shù)據(jù)庫連接的活動(dòng)等,

方便

Servlet提供了大量的實(shí)用工具例程,例如自動(dòng)地解析和解碼HTML表單數(shù)據(jù)、讀取和設(shè)置HTTP頭、處理Cookie、跟蹤會(huì)話狀態(tài)等。

功能強(qiáng)大

在Servlet中,許多使用傳統(tǒng)CGI程序很難完成富人任務(wù)都可以輕松地完成。例如Servlet能夠直接和Web服務(wù)器交互,而普通的CGI程序則不能。Servlet還能夠在各個(gè)程序之間共享數(shù)據(jù),使得數(shù)據(jù)庫連接池之類的功能很容易實(shí)現(xiàn)。

可移植性好

Servlet用Java編寫,ServletAPI具有完善的標(biāo)準(zhǔn)。因此,為I=Planet

EnterpriseServer寫的Servlet無須任何實(shí)質(zhì)上的改動(dòng)即可移植到Apache、Microsoft

IIS或者WebStar。幾乎所有的主流服務(wù)器都直接或通過插件支持Servlet。

節(jié)省投資

不僅有許多廉價(jià)甚至免費(fèi)的Web服務(wù)器可供個(gè)人或小規(guī)模網(wǎng)站使用,而且對(duì)于現(xiàn)有的服務(wù)器,如果它不支持Servlet,那么要加上這部分功能也往往是免費(fèi)的。1.4開發(fā)工具1.4.1EclipsesEclipses是一個(gè)開放源代碼的,與NetBeans、Sun

ONE

Studio和Borland

Jbuilder類似的一種基于Java的整合型可擴(kuò)展開發(fā)平臺(tái),也是目前最著名的開源項(xiàng)目之一,其未來的目標(biāo)不僅僅是成為專門開發(fā)Java程序的IDE環(huán)境,根據(jù)Eclipse的體系結(jié)構(gòu),通過開發(fā)插件,它能擴(kuò)展到任何語言的開發(fā),甚至能成為圖片繪制的工具。

Eclipse只是一個(gè)框架軟件,本身不能開發(fā)程序,但它可以安裝各種插件。正是運(yùn)行在Eclipse平臺(tái)上的種種插件,提供了程序開發(fā)的各種功能。同時(shí)各個(gè)領(lǐng)域的開發(fā)人員通過開發(fā)插件,可以構(gòu)建與Eclipse環(huán)境無縫集成的工具。

Eclipse是綠色軟件,其下載與安裝非常簡單,但是如果需要使用Eclipse來開發(fā)J2EE,為了提高開發(fā)的效率,可以下載MyEcilpse插件或者Lomboz插件,其中Myeclipse是收費(fèi)軟件,可以直接下載exe進(jìn)行安裝,而Lomboz是開源插件,其使用是完全免費(fèi)的。

目前,Eclipse已經(jīng)開始提供C語言開發(fā)的功能插件。更難能可貴的是,Eclipse是一個(gè)開放源代碼的項(xiàng)目,任何人都可以下載Eclipse的源代碼,并且在此基礎(chǔ)上開發(fā)自己的功能插件。也就是說,未來只要有人需要,就會(huì)有建立在Eclipse之上的COBOL、Perl、Python等語言的開發(fā)插件出現(xiàn)。同時(shí)可以通過開發(fā)新的插件擴(kuò)展現(xiàn)有插件的功能,比如手機(jī)應(yīng)用程序的開發(fā)就是通過J2ME插件的擴(kuò)展來實(shí)現(xiàn)的??梢詿o限擴(kuò)展,而且有統(tǒng)一的外觀、操作和系統(tǒng)資源管理,這也正是Eclipse的潛力所在。1.4.2MYSQLMySQL是一種開放源代碼的關(guān)系型數(shù)據(jù)庫管理系統(tǒng),MySQL數(shù)據(jù)庫系統(tǒng)使用最常用的數(shù)據(jù)庫管理語言—結(jié)構(gòu)化查詢語言(SQL)進(jìn)行數(shù)據(jù)庫管理。由于MySQL是開放源代碼,因此任何人都可以在GeneralPublicLincense的許可下下載并根據(jù)個(gè)性化的需要對(duì)其進(jìn)行修改。MySQL因?yàn)槠渌俣?,可靠性和適應(yīng)性而備受關(guān)注。大多數(shù)人都認(rèn)為在不需要事務(wù)化處理的情況下,MySQL是管理內(nèi)容最好的選擇。1.4.3TomcatTomcat服務(wù)器是一款免費(fèi)的開放源代碼的Web應(yīng)用服務(wù)器,它是Apache軟件基金會(huì)的Jakarta項(xiàng)目中的一個(gè)核心項(xiàng)目,由Apache,Sun和其他一些公司及個(gè)人共同開發(fā)而成?;赥omcat的開放主要是JSP和Servlet開發(fā),由于有了Sun的參與和支持,最新的Servlet和JSP規(guī)范總是能在Tomcat中體現(xiàn),Tomcat6支持最新的Servlet2.4和JSP2.0規(guī)范。因?yàn)樗募夹g(shù)先進(jìn),性能穩(wěn)定,重要是免費(fèi),因此廣受歡迎,并且得到了部分軟件開發(fā)商的認(rèn)可,成為目前比較流行的Web應(yīng)用服務(wù)器。1.5系統(tǒng)的主要功能管理員的航班制定,包括航班號(hào),航班日期,起飛和目的;會(huì)員的注冊(cè),登錄,然后航班查詢,訂票確認(rèn),訂單完成,最后聯(lián)系賣家付款并取票。1.6背景說明1,軟件名稱:機(jī)票預(yù)訂系統(tǒng)2,委托單位:重慶某航空公司3,開發(fā)者:王功喜2需求分析2.1系統(tǒng)可行性分析可行性研究的目的就是用最小的代價(jià)在盡可能短的時(shí)間內(nèi)確定問題是否能夠解決,可行性呀那就的目的不是解決問題,而是判斷問題是否值得去解。那么該怎么達(dá)到這個(gè)目的呢?肯定不能靠主觀去想,只能客觀的判斷,分析幾種主要的可能解法的好壞,從而選擇合適的一個(gè),系統(tǒng)完成后所能帶來的利潤是否值得開發(fā)與投資這個(gè)。因此,可行性研究實(shí)質(zhì)上是要進(jìn)行一次大大壓縮簡化了的系統(tǒng)分析和設(shè)計(jì)過程,也就是在較高層次上以比較抽象的方式進(jìn)行的系統(tǒng)分析和設(shè)計(jì)的過程。在本系統(tǒng)中,系統(tǒng)的可行性分析主要是技術(shù)可行性,操作可行性。2.1.1技術(shù)可行性隨著信息技術(shù)在管理上越來越深入廣泛的應(yīng)用,信息管理系統(tǒng)的實(shí)施在技術(shù)上已經(jīng)逐漸成熟,經(jīng)過對(duì)現(xiàn)有網(wǎng)上機(jī)票的銷售和預(yù)訂的實(shí)際考察發(fā)現(xiàn),絕大多數(shù)的航空公司機(jī)票銷售管理系統(tǒng)都已經(jīng)具備計(jì)算機(jī)硬件和網(wǎng)絡(luò)環(huán)境?,F(xiàn)有的網(wǎng)絡(luò)硬件及軟件的系統(tǒng)已經(jīng)完全滿足構(gòu)造這樣一個(gè)系統(tǒng)的實(shí)力。經(jīng)過需求分析,本系統(tǒng)采用Eclipse作為開發(fā)工具,以MYSQL做數(shù)據(jù)后臺(tái),開發(fā)出來的網(wǎng)上機(jī)票預(yù)訂系統(tǒng),整個(gè)系統(tǒng)從符合操作簡便,界面友好,實(shí)用,美觀,安全的角度出發(fā),完成了機(jī)票預(yù)訂的全過程,包括機(jī)票信息管理,客戶信息管理,航線信息管理。技術(shù)關(guān)鍵已經(jīng)滿足開發(fā)和使用的條件。2.1.2操作可行性操作可行性,又稱為社會(huì)可行性或者運(yùn)行可行性,是對(duì)開發(fā)系統(tǒng)在一個(gè)給定的工作環(huán)境中能否運(yùn)行或者運(yùn)行好壞的度量。隨著INTERNET的日益普及以及相關(guān)技術(shù)的發(fā)展,B/S模式逐漸成為現(xiàn)代化MIS的首選方案。它克服了C/S模式下的種種缺陷。在現(xiàn)實(shí)生活中,幾乎每一個(gè)過程中都被網(wǎng)絡(luò)技術(shù)有聯(lián)系,無論是訂票還是航班的發(fā)布,都是網(wǎng)絡(luò)進(jìn)行的,方便了人們的出行。帶來了便利。本系統(tǒng)以網(wǎng)絡(luò)運(yùn)用為主,用戶界面和管理界面都是在網(wǎng)上,管理對(duì)于航班和訂單管理也很簡單,一看就知道規(guī)則。2.2數(shù)據(jù)需求2.2.1數(shù)據(jù)錄入的準(zhǔn)確性與及時(shí)性數(shù)據(jù)的輸入是否準(zhǔn)確是數(shù)據(jù)處理的前提,錯(cuò)誤的輸入會(huì)導(dǎo)致系統(tǒng)輸出的不正確和不可用,從而使系統(tǒng)的工作失去作用,數(shù)據(jù)的輸入是手工,手工輸入要通過系統(tǒng)界面上的安排系統(tǒng)有容錯(cuò)性,并且對(duì)操作人員要進(jìn)行系統(tǒng)的培訓(xùn)。2.2.2數(shù)據(jù)錄入的一致性與完整性由于系統(tǒng)的數(shù)據(jù)是共享的,在不同的端口中,機(jī)票是貢獻(xiàn)數(shù)據(jù),所以要保證數(shù)據(jù)的一致性,是系統(tǒng)必須解決的問題,要有一定的人員維護(hù)數(shù)據(jù)的一致性,在數(shù)據(jù)錄入處控制數(shù)據(jù)的去向,并且要求對(duì)數(shù)據(jù)庫的數(shù)據(jù)完整性進(jìn)行嚴(yán)格的約束。2.2.3數(shù)據(jù)的共享性與獨(dú)立性整個(gè)機(jī)票預(yù)定系統(tǒng)的數(shù)據(jù)是共享的。然而,從系統(tǒng)開發(fā)的角度上看,共享會(huì)給設(shè)計(jì)和調(diào)試帶來困難。因此,應(yīng)該提供靈活的配置,使各個(gè)分系統(tǒng)能夠獨(dú)立運(yùn)行,而通過人工干預(yù)的手段進(jìn)行系統(tǒng)數(shù)據(jù)的交換。這樣,也能提供系統(tǒng)的強(qiáng)壯性。3數(shù)據(jù)庫設(shè)計(jì)3.1實(shí)體E-R圖的設(shè)計(jì)3.1.1旅客信息實(shí)體E-R圖的useruserpasswordSexpasswordSexUsername!emailUsername!emailnameteltel3.1.2航班信息實(shí)體E-R圖的jiageHao!schjiageHao!schPiaoshuPiaoshuMudilQifeiRqiMudilQifeiRqi3.1.3已定航班信息實(shí)體E-R圖的jiageHaodinjiageHaodinPiaoQifeiPiaoQifeiId!RqiMudilId!RqiMudil3.1.4各實(shí)體之間的E-R圖降落地點(diǎn)起飛地點(diǎn)飛行時(shí)間降落地點(diǎn)起飛地點(diǎn)飛行時(shí)間姓名性別旅客姓名性別旅客11航班機(jī)票信息取票通知訂票航班機(jī)票信息取票通知訂票1價(jià)格1訂單1價(jià)格1訂單合適航班機(jī)票N合適航班機(jī)票N時(shí)間訂票乘客清單時(shí)間訂票乘客清單所剩座位所剩座位3.2數(shù)據(jù)庫表的設(shè)計(jì)3.2.1user旅客信息表3.2.2din旅客訂單信息表3.2.3sch機(jī)票信息表4系統(tǒng)實(shí)現(xiàn)4.1本系統(tǒng)設(shè)計(jì)的總框圖系統(tǒng)系統(tǒng)查詢系統(tǒng)查詢系統(tǒng)前臺(tái)客戶前臺(tái)客戶服務(wù)系統(tǒng)后臺(tái)處后臺(tái)處理系統(tǒng)個(gè)人信息系統(tǒng)個(gè)人信息系統(tǒng)航班信息制定航班信息修改乘客訂單查看訂退票系統(tǒng)航班信息系統(tǒng)個(gè)人信息系統(tǒng)航班信息制定航班信息修改乘客訂單查看訂退票系統(tǒng)航班信息系統(tǒng)個(gè)人信息系統(tǒng)說明:本系統(tǒng)分為兩個(gè)子系統(tǒng):客戶訂票系統(tǒng)和后臺(tái)管理系統(tǒng)??蛻舴?wù)系統(tǒng)包含三個(gè)子系統(tǒng):查詢(航班)系統(tǒng):查詢?cè)撓到y(tǒng)是否有這趟航班以及是否有剩票訂退票系統(tǒng):旅客進(jìn)行訂以及退票個(gè)人信息系統(tǒng):旅客可以修改個(gè)人的信息后臺(tái)管理系統(tǒng)包含三個(gè)子系統(tǒng):航班信息制定:可以制定航班的所有信息航班信息修改:修改航班信息的時(shí)間乘客訂單查看:查看所有旅客所預(yù)訂的機(jī)票4.2用戶訂票系統(tǒng)的概要設(shè)計(jì)開始開始查詢退票訂票查詢退票訂票檢查是否登陸檢查是否登陸結(jié)束結(jié)束說明:1查詢:用戶可以通過輸入起飛和目的可以查詢。2訂票:用戶可以在查詢后進(jìn)入的頁面進(jìn)行訂票,當(dāng)然會(huì)先檢查用戶是否登陸,如若沒有登陸,會(huì)跳轉(zhuǎn)到登陸界面,登陸后方可進(jìn)入訂票頁面。3退票:用戶訂票后就進(jìn)入了個(gè)人的中心,在這里,你就可以查看你的訂單,這時(shí)就可以選擇不需要的航班進(jìn)行退票了。4.3后臺(tái)管理系統(tǒng)的概要設(shè)計(jì)后臺(tái)管理系統(tǒng)只能由管理員訪問,因此就有賬號(hào)和密碼。由于系統(tǒng)不算龐大,所以就沒有進(jìn)行分級(jí)別,只設(shè)置了唯一的賬號(hào)和密碼,這個(gè)賬號(hào)和密碼是設(shè)置在項(xiàng)目里面的,登陸時(shí)只要符合就行了。本系統(tǒng)的后臺(tái)管理系統(tǒng)分為四個(gè)部分,制定航班,安排航班,查看航班,查看訂單。開始開始查看訂單制定航班安排航班查看航班查看訂單制定航班安排航班查看航班結(jié)束結(jié)束說明:1,制定航班:管理人員可以在這里制定新的航班安排航班:管理員可以在這里安排所有航班的起飛時(shí)間3查看航班:在這里可以查看所有安排好了的航班信息,也可以刪除一些過時(shí)了的航班或者錯(cuò)誤的航班信息。4查看訂單:管理員可以查看所有用戶下的訂單。5主要設(shè)計(jì)代碼及界面5.1普通用戶5.1.1用戶登陸界面及主要代碼主要實(shí)現(xiàn)代碼為5.1.2注冊(cè)信息頁面及主要代碼主要代碼為:functionUser(){ varf=document.form1; if(f.Username.value=="") {alert("名字不能為空");f.Username.focus();f.Username.select(); returnfalse; }if(f.Username.value.substring(0,1)==""){alert("第一位不能為空");f.Username.focus();f.Username.select();returnfalse;} if(f.Username.value.length<8) { alert("您輸入用戶長度不正確");f.Username.focus();f.Username.select(); returnfalse; } if(f.Username.value.length>12) { alert("您輸入用戶長度不正確");f.Username.focus();f.Username.select(); returnfalse; }if(f.Password.value==""){alert("密碼不能為空");f.Password.focus();f.Password.select(); returnfalse;}if(f.Password.value.substring(0,1)==""){alert("第一位不能為空");f.Password.focus();f.Password.select();returnfalse;}if(isNaN(f.Password.value)!=true){if(f.Password.value.length>12||f.Password.value.length<6){ alert("密碼長度不正確");f.Password.focus();f.Password.select();returnfalse;}}else{alert("密碼必須為數(shù)字");f.Password.focus();f.Password.select();returnfalse;}if(f.Password.value.indexOf("-",0)>=0||f.Password.value.indexOf("+",0)>=0){alert("不能出現(xiàn)+-號(hào)");f.Password.focus();f.Password.select();returnfalse;}if(f.password2.value==""){alert("密碼不能為空");f.password2.focus();f.password2.select(); returnfalse;}if(f.password2.value.substring(0,1)==""){alert("第一位不能為空");f.password2.focus();f.password2.select();returnfalse;}if(f.password2.value!=f.Password.value) { alert("密碼不一致!");f.password2.focus();f.password2.select(); returnfalse; }if(f.Name.value==""){alert("姓名不能為空");f.Name.focus();f.Name.select();returnfalse;}if(f.Name.value.substring(0,1)==""){alert("第一位不能為空");f.Name.focus();f.Name.select();returnfalse;}if(isNaN(f.Name.value)){if(f.Name.value.length<2||f.Name.value.length>14){alert("您輸入的姓名長度有誤");f.Name.focus();f.Name.select();returnfalse;}}else{alert("姓名不能為數(shù)字");f.Name.focus();f.Name.select();returnfalse;}if(f.Tel.value==""){alert("電話不能為空");f.Tel.focus();f.Tel.select();returnfalse;}if(f.Tel.value.substring(0,1)==""){alert("第一位不能為空");f.Tel.focus();f.Tel.select();returnfalse;}if(isNaN(f.Tel.value)!=true){if(f.Tel.value.length<8||f.Tel.value.length>14){alert("電話號(hào)碼長度不正確");f.Tel.focus();f.Tel.select();returnfalse;}}else{alert("電話必須為數(shù)字");f.Tel.focus();f.Tel.select();returnfalse;}if(f.Tel.value.indexOf("-",0)>=0||f.Tel.value.indexOf("+",0)>=0){alert("不能出現(xiàn)+-號(hào)");f.Tel.focus();f.Tel.select();returnfalse;}if(f.Email.value==""){returntrue;}else{if(f.Email.value.substring(0,1)==""){alert("第一位不能為空");f.Email.focus();f.Email.select();returnfalse;}if(f.Email.value.indexOf("@",0)==-1){alert("地址有誤,把@補(bǔ)上");f.Email.focus();f.Email.select();returnfalse;} if(f.Email.value.indexOf(".",0)==-1){alert("地址有誤,把.補(bǔ)上");f.Email.focus();f.Email.select();returnfalse;}} }functionPass(){varf=document.form1; }functionEmail(){varf=document.form1; if(f.Email.value.indexOf("@",0)==-1) { alert("地址有誤,把@補(bǔ)上"); return; } if(f.Email.value.indexOf(".",0)==-1) { alert("地址有誤,把.補(bǔ)上"); return; } }5.1.3航班信息頁面及主要代碼主要代碼為://quest獲得所有航班的信息publicArrayListquest(Connectionconnection){ArrayListarray=newArrayList();//查詢所有定制航班的信息//將查詢出的值放入ArrayList動(dòng)態(tài)數(shù)組中返回Stringsql="selectHao,Qifei,Rqi,Mudi,Jiage,Piaosufromsch";Statementstatement=null;ResultSetresultset=null;try{statement=connection.createStatement();resultset=statement.executeQuery(sql);while(resultset.next()){Schedsch=newSched();sch.setHao(resultset.getString("Hao"));sch.setRqi(resultset.getString("Rqi"));sch.setQifei(resultset.getString("Qifei"));sch.setMudi(resultset.getString("Mudi"));sch.setJiage(resultset.getInt("Jiage"));sch.setPiaosu(resultset.getInt("Piaosu"));array.add(sch);}returnarray;}catch(SQLExceptione){}finally{try{if(statement!=null)statement.close();if(resultset!=null)resultset.close();}catch(SQLExceptionee){}}returnarray;}5.1.4確定訂票信息界面及主要代碼主要代碼:response.setContentType("text/html;charset=UTF-8");PrintWriterout=response.getWriter();DinDaodin=newDinDao();Schedsch=newSched();//從JSP頁面中獲取所選擇的航班號(hào)Stringhao=request.getParameter("hao");//check查詢錯(cuò)選擇航班的信息sch=din.check(connection,hao);//獲得航班機(jī)票票數(shù)intvalue=sch.getPiaosu();//在JSP頁面中以下拉菜單進(jìn)行選擇票數(shù)String[]abc=newString[value];for(inti=0;i<value;i++){abc[i]=String.valueOf(i+1);}request.getSession().setAttribute("abc",abc);request.getSession().setAttribute("sch",sch);//獲得該系統(tǒng)中該航班的票數(shù),如果等于0則不可售票if(sch.getPiaosu()==0){RequestDispatcherdispatcher=request.getRequestDispatcher("affirmfailder.jsp"); dispatcher.forward(request,response);}if(sch.getPiaosu()>0)//如果大于0則可以售票{RequestDispatcherdispatcher=request.getRequestDispatcher("affirmflight.jsp"); dispatcher.forward(request,response);5.1.5個(gè)人信息頁面及主要代碼主要代碼為:Stringusername=(String)request.getSession().getAttribute("username");UserDaouserDao=newUserDao();//利用username進(jìn)行數(shù)據(jù)庫的查詢//將返回的用戶信息放入U(xiǎn)ser對(duì)象中Useruser=userDao.getUser(connection,username);Stringho=user.getSex();Stringmo;if(ho.equals("man")){mo="woman";}else{mo="man";}//將性別放入session中request.getSession().setAttribute("ho",ho);request.getSession().setAttribute("mo",mo);request.getSession().setAttribute("user",user);request.getRequestDispatcher("info.jsp").forward(request,response);}//從Session中獲得該客戶的用戶名Stringusername=(String)request.getSession().getAttribute("username");UserDaouserDao=newUserDao();//獲得用戶注冊(cè)信息Useruser=userDao.getUser(connection,username);Stringpass=user.getPassword();Stringpassed=request.getParameter("Password");Stringpass1=request.getParameter("Password1");//根據(jù)界面輸入的密碼與用戶的密碼進(jìn)行比較if(pass.equals(passed)){//如果兩者值相等//UpdatePass進(jìn)行密碼修改操作intvalue=userDao.UpdatePass(connection,pass1,username);if(value>0){request.getRequestDispatcher("amendsucceed.jsp").forward(request,response);}else{request.getRequestDispatcher("amendfail.jsp").forward(request,response);}}else{//如果密碼不相等request.getRequestDispatcher("amenderror.jsp").forward(request,response);5.1.6訂單頁面及主要代碼主要代碼://quest根據(jù)用戶名來獲得該用戶所訂購的所有航班publicArrayListquest(Connectionconnection,Stringid){ArrayListary=newArrayList();//查詢用戶訂票信息Stringsql="select*fromdinwhereId=?";PreparedStatementstatement=null;ResultSetresultset=null;try{statement=connection.prepareStatement(sql);statement.setString(1,id);resultset=statement.executeQuery();while(resultset.next()){Schedsch=newSched();sch.setHao(resultset.getString("Hao"));sch.setQifei(resultset.getString("Qifei"));sch.setMudi(resultset.getString("Mudi"));sch.setRqi(resultset.getString("Rqi"));sch.setJiage(resultset.getInt("Jiage"));sch.setPiaosu(resultset.getInt("Piao"));//如果所訂航班票數(shù)等于0那么則不將該航班信息放入ArrayList動(dòng)態(tài)數(shù)組中//在JSP頁面中省略了票數(shù)為0的航班if(resultset.getInt("Piao")!=0){ary.add(sch);}}returnary;}catch(SQLExceptione){}finally{try{if(statement!=null)statement.close();if(resultset!=null)resultset.close();}catch(SQLExceptionee){}}returnary;}5.2后臺(tái)管理系統(tǒng)5.2.1制定航班頁面及主要代碼主要代碼:Schedsch=newSched();//從制定航班界面獲得的值放入Sched對(duì)象中request.setCharacterEncoding("GBK");sch.setHao(request.getParameter("Hao"));sch.setQifei(request.getParameter("Qifei"));sch.setMudi(request.getParameter("Mudi"));if(request.getParameter("Jiage")!=null){ sch.setJiage(Integer.parseInt(request.getParameter("Jiage")));}if(request.getParameter("Piaosu")!=null){ sch.setPiaosu(Integer.parseInt(request.getParameter("Piaosu")));}SchedDaoschedDao=newSchedDao();//inset將獲得的值插入航班信息表中intvalue=schedDao.inset(connection,sch);if(value>0) { RequestDispatcherdispatcher=request.getRequestDispatcher("estaBlest.jsp"); dispatcher.forward(request,response);5.2.2安排航班頁面及主要代碼主要代碼://check修改該航班號(hào)的日期時(shí)間publicintcheck(Connectionconnection,Anpaianpai) { intvalue=-1; PreparedStatementstatement=null; Stringsql="updateschsetRqi=?whereHao=?"; try { statement=connection.prepareStatement(sql); statement.setString(1,anpai.getRqi()); statement.setString(2,anpai.getHao()); value=statement.executeUpdate();returnvalue; } catch(SQLExceptione) { } finally { try { if(statement!=null)statement.close(); } catch(SQLExceptionee) { } } returnvalue; }5.2.3查看航班頁面及主要代碼主要代碼://quest獲得所有航班的信息publicArrayListquest(Connectionconnection){ArrayListarray=newArrayList();//查詢所有定制航班的信息//將查詢出的值放入ArrayList動(dòng)態(tài)數(shù)組中返回Stringsql="selectHao,Qifei,Rqi,Mudi,Jiage,Piaosufromsch";Statementstatement=null;ResultSetresultset=null;try{statement=connection.createStatement();resultset=statement.executeQuery(sql);while(resultset.next()){Schedsch=newSched();sch.setHao(resultset.getString("Hao"));sch.setRqi(resultset.getString("Rqi"));sch.setQifei(resultset.getString("Qifei"));sch.setMudi(resultset.getString("Mudi"));sch.setJiage(resultset.getInt("Jiage"));sch.setPiaosu(resultset.getInt("Piaosu"));array.add(sch);}returnarray;

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(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ì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論