




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
題目基于WEB和MYSQL開發(fā)的機(jī)票預(yù)訂系統(tǒng)系別數(shù)學(xué)與信息工程系專業(yè)年級移動互聯(lián)網(wǎng)2012級基于WEB和MYSQL開發(fā)的機(jī)票預(yù)訂系統(tǒng)摘要:本課程設(shè)計利用JSP和MYSQL數(shù)據(jù)庫來開發(fā)的。該系統(tǒng)要解決的是機(jī)票網(wǎng)上訂購管理中所要解決的一些問題,可以滿足機(jī)票網(wǎng)上預(yù)訂的一些簡單要求。能根據(jù)需求,快速的提供服務(wù)。本論文主要設(shè)計軟件,數(shù)據(jù)庫與網(wǎng)絡(luò)技術(shù)等。涵蓋知識面廣,可有效的提高同學(xué)們綜合知識分析及解決問題的能力,增強(qiáng)學(xué)生對事物的理解與掌握,培養(yǎng)學(xué)生的科學(xué)研究方法,正確的設(shè)計思想,獨(dú)立思考,用于進(jìn)取,敢于創(chuàng)新,為以后奠定基礎(chǔ)。關(guān)鍵詞:WEB技術(shù),系統(tǒng)設(shè)計,機(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)確性與及時 82.2.2數(shù)據(jù)錄入的一致性與完整性 82.2.3數(shù)據(jù)的共享性與獨(dú)立性 8第3章數(shù)據(jù)庫設(shè)計 83.1實(shí)體E-R圖設(shè)計 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è)計 93.2.1user旅客信息表 103.2.2din旅客訂單信息表 103.2.3sch機(jī)票信息表 10第4章系統(tǒng)實(shí)現(xiàn) 104.1系統(tǒng)設(shè)計的總框圖 104.2用戶訂票系統(tǒng)的概要設(shè)計 114.3后臺管理系統(tǒng)的概要設(shè)計 11第5章主要設(shè)計代碼及界面 125.1普通用戶 125.1.1用戶登陸界面及主要代碼 135.1.2注冊信息界面及主要代碼 135.1.3航班信息頁面及主要代碼 235.1.4確定訂票信息界面及主要代碼 265.1.5個人信息頁面及主要代碼 285.1.6訂單頁面及主要代碼 315.2后臺管理系統(tǒng) 335.2.1制定航班頁面及主要代碼 335.2.2安排航班頁面及主要代碼 355.2.3查看航班頁面及主要代碼 375.2.4查看訂單頁面及主要代碼 39參考文獻(xiàn) 41致謝 411緒論1.1選題目的和意義隨著社會發(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ī)場工作人員和客戶提供方便的系統(tǒng),它具有開放體系結(jié)構(gòu)的,易維護(hù)的,易添加的,良好的人機(jī)界面的好處。它不但克服了存儲信息少,查詢效率低等問題,還有其安全性,可靠性,實(shí)現(xiàn)訂票自動化,會為企業(yè)的決策層提供準(zhǔn)確,精細(xì),迅速的銷售信息,為乘客提供出行方便,便于管理。提高了工作效率。1.2系統(tǒng)開發(fā)的必要性為方便乘客出行能夠更快,更及時的了解以及不浪費(fèi)時間,乘客自己把機(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ā)的一種動態(tài)網(wǎng)頁開發(fā)技術(shù),它具有如下一些功能:簡便性和有效性
JSP動態(tài)網(wǎng)頁的編寫與一般的靜態(tài)HTML的網(wǎng)頁編寫是十分相似的。只是在原來的HTML網(wǎng)頁中加入一些JSP專有的標(biāo)簽,或是一些腳本程序(此項不是必需的)。這樣,一個熟悉HTML網(wǎng)頁編寫的設(shè)計人員可以很容易進(jìn)行JSP網(wǎng)頁的開發(fā)。而且開發(fā)人員完全可以不自己編寫腳本程序,而只是通過JSP獨(dú)有的標(biāo)簽使用別人已寫好的部件來實(shí)現(xiàn)動態(tài)網(wǎng)頁的編寫。這樣,一個不熟悉腳本語言的網(wǎng)頁開發(fā)者,完全可以利用JSP做出漂亮的動態(tài)網(wǎng)頁。而這在其他的動態(tài)網(wǎng)頁開發(fā)中是不可實(shí)現(xiàn)的。程序的獨(dú)立性
JSP是Java
API家族的一部分,它擁有一般的Java程序的跨平臺的特性。換句話說,就是擁有程序的對平臺的獨(dú)立性,即Write
once,Run
anywhere!。
程序的兼容性
JSP中的動態(tài)內(nèi)容可以各種形式進(jìn)行顯示,所以它可以為各種客戶提供服務(wù),即從使用HTML/DHTML的瀏覽器,到使用WML的各種手提無線設(shè)備(例如,移動電話和個人數(shù)字設(shè)備PDA),再到使用XML的B2B應(yīng)用,都可以使用JSP的動態(tài)頁面。
程序的可重用性
在JSP頁面中可以不直接將腳本程序嵌入,而只是將動態(tài)的交互部分作為一個部件加以引用。這樣,一旦這樣的一個部件寫好,它可以為多個程序重復(fù)引用,實(shí)現(xiàn)了程序的可重用性?,F(xiàn)在,大量的標(biāo)準(zhǔn)JavaBeans程序庫就是一個很好的例證。1.3.2Servlet技術(shù)Servlet技術(shù)是由Sun和其他幾個廠商為了將Java的瀏覽器的Applet技術(shù)擴(kuò)展到Web服務(wù)器端而提出的一種技術(shù)。Servlet的出現(xiàn)替代傳統(tǒng)的CGI,且其相對于傳統(tǒng)的CGI有著巨大的優(yōu)勢,得到了開發(fā)人員的廣泛接受。
Servlet是用Java編寫的Server端程序,它與協(xié)議和平臺無光。Servlet運(yùn)行于Java-enabled
Web
Server中。Java
Servlet可以動態(tài)地擴(kuò)展Server的能力,并采用其他的基于Java的Web
Server開始支持標(biāo)準(zhǔn)的ServletAPI。Servlet是動態(tài)加載模塊,為來自Web服務(wù)器的請求提供服務(wù)。最常見的用途是擴(kuò)展Web服務(wù)器,提供安全、可移植、易于使用的CGI替代品。
Servlet是Java技術(shù)對CGI編程的回應(yīng)。Servlet程序在服務(wù)器端運(yùn)行,動態(tài)地生成Web頁面。與傳統(tǒng)的CGI和許多其他類似CGI的技術(shù)相比,Java
Servlet具有更高的效率,更容易使用,功能更強(qiáng)大,具備更好的可移植性,更節(jié)省投資。
高效
在傳統(tǒng)的CGI中,每個請求都要啟動一個新的進(jìn)程,如果CGI程序本身的執(zhí)行時間較短,啟動進(jìn)程所需要的開銷很可能反而超過實(shí)際執(zhí)行時間。而在Servlet中,每個請求由一個輕量級的Java線程處理(而不是重量級的操作系統(tǒng)進(jìn)程)。在傳統(tǒng)CGI中,如果有N個并發(fā)的對同一個CGI程序的請求,則該CGI程序代碼在內(nèi)存中重復(fù)裝載了N次;而對于Servlet,處理請求的是N個線程,這需要一份Servlet類代碼。在性能優(yōu)化方面,Servlet也比CGI有著更多的選擇,比如緩沖以前的計算結(jié)果,保持?jǐn)?shù)據(jù)庫連接的活動等,
方便
Servlet提供了大量的實(shí)用工具例程,例如自動地解析和解碼HTML表單數(shù)據(jù)、讀取和設(shè)置HTTP頭、處理Cookie、跟蹤會話狀態(tài)等。
功能強(qiáng)大
在Servlet中,許多使用傳統(tǒng)CGI程序很難完成富人任務(wù)都可以輕松地完成。例如Servlet能夠直接和Web服務(wù)器交互,而普通的CGI程序則不能。Servlet還能夠在各個程序之間共享數(shù)據(jù),使得數(shù)據(jù)庫連接池之類的功能很容易實(shí)現(xiàn)。
可移植性好
Servlet用Java編寫,ServletAPI具有完善的標(biāo)準(zhǔn)。因此,為I=Planet
EnterpriseServer寫的Servlet無須任何實(shí)質(zhì)上的改動即可移植到Apache、Microsoft
IIS或者WebStar。幾乎所有的主流服務(wù)器都直接或通過插件支持Servlet。
節(jié)省投資
不僅有許多廉價甚至免費(fèi)的Web服務(wù)器可供個人或小規(guī)模網(wǎng)站使用,而且對于現(xiàn)有的服務(wù)器,如果它不支持Servlet,那么要加上這部分功能也往往是免費(fèi)的。1.4開發(fā)工具1.4.1EclipsesEclipses是一個開放源代碼的,與NetBeans、Sun
ONE
Studio和Borland
Jbuilder類似的一種基于Java的整合型可擴(kuò)展開發(fā)平臺,也是目前最著名的開源項目之一,其未來的目標(biāo)不僅僅是成為專門開發(fā)Java程序的IDE環(huán)境,根據(jù)Eclipse的體系結(jié)構(gòu),通過開發(fā)插件,它能擴(kuò)展到任何語言的開發(fā),甚至能成為圖片繪制的工具。
Eclipse只是一個框架軟件,本身不能開發(fā)程序,但它可以安裝各種插件。正是運(yùn)行在Eclipse平臺上的種種插件,提供了程序開發(fā)的各種功能。同時各個領(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是一個開放源代碼的項目,任何人都可以下載Eclipse的源代碼,并且在此基礎(chǔ)上開發(fā)自己的功能插件。也就是說,未來只要有人需要,就會有建立在Eclipse之上的COBOL、Perl、Python等語言的開發(fā)插件出現(xiàn)。同時可以通過開發(fā)新的插件擴(kuò)展現(xiàn)有插件的功能,比如手機(jī)應(yīng)用程序的開發(fā)就是通過J2ME插件的擴(kuò)展來實(shí)現(xiàn)的。可以無限擴(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ù)個性化的需要對其進(jìn)行修改。MySQL因?yàn)槠渌俣龋煽啃院瓦m應(yīng)性而備受關(guān)注。大多數(shù)人都認(rèn)為在不需要事務(wù)化處理的情況下,MySQL是管理內(nèi)容最好的選擇。1.4.3TomcatTomcat服務(wù)器是一款免費(fèi)的開放源代碼的Web應(yīng)用服務(wù)器,它是Apache軟件基金會的Jakarta項目中的一個核心項目,由Apache,Sun和其他一些公司及個人共同開發(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)的主要功能管理員的航班制定,包括航班號,航班日期,起飛和目的;會員的注冊,登錄,然后航班查詢,訂票確認(rèn),訂單完成,最后聯(lián)系賣家付款并取票。1.6背景說明1,軟件名稱:機(jī)票預(yù)訂系統(tǒng)2,委托單位:重慶某航空公司3,開發(fā)者:王功喜2需求分析2.1系統(tǒng)可行性分析可行性研究的目的就是用最小的代價在盡可能短的時間內(nèi)確定問題是否能夠解決,可行性呀那就的目的不是解決問題,而是判斷問題是否值得去解。那么該怎么達(dá)到這個目的呢?肯定不能靠主觀去想,只能客觀的判斷,分析幾種主要的可能解法的好壞,從而選擇合適的一個,系統(tǒng)完成后所能帶來的利潤是否值得開發(fā)與投資這個。因此,可行性研究實(shí)質(zhì)上是要進(jìn)行一次大大壓縮簡化了的系統(tǒng)分析和設(shè)計過程,也就是在較高層次上以比較抽象的方式進(jìn)行的系統(tǒng)分析和設(shè)計的過程。在本系統(tǒng)中,系統(tǒng)的可行性分析主要是技術(shù)可行性,操作可行性。2.1.1技術(shù)可行性隨著信息技術(shù)在管理上越來越深入廣泛的應(yīng)用,信息管理系統(tǒng)的實(shí)施在技術(shù)上已經(jīng)逐漸成熟,經(jīng)過對現(xiàn)有網(wǎng)上機(jī)票的銷售和預(yù)訂的實(shí)際考察發(fā)現(xiàn),絕大多數(shù)的航空公司機(jī)票銷售管理系統(tǒng)都已經(jīng)具備計算機(jī)硬件和網(wǎng)絡(luò)環(huán)境?,F(xiàn)有的網(wǎng)絡(luò)硬件及軟件的系統(tǒng)已經(jīng)完全滿足構(gòu)造這樣一個系統(tǒng)的實(shí)力。經(jīng)過需求分析,本系統(tǒng)采用Eclipse作為開發(fā)工具,以MYSQL做數(shù)據(jù)后臺,開發(fā)出來的網(wǎng)上機(jī)票預(yù)訂系統(tǒng),整個系統(tǒng)從符合操作簡便,界面友好,實(shí)用,美觀,安全的角度出發(fā),完成了機(jī)票預(yù)訂的全過程,包括機(jī)票信息管理,客戶信息管理,航線信息管理。技術(shù)關(guān)鍵已經(jīng)滿足開發(fā)和使用的條件。2.1.2操作可行性操作可行性,又稱為社會可行性或者運(yùn)行可行性,是對開發(fā)系統(tǒng)在一個給定的工作環(huán)境中能否運(yùn)行或者運(yùn)行好壞的度量。隨著INTERNET的日益普及以及相關(guān)技術(shù)的發(fā)展,B/S模式逐漸成為現(xiàn)代化MIS的首選方案。它克服了C/S模式下的種種缺陷。在現(xiàn)實(shí)生活中,幾乎每一個過程中都被網(wǎng)絡(luò)技術(shù)有聯(lián)系,無論是訂票還是航班的發(fā)布,都是網(wǎng)絡(luò)進(jìn)行的,方便了人們的出行。帶來了便利。本系統(tǒng)以網(wǎng)絡(luò)運(yùn)用為主,用戶界面和管理界面都是在網(wǎng)上,管理對于航班和訂單管理也很簡單,一看就知道規(guī)則。2.2數(shù)據(jù)需求2.2.1數(shù)據(jù)錄入的準(zhǔn)確性與及時性數(shù)據(jù)的輸入是否準(zhǔn)確是數(shù)據(jù)處理的前提,錯誤的輸入會導(dǎo)致系統(tǒng)輸出的不正確和不可用,從而使系統(tǒng)的工作失去作用,數(shù)據(jù)的輸入是手工,手工輸入要通過系統(tǒng)界面上的安排系統(tǒng)有容錯性,并且對操作人員要進(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ù)的去向,并且要求對數(shù)據(jù)庫的數(shù)據(jù)完整性進(jìn)行嚴(yán)格的約束。2.2.3數(shù)據(jù)的共享性與獨(dú)立性整個機(jī)票預(yù)定系統(tǒng)的數(shù)據(jù)是共享的。然而,從系統(tǒng)開發(fā)的角度上看,共享會給設(shè)計和調(diào)試帶來困難。因此,應(yīng)該提供靈活的配置,使各個分系統(tǒng)能夠獨(dú)立運(yùn)行,而通過人工干預(yù)的手段進(jìn)行系統(tǒng)數(shù)據(jù)的交換。這樣,也能提供系統(tǒng)的強(qiáng)壯性。3數(shù)據(jù)庫設(shè)計3.1實(shí)體E-R圖的設(shè)計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)飛行時間降落地點(diǎn)起飛地點(diǎn)飛行時間姓名性別旅客姓名性別旅客11航班機(jī)票信息取票通知訂票航班機(jī)票信息取票通知訂票1價格1訂單1價格1訂單合適航班機(jī)票N合適航班機(jī)票N時間訂票乘客清單時間訂票乘客清單所剩座位所剩座位3.2數(shù)據(jù)庫表的設(shè)計3.2.1user旅客信息表3.2.2din旅客訂單信息表3.2.3sch機(jī)票信息表4系統(tǒng)實(shí)現(xiàn)4.1本系統(tǒng)設(shè)計的總框圖系統(tǒng)系統(tǒng)查詢系統(tǒng)查詢系統(tǒng)前臺客戶前臺客戶服務(wù)系統(tǒng)后臺處后臺處理系統(tǒng)個人信息系統(tǒng)個人信息系統(tǒng)航班信息制定航班信息修改乘客訂單查看訂退票系統(tǒng)航班信息系統(tǒng)個人信息系統(tǒng)航班信息制定航班信息修改乘客訂單查看訂退票系統(tǒng)航班信息系統(tǒng)個人信息系統(tǒng)說明:本系統(tǒng)分為兩個子系統(tǒng):客戶訂票系統(tǒng)和后臺管理系統(tǒng)。客戶服務(wù)系統(tǒng)包含三個子系統(tǒng):查詢(航班)系統(tǒng):查詢該系統(tǒng)是否有這趟航班以及是否有剩票訂退票系統(tǒng):旅客進(jìn)行訂以及退票個人信息系統(tǒng):旅客可以修改個人的信息后臺管理系統(tǒng)包含三個子系統(tǒng):航班信息制定:可以制定航班的所有信息航班信息修改:修改航班信息的時間乘客訂單查看:查看所有旅客所預(yù)訂的機(jī)票4.2用戶訂票系統(tǒng)的概要設(shè)計開始開始查詢退票訂票查詢退票訂票檢查是否登陸檢查是否登陸結(jié)束結(jié)束說明:1查詢:用戶可以通過輸入起飛和目的可以查詢。2訂票:用戶可以在查詢后進(jìn)入的頁面進(jìn)行訂票,當(dāng)然會先檢查用戶是否登陸,如若沒有登陸,會跳轉(zhuǎn)到登陸界面,登陸后方可進(jìn)入訂票頁面。3退票:用戶訂票后就進(jìn)入了個人的中心,在這里,你就可以查看你的訂單,這時就可以選擇不需要的航班進(jìn)行退票了。4.3后臺管理系統(tǒng)的概要設(shè)計后臺管理系統(tǒng)只能由管理員訪問,因此就有賬號和密碼。由于系統(tǒng)不算龐大,所以就沒有進(jìn)行分級別,只設(shè)置了唯一的賬號和密碼,這個賬號和密碼是設(shè)置在項目里面的,登陸時只要符合就行了。本系統(tǒng)的后臺管理系統(tǒng)分為四個部分,制定航班,安排航班,查看航班,查看訂單。開始開始查看訂單制定航班安排航班查看航班查看訂單制定航班安排航班查看航班結(jié)束結(jié)束說明:1,制定航班:管理人員可以在這里制定新的航班安排航班:管理員可以在這里安排所有航班的起飛時間3查看航班:在這里可以查看所有安排好了的航班信息,也可以刪除一些過時了的航班或者錯誤的航班信息。4查看訂單:管理員可以查看所有用戶下的訂單。5主要設(shè)計代碼及界面5.1普通用戶5.1.1用戶登陸界面及主要代碼主要實(shí)現(xiàn)代碼為5.1.2注冊信息頁面及主要代碼主要代碼為: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)+-號");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("電話號碼長度不正確");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)+-號");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動態(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頁面中獲取所選擇的航班號Stringhao=request.getParameter("hao");//check查詢錯選擇航班的信息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個人信息頁面及主要代碼主要代碼為:Stringusername=(String)request.getSession().getAttribute("username");UserDaouserDao=newUserDao();//利用username進(jìn)行數(shù)據(jù)庫的查詢//將返回的用戶信息放入User對象中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();//獲得用戶注冊信息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動態(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ǒng)5.2.1制定航班頁面及主要代碼主要代碼:Schedsch=newSched();//從制定航班界面獲得的值放入Sched對象中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修改該航班號的日期時間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動態(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等.壓縮文件請下載最新的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)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 二零二五版全新商鋪?zhàn)赓U終止合同
- 光伏傭金合同樣本
- 體育課教案:武術(shù)
- 人教版小學(xué)四年級上冊音樂全冊教案
- 買水果 合同范例
- 股權(quán)代持協(xié)議書及授權(quán)委托書
- 人教部編版高中語文上冊喜看稻菽千重浪教案
- 入股餐館合同樣本
- 安防監(jiān)控合同
- 為規(guī)范合同范例
- 2024-2025學(xué)年人教新目標(biāo)英語八年級下冊期末綜合檢測卷(含答案)
- 331金屬晶體課件高二化學(xué)人教版選擇性必修2
- 礦山礦石采購合同模板
- 2024年浪潮數(shù)字企業(yè)技術(shù)有限公司社會招聘(105人)筆試核心備考題庫及答案解析
- 第47屆世界技能大賽江蘇省選拔賽競賽技術(shù)文件-混凝土建筑項目
- 2024年新人教版四年級數(shù)學(xué)下冊《第6單元第2課時 小數(shù)加減法》教學(xué)課件
- 國開2024年《數(shù)據(jù)庫運(yùn)維》形考1-3
- 勞動合同(模版)4篇
- 137案例黑色三分鐘生死一瞬間事故案例文字版
- 藥物研發(fā)監(jiān)管的國際協(xié)調(diào)
- 生豬屠宰獸醫(yī)衛(wèi)生檢驗(yàn)人員理論考試題及答案
評論
0/150
提交評論