版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、<p><b> 課程設(shè)計(jì)說(shuō)明書(shū)</b></p><p> 課程名稱:_數(shù)據(jù)庫(kù)課程設(shè)計(jì) </p><p> 題 目: 火車站售票系統(tǒng) </p><p> 院 系: 理學(xué)院 </p><p> 專業(yè)班級(jí): 信計(jì) 11-2
2、 </p><p> 2014年 月 日</p><p> 課程設(shè)計(jì)(論文)任務(wù)書(shū)</p><p> 理學(xué)院 院系 信計(jì) 教研室</p><p> 年 月 日 </p><p><b>
3、; 目 錄</b></p><p><b> 摘要I</b></p><p><b> 第1章 緒論</b></p><p> 1.1 項(xiàng)目背景1</p><p> 1.2 編寫(xiě)目的1</p><p> 1.3 開(kāi)發(fā)環(huán)境1</p>
4、;<p> 1.3.1 硬件環(huán)境1</p><p> 1.3.2 軟件環(huán)境1</p><p> 第2章 系統(tǒng)功能介紹3</p><p> 2.1 系統(tǒng)功能總框圖3</p><p> 2.2 模塊功能介紹3</p><p> 2.2.1 系統(tǒng)登錄3</p><p&
5、gt; 2.2.2 管理員登錄4</p><p> 2.2.3 普通用戶登錄4</p><p> 2.3組內(nèi)任務(wù)分工5</p><p> 第3章 數(shù)據(jù)庫(kù)設(shè)計(jì)5</p><p> 3.1 數(shù)據(jù)庫(kù)需求分析5</p><p> 3.2 數(shù)據(jù)流圖5</p><p> 3.3 數(shù)
6、據(jù)庫(kù)概念結(jié)構(gòu)設(shè)計(jì)6</p><p> 3.4 數(shù)據(jù)庫(kù)表的設(shè)計(jì)8</p><p> 第4章 系統(tǒng)功能實(shí)現(xiàn)10</p><p> 4.1普通用戶登錄10</p><p> 4.1.1 查詢10</p><p> 4.1.2 售票17</p><p><b> 結(jié)論
7、22</b></p><p><b> 參考文獻(xiàn)23</b></p><p> 摘要:隨著Internet和Intranet技術(shù)的發(fā)展,人們對(duì)網(wǎng)絡(luò)信息的需求越來(lái)越大,對(duì)網(wǎng)絡(luò)數(shù)據(jù)庫(kù)的交互和查詢速度等性能的要求也越來(lái)越高。未來(lái)火車站的發(fā)展趨勢(shì)是完全自動(dòng)化的售票信息查詢,網(wǎng)絡(luò)訂票,智能化訂票,而且隨著計(jì)算機(jī)的普及,信息處理量的逐漸擴(kuò)大,手工處理方式已經(jīng)遠(yuǎn)遠(yuǎn)
8、不能滿足人們管理活動(dòng)的需要,各種工作都逐漸由手工轉(zhuǎn)為自動(dòng)化,將使許多復(fù)雜、繁瑣、且需要很多人力的工作變得簡(jiǎn)單?;疖囌臼燮惫芾硎潜鞠到y(tǒng)的根本任務(wù),通過(guò)實(shí)現(xiàn)票務(wù)信息的計(jì)算機(jī)管理,以提高工作效率。實(shí)現(xiàn)計(jì)算機(jī)管理的最佳技術(shù)就是數(shù)據(jù)庫(kù)技術(shù)。我們可以利用數(shù)據(jù)庫(kù)將整個(gè)火車站的票務(wù)情況存入計(jì)算機(jī),再配置上功能豐富的用戶接口,以滿足用戶需求。</p><p> 基于這樣的背景并考慮到一定的實(shí)際意義及于我們將實(shí)踐與理論結(jié)合起來(lái),我
9、們組在這次課設(shè)中選擇了“火車售票管理系統(tǒng)”。在這次課設(shè)中我們使用Java技術(shù)來(lái)開(kāi)發(fā)該火車票管理系統(tǒng)。因而在本報(bào)告中介紹了系統(tǒng)的開(kāi)發(fā)環(huán)境以及開(kāi)發(fā)工具,對(duì)Java在系統(tǒng)上的應(yīng)用設(shè)計(jì)思想做了一個(gè)全面的敘述,對(duì)于系統(tǒng)中數(shù)據(jù)庫(kù)中的數(shù)據(jù)表之間的具體關(guān)聯(lián)等方面也做出了詳細(xì)說(shuō)明,并且具體講述了系統(tǒng)各個(gè)功能模塊的設(shè)計(jì)以及實(shí)現(xiàn)過(guò)程。</p><p> 關(guān)鍵詞: 火車售票管理系統(tǒng) Java技術(shù) 網(wǎng)絡(luò)數(shù)據(jù)庫(kù)</p>&
10、lt;p> Summary:With the development of Internet and Intranet technology, people demand more and more information on the network , such as query speed of interaction and performance of the network databases are increas
11、ingly high requirements . Future trends railway station is fully automated ticketing information inquiries, booking network , intelligent ticketing , and with the gradual expansion of the popularity of information-proces
12、sing capacity of the computer , manual processing methods have been fa</p><p> Based on this background and taking into account certain practical significance and in our practice and theory will combine a l
13、esson for us in this group , select the " train ticket management system ." In this lesson we set up to develop the use of Java technology in the ticket management system. Thus in the present report describes t
14、he system development environment as well as development tools for Java applications on the system 's design philosophy has made a comprehensive narrative, related</p><p> Keywords :train ticketing Java
15、 technology network database management system</p><p><b> 1 緒論</b></p><p><b> 1.1項(xiàng)目背景</b></p><p> 信息社會(huì)的高科技,商品經(jīng)濟(jì)的高效益,使計(jì)算機(jī)的應(yīng)用普及到經(jīng)濟(jì)和社會(huì)生活的各個(gè)領(lǐng)域。計(jì)算機(jī)與人類的關(guān)系愈來(lái)愈密切,
16、計(jì)算機(jī)操作為人們帶了越來(lái)越多的便利。為了適應(yīng)現(xiàn)代社會(huì)人們高度強(qiáng)烈的時(shí)間觀念,火車票管理系統(tǒng)將會(huì)為人們帶來(lái)極大的方便。</p><p> 在火車大力普及的今天,一個(gè)火車站售票信息管理系統(tǒng)應(yīng)達(dá)到的目標(biāo)是提供及時(shí)、廣泛的信息服務(wù),加快信息檢索的效率,實(shí)況靈活的查詢,減輕管理人員制作報(bào)表和統(tǒng)計(jì)分析的負(fù)擔(dān),且系統(tǒng)規(guī)模不太大但又要保證支持日常工作的要求,以便系統(tǒng)應(yīng)易于擴(kuò)充,方便日后統(tǒng)一聯(lián)網(wǎng)與管理,提高管理水平。根據(jù)以上的設(shè)
17、計(jì)目標(biāo)和要求,本設(shè)計(jì)用Java編程語(yǔ)言結(jié)合微軟的Access數(shù)據(jù)庫(kù)進(jìn)行開(kāi)發(fā),主要完成查詢、售票、及對(duì)票務(wù)和用戶進(jìn)行管理等功能。其實(shí)火車售票系統(tǒng)用計(jì)算機(jī)管理火車站票務(wù)信息的一種計(jì)算機(jī)應(yīng)用技術(shù)的創(chuàng)新,在計(jì)算機(jī)還未普及之前售票業(yè)務(wù)都是由工作人員人工完成的、查詢方式來(lái)操作的?,F(xiàn)在一般的車站售票業(yè)務(wù)都采用計(jì)算機(jī)智能化管理,采用計(jì)算機(jī)作為工具的實(shí)用的計(jì)算機(jī)訂單管理程序來(lái)幫助前臺(tái)管理員進(jìn)行更有效的車票業(yè)務(wù)查詢,出售管理工作?;疖囀燮惫芾硐到y(tǒng)是典型的信
18、息管理系統(tǒng)(MIS):其開(kāi)發(fā)主要包括后臺(tái)數(shù)據(jù)庫(kù)的建立和維護(hù)以及前端應(yīng)用程序的開(kāi)發(fā)兩個(gè)方面。對(duì)于前者要求建立起數(shù)據(jù)一致性和完整性強(qiáng)、數(shù)據(jù)安全性好的庫(kù)。而對(duì)于后者則要求應(yīng)用程序功能完備,易使用等特點(diǎn)。 經(jīng)過(guò)分析:我們使用Java編程語(yǔ)言開(kāi)發(fā)工具,利用其提供的各種面向?qū)ο蟮拈_(kāi)發(fā)工具,尤其</p><p><b> 1.2編寫(xiě)目的</b></p><p> 電腦的漸漸普及
19、,以及互聯(lián)網(wǎng)所容納的信息量大、內(nèi)容豐富、信息及時(shí)、準(zhǔn)確,更有相關(guān)信息的全面介紹與比較。為了人們?cè)诨疖囌举?gòu)買車票以及售票員對(duì)車票的、管理、查詢以及相應(yīng)的操作變的簡(jiǎn)單,開(kāi)發(fā)這樣一個(gè)火車票管理系統(tǒng)成為很有必要的事情。</p><p><b> 1.3 開(kāi)發(fā)環(huán)境</b></p><p> 1.3.1 硬件環(huán)境</p><p><b>
20、PC機(jī)。</b></p><p> 1.3.2 軟件環(huán)境</p><p> ?、?操作系統(tǒng):Windows XP</p><p> ⑵ 開(kāi)發(fā)工具:Eclipse</p><p> Eclipse是著名的跨平臺(tái)的自由集成開(kāi)發(fā)環(huán)境(IDE)。最初主要用來(lái)Java語(yǔ)言開(kāi)發(fā),</p><p> 但是目前亦有
21、人通過(guò)插件使其作為C++、Python、PHP等其他語(yǔ)言的開(kāi)發(fā)工具。Eclipse的本身只是一個(gè)框架平臺(tái),但是眾多插件的支持,使得Eclipse擁有較佳的靈活性。許多軟件開(kāi)發(fā)商以Eclipse為框架開(kāi)發(fā)自己的IDE。</p><p> Eclipse采用的技術(shù)是IBM公司開(kāi)發(fā)的(SWT),這是一種基于Java的窗口組件,類似Java本身提供的AWT和Swing窗口組件;不過(guò)IBM聲稱SWT比其他Java窗口組件
22、更有效率。Eclipse的用戶界面還使用了GUI中間層JFace,從而簡(jiǎn)化了基于SWT的應(yīng)用程序的構(gòu)建。</p><p> Eclipse的設(shè)計(jì)思想是:一切皆插件。Eclipse核心很小,其它所有功能都以插件的形式附加于Eclipse核心之上。Eclipse基本內(nèi)核包括:圖形API (SWT/Jface), Java開(kāi)發(fā)環(huán)境插件(JDT),插件開(kāi)發(fā)環(huán)境(PDE)等。</p><p>
23、⑶ 數(shù)據(jù)庫(kù):Microsoft Access2003</p><p> Access 是微軟公司推出的基于Windows的桌面關(guān)系數(shù)據(jù)庫(kù)管理系統(tǒng)(RDBMS),是Office系列應(yīng)用軟件之一。它提供了表、查詢、窗體、報(bào)表、頁(yè)、宏、模塊7種用來(lái)建立數(shù)據(jù)庫(kù)系統(tǒng)的對(duì)象;提供了多種向?qū)?、生成器、模板,把?shù)據(jù)存儲(chǔ)、數(shù)據(jù)查詢、界面設(shè)計(jì)、報(bào)表生成等操作規(guī)范化;為建立功能完善的數(shù)據(jù)庫(kù)管理系統(tǒng)提供了方便,也使得普通用戶不必編寫(xiě)代
24、碼,就可以完成大部分?jǐn)?shù)據(jù)管理的任務(wù)。 </p><p> Access是一種關(guān)系型數(shù)據(jù)庫(kù)管理系統(tǒng),其主要特點(diǎn)如下: </p><p> 1) 存儲(chǔ)方式單一 </p><p> Access管理的對(duì)象有表、查詢、窗體、報(bào)表、頁(yè)、宏和模塊,以上對(duì)象都存放在后綴為(.mdb)的數(shù)據(jù)庫(kù)文件種,便于用戶的操作和管理。 </p><p><b
25、> 2) 面向?qū)ο?</b></p><p> Access是一個(gè)面向?qū)ο蟮拈_(kāi)發(fā)工具,利用面向?qū)ο蟮姆绞綄?shù)據(jù)庫(kù)系統(tǒng)中的各種功能對(duì)象化,將數(shù)據(jù)庫(kù)管理的各種功能封裝在各類對(duì)象中。它將一個(gè)應(yīng)用系統(tǒng)當(dāng)作是由一系列對(duì)象組成的,對(duì)每個(gè)對(duì)象它都定義一組方法和屬性,以定義該對(duì)象的行為和外國(guó),用戶還可以按需要給對(duì)象擴(kuò)展方法和屬性。通過(guò)對(duì)象的方法、屬性完成數(shù)據(jù)庫(kù)的操作和管理,極大地簡(jiǎn)化了用戶的開(kāi)發(fā)工作。同時(shí),
26、這種基于面向?qū)ο蟮拈_(kāi)發(fā)方式,使得開(kāi)發(fā)應(yīng)用程序更為簡(jiǎn)便。 </p><p> 3)界面友好、易操作 </p><p> Access是一個(gè)可視化工具,是風(fēng)格與Windows完全一樣,用戶想要生成對(duì)象并應(yīng)用,只要使用鼠標(biāo)進(jìn)行拖放即可,非常直觀方便。系統(tǒng)還提供了表生成器、查詢生成器、報(bào)表設(shè)計(jì)器以及數(shù)據(jù)庫(kù)向?qū)?、表向?qū)?、查詢向?qū)?、窗體向?qū)?、?bào)表向?qū)У裙ぞ?,使得操作?jiǎn)便,容易使用和掌握。 <
27、/p><p> 4)集成環(huán)境、處理多種數(shù)據(jù)信息 </p><p> Access基于Windows操作系統(tǒng)下的集成開(kāi)發(fā)環(huán)境,該環(huán)境集成了各種向?qū)Ш蜕善鞴ぞ撸瑯O大地提高了開(kāi)發(fā)人員的工作效率,使得建立數(shù)據(jù)庫(kù)、創(chuàng)建表、設(shè)計(jì)用戶界面、設(shè)計(jì)數(shù)據(jù)查詢、報(bào)表打印等可以方便有序地進(jìn)行。 </p><p> Access支持ODBC(開(kāi)發(fā)數(shù)據(jù)庫(kù)互連,Open Data Base
28、Connectivity),利用Access強(qiáng)大的DDE(動(dòng)態(tài)數(shù)據(jù)交換)和OLE(對(duì)象的聯(lián)接和嵌入)特性,可以在一個(gè)數(shù)據(jù)表中嵌入圖、聲音、Excel表格、Word文檔,還可以建立動(dòng)態(tài)的數(shù)據(jù)庫(kù)報(bào)表和窗體等。Access還可以將程序應(yīng)用于網(wǎng)絡(luò),并與網(wǎng)絡(luò)上的動(dòng)態(tài)數(shù)據(jù)相聯(lián)接。利用數(shù)據(jù)庫(kù)訪問(wèn)頁(yè)對(duì)象生成HTML文件,輕松構(gòu)建Internet/Intranet的應(yīng)用。</p><p> 第2章 系統(tǒng)功能介紹</p>
29、;<p> 2.1 系統(tǒng)功能總框圖</p><p> 系統(tǒng)功能分析是在系統(tǒng)開(kāi)發(fā)的總體任務(wù)的基礎(chǔ)上完成。根據(jù)系統(tǒng)分析確定的邏輯模型,確定新系統(tǒng)的物理模型,即計(jì)算機(jī)化信息系統(tǒng)應(yīng)用軟件的總體結(jié)構(gòu)和數(shù)據(jù)庫(kù)設(shè)計(jì),并提出系統(tǒng)配置方案,繼而對(duì)物理模型進(jìn)行詳細(xì)的設(shè)計(jì)。主要內(nèi)容有:代碼設(shè)計(jì),用戶界面設(shè)計(jì),處理過(guò)程設(shè)計(jì),編寫(xiě)系統(tǒng)設(shè)計(jì)說(shuō)明書(shū)。</p><p> 系統(tǒng)設(shè)計(jì)是以系統(tǒng)分析為基礎(chǔ),而
30、系統(tǒng)設(shè)計(jì)又是系統(tǒng)實(shí)施的基礎(chǔ),系統(tǒng)設(shè)計(jì)的主要任務(wù)是代碼設(shè)計(jì)、物理設(shè)計(jì)、數(shù)據(jù)庫(kù)設(shè)計(jì)、功能結(jié)構(gòu)圖設(shè)計(jì)。本火車票管理系統(tǒng)功能包括用戶登錄、用戶信息管理、火車票信息管理、火車票信息查詢等如圖2.1所示。</p><p> 圖2.1 系統(tǒng)功能圖</p><p> 2.2 模塊功能介紹</p><p> 2.2.1 系統(tǒng)登錄</p><p> 火車
31、票管理系統(tǒng)可以分為2種登錄方式登錄系統(tǒng),分別為管理員、普通用戶??紤]到數(shù)據(jù)庫(kù)中數(shù)據(jù)的安全性和用戶的權(quán)益,該系統(tǒng)采用“用戶標(biāo)識(shí)”和“口令”相結(jié)合的數(shù)據(jù)庫(kù)安全技術(shù),并通過(guò)自動(dòng)認(rèn)證用戶的“權(quán)限”來(lái)判斷用戶應(yīng)該登陸到的界面。其中管理員使用密碼登錄可以直接登錄到管理系統(tǒng),進(jìn)行火車票信息和用戶信息進(jìn)行管理;普通用戶使用密碼登錄到用戶界面,可以在對(duì)火車票查詢的基礎(chǔ)上對(duì)乘客所要求買的車票信息進(jìn)行查詢和填寫(xiě)以及火車票記錄的打印等操作。</p>
32、<p> 2.2.2 管理員登錄</p><p> 管理員是該火車售票系統(tǒng)數(shù)據(jù)的直接管理者,他對(duì)該系統(tǒng)數(shù)據(jù)庫(kù)中的數(shù)據(jù)享有所有的權(quán)限。針對(duì)這一點(diǎn),管理員管理界面包含了“用戶管理”、“票務(wù)管理”以及“系統(tǒng)幫助”三個(gè)選項(xiàng)。</p><p><b> ?。?)用戶管理</b></p><p> 用戶管理界面是管理員才能進(jìn)入的界面,在
33、該窗口中,管理員可以對(duì)使用該系統(tǒng)的用戶進(jìn)行管理,具體包括“查找用戶”、“增加用戶”、“刪除用戶”、“修改用戶”等功能,并將各個(gè)子功能的結(jié)果顯示在窗口左邊的顯示區(qū)域內(nèi),初次登陸此界面時(shí)顯示區(qū)域內(nèi)的信息是所有用戶的信息。通過(guò)該模塊的功能,管理員可以很方便的對(duì)使用該系統(tǒng)的用戶進(jìn)行管理。</p><p><b> ?。?)票務(wù)管理</b></p><p> 顧名思義“票務(wù)管
34、理”就是對(duì)火車票進(jìn)行的管理,在此模塊中我們可以進(jìn)行“所有票數(shù)”、“賣出票數(shù)”等的預(yù)覽。運(yùn)行界面如圖2.2所示。</p><p> 圖2.2“票務(wù)管理”窗口</p><p> 2.2.3 普通用戶登錄</p><p> 在這個(gè)功能模塊里普通用戶即售票員可以進(jìn)行火車及或火車票的信息進(jìn)行查詢及售票。查詢子功能中可以“按車次查詢”,也可以“按車站查詢”;在售票子功能中
35、選擇好車票相關(guān)信息后并核對(duì)確認(rèn)好乘客需要次車票后可以可預(yù)覽車票信息;如果乘客需要數(shù)據(jù)單,則可以點(diǎn)擊“打印”來(lái)打印數(shù)據(jù)單。</p><p><b> 查詢:</b></p><p> “查詢”功能中的“按車次查詢”和“按車站查詢”思想相差無(wú)幾,這里我們重點(diǎn)說(shuō)明“按車次查詢”。如現(xiàn)在乘客詢問(wèn)“T1”的火車具體信息及車票信息或者是購(gòu)買“T1”的車票,售票員便在“火車票”
36、窗口選擇“按車次查詢”,然后在“車次”一欄中輸入“T1”以及選擇好日期以后點(diǎn)擊“查詢”便會(huì)出發(fā)相應(yīng)的查詢事件即將“車次”和“日期”傳遞給查詢語(yǔ)句后將數(shù)據(jù)庫(kù)中各個(gè)表中的相關(guān)信息查詢出來(lái)顯示在“火車票”窗口相應(yīng)的地方,具體包括始發(fā)站、終點(diǎn)站、發(fā)車時(shí)間、剩余票數(shù)、單價(jià)等信息。</p><p><b> 售票:</b></p><p> 在用戶選定了需要的票之后,點(diǎn)擊確定
37、按鈕之后,會(huì)彈出電子票窗口。在購(gòu)票成功之后,需要對(duì)數(shù)據(jù)庫(kù)進(jìn)行更新操作,這就是售票系統(tǒng)的主要功能。</p><p> 2.3 組內(nèi)任務(wù)分工</p><p> 表2.1 組內(nèi)任務(wù)分工</p><p><b> 第3章 數(shù)據(jù)庫(kù)設(shè)計(jì)</b></p><p> 火車票管理系統(tǒng)是一個(gè)數(shù)據(jù)庫(kù)應(yīng)用系統(tǒng),各類數(shù)據(jù)的所有信息都是保存
38、在數(shù)據(jù)庫(kù)中。在數(shù)據(jù)庫(kù)應(yīng)用系統(tǒng)的開(kāi)發(fā)進(jìn)程中,數(shù)據(jù)庫(kù)的結(jié)構(gòu)設(shè)計(jì)是一個(gè)非常重要的問(wèn)題。我們這里所說(shuō)的數(shù)據(jù)庫(kù)結(jié)構(gòu)設(shè)計(jì)是指數(shù)據(jù)庫(kù)中各個(gè)表結(jié)構(gòu)的設(shè)計(jì),包括信息保存在哪個(gè)表格中,各個(gè)表的結(jié)構(gòu)如何以及各個(gè)表之間的關(guān)系如何等。</p><p> 數(shù)據(jù)庫(kù)結(jié)構(gòu)設(shè)計(jì)的好壞將直接對(duì)應(yīng)用系統(tǒng)的效率以及實(shí)現(xiàn)的效果產(chǎn)生影響,好的數(shù)據(jù)庫(kù)結(jié)構(gòu)設(shè)計(jì)會(huì)減少數(shù)據(jù)庫(kù)的存儲(chǔ)量,數(shù)據(jù)庫(kù)的完整性和一致性比較高,系統(tǒng)具有較快的響應(yīng)速度,簡(jiǎn)化基于數(shù)據(jù)庫(kù)的應(yīng)用程序的
39、實(shí)現(xiàn)等。</p><p> 由數(shù)據(jù)庫(kù)設(shè)計(jì)的重要性,人們提出了許多數(shù)據(jù)庫(kù)結(jié)構(gòu)設(shè)計(jì)的技術(shù)。但是這些設(shè)計(jì)方法和設(shè)計(jì)者的工作經(jīng)驗(yàn)有很大關(guān)系。因此要從根本上解決所有數(shù)據(jù)庫(kù)結(jié)構(gòu)設(shè)計(jì)的問(wèn)題,就需要多實(shí)踐,在實(shí)踐中積累經(jīng)驗(yàn)和教訓(xùn),最終成為數(shù)據(jù)庫(kù)結(jié)構(gòu)設(shè)計(jì)的專家。</p><p> 3.1 數(shù)據(jù)庫(kù)需求分析</p><p> 數(shù)據(jù)庫(kù)結(jié)構(gòu)設(shè)計(jì)的一個(gè)非常重要的階段就是數(shù)據(jù)庫(kù)需求分析階段
40、。在這個(gè)階段主要是收集基本數(shù)據(jù)以及數(shù)據(jù)處理流程,為以后進(jìn)一步設(shè)計(jì)打下基礎(chǔ)。需求分析主要解決兩個(gè)問(wèn)題:</p><p> 內(nèi)容要求:調(diào)查應(yīng)用系統(tǒng)用戶所操作的數(shù)據(jù),決定的數(shù)據(jù)庫(kù)中存儲(chǔ)什么數(shù)據(jù)。</p><p> 處理要求:調(diào)查應(yīng)用系統(tǒng)用戶要求對(duì)數(shù)據(jù)進(jìn)行什么樣的處理,理數(shù)據(jù)庫(kù)中的各種數(shù)據(jù)之間的關(guān)系如何。</p><p> 解決這兩個(gè)問(wèn)題的時(shí)候,程序設(shè)計(jì)人員需要向應(yīng)用
41、系統(tǒng)的用戶做詳細(xì)調(diào)查,保證信息收集的完整性,否則有可能后面所做的所有工作都白白浪費(fèi)。</p><p> 現(xiàn)在軟件開(kāi)發(fā)過(guò)程中最常用的需求分析技術(shù)是快速原型法,其實(shí)質(zhì)就是快速建立展示目標(biāo)產(chǎn)品主要功能的軟件,在開(kāi)發(fā)過(guò)程中根據(jù)用戶反饋對(duì)模型不斷修改、完善。因此其最重要的一方面體現(xiàn)在“快速”上,要盡可能快地建立原型。第二個(gè)方面是所構(gòu)造的原型必須可以改變,可以根據(jù)用戶反饋不斷更改、完善。在開(kāi)發(fā)本系統(tǒng)過(guò)程中,基本遵循快速原型
42、法原則,經(jīng)過(guò)初步調(diào)研后,先建立應(yīng)用程序框架,然后根據(jù)與用戶的交流,在原型的基礎(chǔ)上不斷修改、完善,直到最后交付使用。這種方法最大的優(yōu)點(diǎn)是開(kāi)發(fā)周期短、見(jiàn)效快、實(shí)用性強(qiáng)。</p><p> 在此系統(tǒng)中用戶中的管理員需求對(duì)火車和火車票進(jìn)行保存、更新,對(duì)普通用戶進(jìn)行增加、刪除、查詢、修改;普通則要求對(duì)火車票的相關(guān)信息進(jìn)行查詢、打印,將火車票準(zhǔn)確及時(shí)的賣出給乘客。這就需要數(shù)據(jù)庫(kù)結(jié)構(gòu)能充分滿足各種信息的輸入與輸出,實(shí)現(xiàn)有組織
43、地、動(dòng)態(tài)地存儲(chǔ)大量關(guān)聯(lián)數(shù)據(jù),方便用戶訪問(wèn)系統(tǒng)中的數(shù)據(jù),它與文件系統(tǒng)的重要區(qū)別是數(shù)據(jù)的充分共享,交叉訪問(wèn),與應(yīng)用程序的高度獨(dú)立性。</p><p><b> 3.2 數(shù)據(jù)流圖</b></p><p> 結(jié)構(gòu)化方法使用數(shù)據(jù)流圖從數(shù)據(jù)傳遞和加工的角度,以圖形的方式刻畫(huà)數(shù)據(jù)流從輸入到輸出的變化過(guò)程。數(shù)據(jù)流圖是結(jié)構(gòu)化系統(tǒng)分析的主要工具,它表示了系統(tǒng)內(nèi)部信息的流向,并表示了系
44、統(tǒng)的邏輯處理的功能,是一種功能模型?;疖嚻惫芾硐到y(tǒng)的數(shù)據(jù)流圖如下圖3.1所示。</p><p><b> 圖3.1數(shù)據(jù)流圖</b></p><p> 3.3 數(shù)據(jù)庫(kù)概念結(jié)構(gòu)設(shè)計(jì)</p><p> 這一階段是在需求分析的基礎(chǔ)上,設(shè)計(jì)出能夠滿足需求的各種實(shí)體,以及它們之間的關(guān)系,且為后面的邏輯結(jié)構(gòu)設(shè)計(jì)打下基礎(chǔ)。</p><
45、p> 這個(gè)階段不用考慮所采用得數(shù)據(jù)庫(kù)管理系統(tǒng)、操作系統(tǒng)、機(jī)器類型等問(wèn)題。這個(gè)階段</p><p> 可用的工具很多。用得最多的是E-R圖(Entity-Relation,實(shí)體--關(guān)系圖),另外還有許多計(jì)算機(jī)輔助工具(Computer Aided Software, CASE)可以幫助進(jìn)行設(shè)計(jì)。</p><p> 本系統(tǒng)都是采用E-R圖的方法進(jìn)行數(shù)據(jù)庫(kù)概念結(jié)構(gòu)設(shè)計(jì)的,現(xiàn)在先對(duì)E-
46、R圖的方法進(jìn)行一下簡(jiǎn)單的介紹。</p><p> E-R圖是描述數(shù)據(jù)實(shí)體及其關(guān)系的一種直觀的描述工具。這種圖中有:</p><p> ?、?實(shí)體。用方框表示,方框內(nèi)為實(shí)體名稱。在火車售票系統(tǒng)中的實(shí)體有用戶、車票。</p><p> ?、?實(shí)體的各種屬性。用橢圓表示,橢圓內(nèi)為屬性名稱。使用線段將其和相應(yīng)的實(shí)體連接起來(lái)。概括起來(lái),該系統(tǒng)中各實(shí)體的屬性如下:</p
47、><p> 1) 用戶(用戶名,用戶號(hào)、用戶密碼、用戶權(quán)限);</p><p> 2) 車票(車票號(hào),車票類型,票價(jià));</p><p> 3) 火車(火車號(hào),車型,始發(fā)時(shí)間,始發(fā)站,終點(diǎn)站,途經(jīng)站,運(yùn)行時(shí)間,全程行程);</p><p> 4) 車站(車站號(hào),車站名);</p><p> 5) 車廂(車廂號(hào),類
48、型,總票數(shù),剩余票數(shù));</p><p> 6) 實(shí)體之間的聯(lián)系。用菱形表示,菱形內(nèi)部為聯(lián)系的名稱。</p><p> 圖3.2 總E-R圖</p><p> 3.4 數(shù)據(jù)庫(kù)表的設(shè)計(jì)</p><p> 在做出數(shù)據(jù)庫(kù)的具體表之前,我們需要有相應(yīng)的概念結(jié)構(gòu)。</p><p> 概念結(jié)構(gòu)是獨(dú)立于實(shí)際數(shù)據(jù)模型的,必須
49、將其轉(zhuǎn)化為邏輯結(jié)構(gòu)后才能進(jìn)行數(shù)據(jù)庫(kù)應(yīng)用設(shè)計(jì)。也就是要將上面的數(shù)據(jù)庫(kù)概念轉(zhuǎn)化為Access數(shù)據(jù)庫(kù)所支持的實(shí)際數(shù)據(jù)模型。在上面的實(shí)體與實(shí)體之間關(guān)系的基礎(chǔ)上,形成數(shù)據(jù)庫(kù)中的表格,以及各個(gè)表格之間的關(guān)系。</p><p> 具體關(guān)系模式如下: </p><p> 用戶信息(用戶ID,登錄名,用戶密碼,用戶權(quán)限);</p><p> 車票(票號(hào),車票類型,票價(jià));<
50、;/p><p> 車站信息(車站號(hào),車站名);</p><p> 車廂信息(車廂編號(hào),火車編號(hào),類型,座位總數(shù),剩余數(shù)量);</p><p> 火車信息(火車號(hào),車型,始發(fā)時(shí)間,始發(fā)站,終點(diǎn)站,途經(jīng)站,運(yùn)行時(shí)間,全程行程);</p><p> 管理/賣票(票號(hào),火車號(hào));</p><p> “火車票管理系統(tǒng)”的數(shù)
51、據(jù)庫(kù)名稱為Trainticket,數(shù)據(jù)庫(kù)中包含6張表。下面根據(jù)系統(tǒng)的關(guān)系模式分別給出數(shù)據(jù)表概要說(shuō)明和主要數(shù)據(jù)表的結(jié)構(gòu),每個(gè)表格表示數(shù)據(jù)庫(kù)中的一個(gè)表。按照關(guān)系模式可分為Tickettable表描述車票信息(如表3.3所示)、Salesticket表描述賣票聯(lián)系(如表3.4所示)、Brailway表描述車廂信息(如表3.5所示)、Users表描述用戶信息(如表3.6所示)、Trainstage表描述車站信息(如表3.7所示)、Trainst
52、ation 表描述火車信息(如表3.8所示)。</p><p> 表3.3 Tickettable表</p><p> 表3.4 Salesticket 表</p><p> 表3.5 Brailway表</p><p> 表3.6 Users表</p><p> 表3.7 Trainstage 表</
53、p><p> 表3.8 Trainstation表</p><p> 第4章 系統(tǒng)功能實(shí)現(xiàn)</p><p> 4.1 普通用戶登錄</p><p><b> 4.1.1 查詢</b></p><p> 查詢主要包括按車次查詢和按車站查詢。</p><p> 當(dāng)我們輸
54、入車次“T1”時(shí),會(huì)產(chǎn)生一個(gè)查詢結(jié)果。如圖4.1所示。</p><p> 圖4.1 查詢“T1”相關(guān)信息</p><p> 為了更好的仿真,我們還增加了“按車站查詢”的功能的模塊。</p><p> “按車次查詢”、“按車站查詢”的模塊代碼如下:</p><p> public void actionPerformed(ActionE
55、vent e)</p><p><b> {</b></p><p> if(e.getSource()==_jb1)// 判斷是否點(diǎn)擊按鈕</p><p><b> {</b></p><p> _jt1.setText("");</p><p>
56、; _jt2.setText("");</p><p> _jt3.setText("");</p><p> _jt4.setText("");</p><p> String trainno = _jt5.getText().trim();</p><p> if(_c
57、b[0].getState()==true) //判斷第一個(gè)單選是否為真</p><p><b> {</b></p><p> if(conn.gettrainno(trainno)!=null)</p><p><b> {</b></p><p> for(int m = 0;m<
58、;100;m++)</p><p><b> {</b></p><p> for(int n = 0;n<8;n++)</p><p><b> {</b></p><p> _t.setValueAt("",m,n);</p><p>&
59、lt;b> }</b></p><p><b> }</b></p><p> useable = conn.getuseable(trainno);</p><p> startstage = conn.getsalestage(trainno);</p><p> arrivestage
60、= conn.getarrivestage(trainno);</p><p> saletime = conn.getsaletime(trainno,"");</p><p> exittime = conn.getexittime(trainno);</p><p> railwaytype = conn.getrailwaytype
61、(trainno);</p><p> runmileage = conn.getrunmileage(trainno);</p><p> starttime = conn.getstarttime(trainno);</p><p> ticketprice = Float.parseFloat(conn.getticketprice(trainno)
62、);</p><p> _jt1.setText(trainno);</p><p> _jt2.setText(startstage);</p><p> _jt3.setText(arrivestage);</p><p> _jt4.setText(useable);</p><p> _jb3.set
63、Enabled(true);</p><p> _t.setValueAt(trainno,0,0);</p><p> _t.setValueAt(railwaytype,0,1);</p><p> _t.setValueAt(startstage,0,2);</p><p> _t.setValueAt(arrivestage,
64、0,3);</p><p> _t.setValueAt(starttime,0,4);</p><p> _t.setValueAt(saletime,0,5);</p><p> _t.setValueAt(exittime+"小時(shí)",0,6);</p><p> _t.setValueAt(runmileag
65、e+"公里",0,7);</p><p> _jl26.setText("單價(jià):"+ticketprice);</p><p><b> }else{</b></p><p> JOptionPane.showMessageDialog(this,"對(duì)不起,沒(méi)有該信息?。?!");
66、</p><p><b> }</b></p><p><b> }</b></p><p><b> else{</b></p><p> v = conn._getAllStage(_ch2.getSelectedItem(),_ch3.getSelectedIte
67、m());</p><p> Enumeration eee = v.elements();</p><p> if(!eee.hasMoreElements())</p><p><b> {</b></p><p> JOptionPane.showMessageDialog(this,"對(duì)不起,沒(méi)
68、有該記錄?。?!");</p><p><b> }</b></p><p><b> else{</b></p><p> for(int m = 0;m<100;m++)</p><p><b> {</b></p><p>
69、 for(int n = 0;n<8;n++)</p><p><b> {</b></p><p> _t.setValueAt("",m,n);</p><p><b> }</b></p><p><b> }</b></p>
70、<p> for(int i = 0;eee.hasMoreElements();i++)</p><p><b> {</b></p><p> stt = (SaleTrainTicket) eee.nextElement();</p><p> _t.setValueAt(stt.getTtrainno(),i,0)
71、;</p><p> _t.setValueAt(conn.getrailwaytype(stt.getTtrainno()),i,1);</p><p> _t.setValueAt(stt.getStartstage(),i,2);</p><p> _t.setValueAt(stt.getArrivestage(),i,3);</p>&
72、lt;p> _t.setValueAt(stt.getStarttime(),i,4);</p><p> _t.setValueAt(stt.getSaletime(),i,5);</p><p> _t.setValueAt(conn.getexittime(stt.getTtrainno())+"小時(shí)",i,6);</p><p&g
73、t; _t.setValueAt(conn.getrunmileage(stt.getTtrainno())+"公里",i,7);</p><p><b> }</b></p><p> _jb3.setEnabled(true);</p><p><b> }</b></p>&
74、lt;p><b> }</b></p><p><b> }</b></p><p> if(e.getSource()==_jb2)</p><p><b> {</b></p><p> if(_cb[1].getState()==true)</p&g
75、t;<p><b> {</b></p><p> if(!_t.getValueAt(_t.getSelectedRow(),0).equals(""))</p><p><b> {</b></p><p> Object _useable = _t.getValueAt(_
76、t.getSelectedRow(),0);</p><p> Object _startstage = _t.getValueAt(_t.getSelectedRow(),2);</p><p> Object _arrivestage = _t.getValueAt(_t.getSelectedRow(),3);</p><p> String __u
77、seable = (String)_useable;</p><p> String __startstage = (String)_startstage;</p><p> String __arrivestage = (String)_arrivestage;</p><p> String _ticketprice = (String)_useable;
78、</p><p> _jt1.setText(__useable);</p><p> _jt2.setText(__startstage);</p><p> _jt3.setText(__arrivestage);</p><p> _jt4.setText(conn.getuseable(_useable));</p>
79、;<p> ticketprice = Float.parseFloat(conn.getticketprice(_ticketprice));</p><p> _jl26.setText("單價(jià):"+ticketprice);</p><p> _jl26.setForeground(Color.red);</p><p>
80、;<b> }</b></p><p><b> }else{</b></p><p> if(!_t.getValueAt(_t.getSelectedRow(),0).equals(""))</p><p><b> {</b></p><p>
81、 String _ticketprice = (String)_t.getValueAt(_t.getSelectedRow(),0);</p><p> ticketprice = Float.parseFloat(conn.getticketprice(_ticketprice));</p><p> _jl26.setText("單價(jià):"+ticketpri
82、ce);</p><p><b> }else{</b></p><p> JOptionPane.showMessageDialog(this,"你選擇的是空值!");</p><p><b> }</b></p><p><b> }</b>&l
83、t;/p><p> if(_cb[0].getState()==true)</p><p><b> {</b></p><p> _jt1.setText("");</p><p> _jt2.setText("");</p><p> _jt3.s
84、etText("");</p><p> _jt4.setText("");</p><p> Object _useable = _t.getValueAt(_t.getSelectedRow(),0);</p><p> Object _startstage = _t.getValueAt(_t.getSelec
85、tedRow(),2);</p><p> Object _arrivestage = _t.getValueAt(_t.getSelectedRow(),3);</p><p> String __useable = (String)_useable;</p><p> String __startstage = (String)_startstage;&
86、lt;/p><p> String __arrivestage = (String)_arrivestage;</p><p> String _ticketprice = (String)_useable;</p><p> _jt1.setText(__useable);</p><p> _jt2.setText(__startst
87、age);</p><p> _jt3.setText(__arrivestage);</p><p> _jt4.setText(conn.getuseable(_useable));</p><p> if(_ch5.getSelectedItem().equals("全票"))</p><p><b>
88、; {</b></p><p> ticketprice = ticketprice*1;</p><p><b> }else{</b></p><p> ticketprice = ticketprice/2;</p><p><b> }</b></p>&
89、lt;p> _jl26.setText("單價(jià):"+ticketprice);</p><p> _jl26.setForeground(Color.red);</p><p><b> }else{</b></p><p> if(!_t.getValueAt(_t.getSelectedRow(),0).e
90、quals(""))</p><p><b> {</b></p><p> String _ticketprice = (String)_t.getValueAt(_t.getSelectedRow(),0);</p><p> ticketprice = Float.parseFloat(conn.getticke
91、tprice(_ticketprice));</p><p> _jl26.setText("單價(jià):"+ticketprice);</p><p> _jl26.setForeground(Color.red);</p><p><b> }else{</b></p><p> JOption
92、Pane.showMessageDialog(this,"你選擇的是空值!");</p><p><b> }</b></p><p><b> }</b></p><p><b> }</b></p><p> if(e.getSource()==
93、_jb3)</p><p><b> {</b></p><p> if(_t.getSelectedRow()==-1)//取行</p><p><b> {}</b></p><p><b> else</b></p><p><b&g
94、t; {</b></p><p> if(_t.getValueAt(_t.getSelectedRow(),0).equals(""))</p><p><b> {</b></p><p> JOptionPane.showMessageDialog(this,"你選擇的行是空的!"
95、;);</p><p><b> }else</b></p><p><b> {</b></p><p> String trainno = _jt5.getText().trim();</p><p> Object i = _t.getValueAt(_t.getSelectedRow
96、(),0);</p><p> trainno = (String)i;</p><p> String _ticketprice = (String)_t.getValueAt(_t.getSelectedRow(),0);</p><p> int ticketcount_;</p><p> float ticketprice_
97、,pay_;</p><p> String ticketcount = _jt6.getText().trim();</p><p> String pay = _jt8.getText().trim();</p><p> String ticketprice__ = conn.getticketprice(_ticketprice);</p>
98、<p> ticketcount_ = Integer.parseInt(ticketcount);</p><p> pay_ = Float.parseFloat(pay);</p><p> ticketprice_ = Float.parseFloat(ticketprice__);</p><p> if(_ch5.getSelec
99、tedItem().equals("全票"))</p><p><b> {</b></p><p> _jt7.setText(""+(ticketprice_*ticketcount_)+"");</p><p><b> }</b></p>
100、<p><b> else</b></p><p> ticketprice_ = ticketprice_/2;</p><p><b> {</b></p><p> _jt7.setText(""+(ticketprice_*ticketcount_)+""
101、;);</p><p><b> }</b></p><p> _jt9.setText(""+(pay_-ticketprice_*ticketcount_)+"");</p><p> Ticket ticket = new Ticket(trainno,ticketcount,pay,tick
102、etprice_);</p><p> count =Integer.parseInt(_jt4.getText().trim())-Integer.parseInt(ticketcount);//剩余票數(shù)</p><p><b> }</b></p><p><b> }</b></p><p&
103、gt;<b> }</b></p><p> if(e.getSource()==_jb4)</p><p><b> {</b></p><p> String _jtrainno,_jstartstage,_jarrivestage,_jbuyticket,_jstagetype,_jstarttime,_ja
104、rrivetime,</p><p> _jruntime,_jrunmileage,_jstageno;</p><p> float _jticketprice;</p><p> Object i = _t.getValueAt(_t.getSelectedRow(),0);</p><p> _jtrainno = (Stri
105、ng)i;</p><p> _jstartstage = conn.getsalestage(_jtrainno);</p><p> _jarrivestage = conn.getarrivestage(_jtrainno);</p><p> _jstarttime = conn.getarrivetime(_jtrainno);</p>
106、<p> _jruntime = conn.getexittime(_jtrainno);</p><p> _jstagetype = conn.getrailwaytype(_jtrainno);</p><p> _jrunmileage = conn.getrunmileage(_jtrainno);</p><p> _jstartt
107、ime = conn.getstarttime(_jtrainno);</p><p> _jarrivetime = conn.getarrivetime(_jtrainno);</p><p> _jbuyticket = _jt6.getText().trim();</p><p> _jstageno = conn.getstageno(_jtrai
108、nno);</p><p> _jseatno = conn.getseatno(_jtrainno);</p><p> if(_ch5.getSelectedItem().equals("全票"))</p><p> { </p><p> _jticketprice =(Float.
109、parseFloat(conn.getticketprice(_jtrainno)));</p><p><b> }else{</b></p><p> _jticketprice = (Float.parseFloat(conn.getticketprice(_jtrainno)));</p><p><b> }</
110、b></p><p> newTicketprint(username,userpassword,_jtrainno,_jstartstage,_jarrivestage,_jbuyticket,_jstagetype,_jstarttime,_jarrivetime,</p><p> _jruntime,_jrunmileage,_jstageno,_jseatno,_jti
111、cketprice);</p><p><b> }</b></p><p><b> }</b></p><p><b> 4.1.2 售票</b></p><p> 確定好乘客需要買票后,售票員在“火車票”窗口中選擇“車廂類型”、“車票類型”、輸入“實(shí)付”等信息后,
112、點(diǎn)擊“確定”便會(huì)彈出“電子車票”用于預(yù)覽車票信息,最終賣出車票后數(shù)據(jù)庫(kù)中相應(yīng)火車的剩余車票減去乘客購(gòu)買的票數(shù)。在此功能中,數(shù)據(jù)從“火車票”類傳給相應(yīng)的類讓其對(duì)“查詢”出的數(shù)據(jù)進(jìn)行處理然后將結(jié)構(gòu)顯示在“火車票”窗口。例如現(xiàn)在有一乘客想買“T1”在“2011-07-03”號(hào)的票,他付給售票員200。購(gòu)買前如圖4.2所示。電子車票如圖4.3所示,購(gòu)買成功后如圖4.4所示。</p><p> 4.2 賣票前剩余36張&
113、lt;/p><p><b> 圖4.3 電子車票</b></p><p> 圖4.4 售票成功后剩余35張</p><p> 售票模塊的代碼如下:</p><p> public class SaleTicket extends JFrame implements ActionListener {</p>
114、<p> JButton _return;</p><p> NotEditable _net;</p><p> ScrollPane _sp;</p><p> JTable _t;</p><p> JTableHeader _th;</p><p> JPanel _jp;</p
115、><p> Vector v = new Vector();</p><p> RailwayVo rv = null;</p><p> Conn conn = new Conn();</p><p> String username,userpassword,userpopedom;</p><p> pub
116、lic SaleTicket(String name,String password,String popedom) {</p><p> super("賣出票數(shù)");</p><p> username = name;</p><p> userpassword = password;</p><p> user
117、popedom = popedom;</p><p> if(conn.ifadmin(username,userpassword,userpopedom))</p><p><b> {</b></p><p><b> }else{</b></p><p> JOptionPane.sh
118、owMessageDialog(this,"非法請(qǐng)求!");</p><p> System.exit(0);</p><p><b> }</b></p><p> Object[] _name = new Object [] {"車次","車廂","車廂類型&quo
119、t;,"賣出票數(shù)"};</p><p> _net = new NotEditable(_name,100);</p><p> _t = new JTable(_net);</p><p> _th = _t.getTableHeader();</p><p> _sp = new ScrollPane();&l
120、t;/p><p> _sp.add(_t);</p><p> _jp = new JPanel();</p><p> _return = new JButton("返回");</p><p> _return.addActionListener(this);</p><p> _jp.ad
121、d(_return);</p><p> this.add(_th,"North");</p><p> this.add(_sp,"Center");</p><p> this.add(_jp,"South");</p><p> this.setSize(500,500
122、);</p><p> this.setVisible(true);</p><p> this.setResizable(false);</p><p> this.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);</p><p> int W = (int)Toolkit.get
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 課程設(shè)計(jì)報(bào)告---- 火車售票系統(tǒng)
- 火車售票系統(tǒng)課程設(shè)計(jì)報(bào)告
- 火車售票系統(tǒng)課程設(shè)計(jì)
- 課程設(shè)計(jì)—火車售票系統(tǒng)課程設(shè)計(jì)
- 火車預(yù)售票系統(tǒng)課程設(shè)計(jì)報(bào)告
- 網(wǎng)絡(luò)編程課程設(shè)計(jì)報(bào)告--模擬火車售票退票系統(tǒng)
- 火車預(yù)售票系統(tǒng)設(shè)計(jì)課程設(shè)計(jì)
- 數(shù)據(jù)庫(kù)課程設(shè)計(jì)報(bào)告----火車票售票系統(tǒng)
- 課程設(shè)計(jì)---火車票網(wǎng)上售票系統(tǒng)
- 火車售票系數(shù)據(jù)庫(kù)課程設(shè)計(jì)
- 民航售票系統(tǒng)課程設(shè)計(jì)報(bào)告
- 數(shù)據(jù)結(jié)構(gòu)課程設(shè)計(jì)---火車售票系統(tǒng)的實(shí)現(xiàn)
- 民航售票系統(tǒng)課程設(shè)計(jì)報(bào)告
- 數(shù)據(jù)庫(kù)課程設(shè)計(jì)--火車票售票管理系統(tǒng)
- 火車站車票售票系統(tǒng)--數(shù)據(jù)庫(kù)課程設(shè)計(jì)
- 數(shù)據(jù)庫(kù)課程設(shè)計(jì)實(shí)驗(yàn)報(bào)告-火車票售票管理系統(tǒng)
- 數(shù)據(jù)庫(kù)課程設(shè)計(jì)實(shí)驗(yàn)報(bào)告-火車票售票管理系統(tǒng)
- 數(shù)據(jù)庫(kù)課程設(shè)計(jì)----火車站車票售票系統(tǒng)
- c語(yǔ)言航班售票系統(tǒng)課程設(shè)計(jì)報(bào)告----航班售票系統(tǒng)
- 車站與火車站車票售票系統(tǒng)--數(shù)據(jù)庫(kù)課程設(shè)計(jì)
評(píng)論
0/150
提交評(píng)論