基于XX管理系統(tǒng)_第1頁
基于XX管理系統(tǒng)_第2頁
基于XX管理系統(tǒng)_第3頁
基于XX管理系統(tǒng)_第4頁
基于XX管理系統(tǒng)_第5頁
已閱讀5頁,還剩38頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、 JINGGANGSHAN UNIVERSITY本科畢業(yè)論文(設(shè)計) 題目:基于XXX管理系統(tǒng)的開發(fā)與實現(xiàn)學 院 電子與信息工程學院 專 業(yè) 信息管理與信息系統(tǒng) 姓 名 班 級 學 號 指導教師 起訖時間 2016.012016.03 摘 要隨著信息技術(shù)和信息產(chǎn)業(yè)及互聯(lián)網(wǎng)的迅速發(fā)展,手機與網(wǎng)絡(luò),電腦與網(wǎng)絡(luò)已經(jīng)成為人民生活的一大部分,在人們的衣食住行各個方面占據(jù)著很大比重。而網(wǎng)上預訂酒店、網(wǎng)上管理酒店也成為一種主流。網(wǎng)上預訂酒店可以讓顧客足不出戶,就可以預訂酒店房間,并且隨時入住,極大的節(jié)省了我們的時間,給顧客帶來了便利。網(wǎng)上管理酒店也為酒店管理人員免去了手寫登記的繁瑣。 網(wǎng)上酒店管理系統(tǒng)的設(shè)計

2、運用了SSH框架中的Struts 2框架和hibernate框架,設(shè)計采用B/S架構(gòu),servlet、jsp、js、jQuery,ajax網(wǎng)站開發(fā)技術(shù),服務器采用tomcat服務器,數(shù)據(jù)庫采用Oracle 10g,并運用jdbc連接訪問數(shù)據(jù)庫。開發(fā)平臺為windows系統(tǒng),代碼開發(fā)使用eclipse編寫,并采用了三層架構(gòu)思想以及MVC設(shè)計模式。設(shè)計完成的系統(tǒng)可以直接在各種內(nèi)核瀏覽器中訪問,簡潔明了的頁面功能模塊可以讓用戶立刻上手并且維護簡單。關(guān)鍵詞 酒店管理; JavaEE;B/S;Struts;hibernate;JSP ;Servlet;OracleAbstractWith informa

3、tion technology and information industry and the rapid development of Internet, mobile phone and network, computer and network has become a big part of people's life, all aspects in the daily life of people occupy a large proportion. And Internet booking hotel, the online hotel management has be

4、come a mainstream. Internet booking hotel that let customers never leave home, can reserve a hotel room, and check in at any time, greatly saves us time, brought convenience to customers. Online management for hotel management personnel to revoke the registration of handwriting.Online management sys

5、tem design using SSH framework of Struts framework and hibernate framework, the design adopts B/S architecture, servlet, JSP,js,jQuery and ajax website development technology, server using tomcat server, database, Oracle 10 g, and using a JDBC connection to access the database. Development using the

6、 eclipse development platform for Windows system, code writing, and the idea of the three layer architecture and MVC design pattern. Designed system can directly in various kernel browser access, introduction and clear page function module allows users to get started immediately and simple maintenan

7、ce. Key words hotel management system ;JavaEE;B/S;Struts;hibernate;JSP ;Servlet;Oracle II目錄第一章 概述11.1設(shè)計背景11.2設(shè)計目的和意義11.3 本系統(tǒng)概述1第二章 系統(tǒng)需求分析22.1 系統(tǒng)配置需求分析22.2系統(tǒng)市場需求分析22.3 系統(tǒng)數(shù)據(jù)庫需求分析22.4 系統(tǒng)的功能需求分析3第三章 系統(tǒng)總體設(shè)計與詳細設(shè)計43.1系統(tǒng)總體設(shè)計43.1.1 MVC模式設(shè)計介紹43.1.2瀏覽器和服務器架構(gòu)設(shè)計介紹53.1.3數(shù)據(jù)庫設(shè)計及表單介紹53.1.4系統(tǒng)結(jié)構(gòu)設(shè)計與系統(tǒng)結(jié)構(gòu)流程圖123.2 系統(tǒng)詳細設(shè)計1

8、33.2.1 系統(tǒng)功能模塊詳細介紹133.2.2 系統(tǒng)詳細功能模塊設(shè)計14第四章 系統(tǒng)頁面設(shè)計與部分核心代碼實現(xiàn)154.1前臺頁面設(shè)計:154.2后臺管理員界面設(shè)計:204.3 系統(tǒng)部分核心代碼實現(xiàn)23第五章 系統(tǒng)測試255.1 測試的目的與目標255.2 單元測試255.3集成測試265.4 系統(tǒng)測試275.5 測試總結(jié)27第六章 結(jié)論286.1總結(jié)28第七章 致謝29主要參考文獻:29III第一章 概述1.1設(shè)計背景隨著信息技術(shù)和互聯(lián)網(wǎng)的不斷發(fā)展,互聯(lián)網(wǎng)已經(jīng)成為人們的一種依賴,一種寶貴資源。不管是商家、企業(yè)還是個人,互聯(lián)網(wǎng)都是一種重要的交流互動的方式。酒店亦是如此,為了更好的進行酒店信息化

9、、技術(shù)化、高效率的管理,酒店管理系統(tǒng)成為酒店管理人員的一種重要管理工具。與傳統(tǒng)的人工管理相比,它可以代替以往顧客入住必須的手寫入住登記,手寫票據(jù)等,大大節(jié)省了時間,提高了效率。并且可以解決很多人工管理帶來的弊端,比如客戶資料的歸檔消耗人力物力,而且容易亂,容易丟失,而通過酒店管理系統(tǒng)可以直接將客戶資料存入數(shù)據(jù)庫,安全快捷,簡單方便。對于酒店房態(tài)的查詢,也不需要像以前一樣,逐個翻看登記記錄,只要鼠標輕輕一點,房態(tài)就一目了然。同時,酒店還可以通過酒店管理系統(tǒng)讓顧客通過瀏覽器登入該系統(tǒng),從而隨時隨地的了解酒店,并且預訂房間,讓顧客不出門就可以訂購酒店,這樣在方便了顧客的情況下,也讓顧客更大的了解了酒

10、店高效的營運,給酒店留下很好的印象。1.2設(shè)計目的和意義當今社會,對于我們來說,最寶貴的莫過于時間。為了生活,為了家庭,所有人都是,忙忙碌碌,根本沒有什么空閑的時間,所以為了節(jié)約不必要的時間,方便大家的出行,便有了我們的酒店管理系統(tǒng),為了方便我們酒店工作人員,減少不必要的工作量,便有了我們的酒店后臺管理系統(tǒng)。不管你是出差還是旅游,不管你是臨時借宿,還是長期租用,只要你登入我們的酒店系統(tǒng),選好房間,點擊預訂即可。酒店工作人員即可看到您的預訂記錄,幫您安排好一切。而且我們的酒店管理系統(tǒng)都是24小時運行的。所以顧客隨時隨地都是可以登入,可以預訂的。對于酒店來說,這個系統(tǒng)也可以降低成本,提高管理質(zhì)量,

11、對于酒店內(nèi)部工作人員來說,這個系統(tǒng)可以幫助工作人員減輕工作量,帶來管理的便利。1.3 本系統(tǒng)概述本酒店管理系統(tǒng)采用了B/S架構(gòu),為系統(tǒng)創(chuàng)建了兩個角色:一個是普通用戶(顧客),另一個是管理員(酒店管理人員)。普通用戶登入系統(tǒng)可以查看酒店信息,比如酒店介紹,酒店活動,酒店公告等等,還可以查詢房間信息,查看房態(tài),房間預訂,查看預訂信息,注冊,登入,查看個人信息,修改信息,用戶留言等等。管理員可以對顧客進行入住登記,房態(tài)查詢,退房管理,查看所有顧客信息,查看留言板,發(fā)布公告,系統(tǒng)維護:比如查看管理員信息,修改信息,添加其他管理員等等。第二章 系統(tǒng)需求分析2.1 系統(tǒng)配置需求分析硬件要求:筆記本或者臺式

12、機,雙核CPU,內(nèi)存2G,顯卡至少1G,500G硬盤。處理器i3等。軟件要求:本系統(tǒng)的開發(fā)可以使用eclipse、my eclipse或者其它IDE工具作為代碼開發(fā)工具。還可以使用NotePad+、EditPlus等作為輔助開發(fā)工具。電腦操作系統(tǒng)可為Windows系統(tǒng)。系統(tǒng)將使用Struts2和hibernate框架進行開發(fā),采用三層架構(gòu)作為設(shè)計模式,同時會使用Servlet和jsp作為系統(tǒng)前端的頁面展示。項目部署可使用jboss或者taocat服務器,通常對小型系統(tǒng)的開發(fā)推薦使用tomcat,其操作簡單,容易上手,能滿足基本開發(fā)要求。同時還將使用各種內(nèi)核的瀏覽器作為調(diào)試工具,如IE瀏覽器、谷

13、歌瀏覽器和火狐瀏覽器。此外,運用Oracle 10g作為數(shù)據(jù)存儲的數(shù)據(jù)庫。因此將用到SQL查詢語句對數(shù)據(jù)進行增刪改查操作。總體來說,本系統(tǒng)操作簡單,開發(fā)簡易,能實現(xiàn)基本的數(shù)據(jù)操作功能,因此大多數(shù)普通機器都可開發(fā)與運行。2.2系統(tǒng)市場需求分析網(wǎng)上酒店管理系統(tǒng)作為一種互聯(lián)網(wǎng)酒店預訂平臺,在人們的出行和酒店的高效管理推廣方面起著重大的作用。網(wǎng)上酒店管理系統(tǒng)是一種實時在線交互系統(tǒng),它能向用戶展示酒店基本信息,滿足顧客的需求,最重要的是可以隨時隨地預訂酒店房間,查詢酒店房態(tài),提供最直觀的房間信息,并且能在登入系統(tǒng)的第一時間了解酒店動態(tài),酒店活動,酒店公告等各種信息,方便顧客查詢,節(jié)約顧客時間。另一方面還

14、可以方便酒店工作人員對酒店進行高效率,低成本的管理。所以該系統(tǒng)不管是對顧客還是對酒店本身都起著重要的作用,同時在互聯(lián)網(wǎng)訂購這一平臺上也起著推動作用,對于未來的酒店預訂和酒店管理提供了一種更有效、更實際、更受歡迎的途徑。2.3 系統(tǒng)數(shù)據(jù)庫需求分析本系統(tǒng)采用的數(shù)據(jù)庫是Oracle 10g數(shù)據(jù)庫,Oracle,又名Oracle RDBMS,是甲骨文公司的一款關(guān)系數(shù)據(jù)庫管理系統(tǒng)。它是在數(shù)據(jù)庫領(lǐng)域一直處于領(lǐng)先地位的產(chǎn)品。可以說Oracle數(shù)據(jù)庫系統(tǒng)是目前世界上流行的關(guān)系數(shù)據(jù)庫管理系統(tǒng),系統(tǒng)可移植性好、使用方便、功能強,適用于各類大、中、小、微機環(huán)境。它是一種高效率、可靠性好的、使用簡單,便于維護、適應高

15、吞吐量的數(shù)據(jù)庫解決方案。2.4 系統(tǒng)的功能需求分析本系統(tǒng)的開發(fā)將創(chuàng)建兩個角色,一個是用戶,也就是顧客;另一個是管理員,也就是酒店內(nèi)部工作人員。因此本系統(tǒng)的功能將劃分為兩個部分,一部分是前臺頁面展示及數(shù)據(jù)訪問,另一部分是后臺數(shù)據(jù)管理及存儲。前臺頁面主要功能模塊有:首頁、房間信息、房態(tài)查詢、房間預訂、查詢預訂、留言板、管理賬戶七個功能。其中首頁和房間信息主要是對酒店信息的展示,房間預訂、查詢預訂和留言板主要是對已登入系統(tǒng)的顧客展示,所以前六個模塊主要都是對信息的查詢,及基本信息的存儲。而管理賬戶這個模塊下面還有4個子模塊,分別是:個人信息、修改信息、發(fā)布留言、退出賬戶。后臺頁面主要功能模塊有:首頁

16、、入住登記、房態(tài)查詢、退房管理、顧客列表、查看留言、系統(tǒng)維護七個功能。其中首頁是顯示發(fā)布的公告信息,入住登記和房態(tài)查詢用于顧客的入住,退房管理和顧客列表用于管理已入住的顧客,如查看入住顧客信息,對顧客進行退房管理。查看留言則是管理顧客的反饋情況。最后一個系統(tǒng)維護,它的下面也有四個子模塊,分別是管理員信息、添加管理員、查看已添加的所有管理員和查看所有已注冊的用戶,是對管理員及用戶信息的管理及查看。綜上所述,系統(tǒng)開發(fā)將分為兩個部分,屆時將分別提供給用戶和管理員使用。第三章 系統(tǒng)總體設(shè)計與詳細設(shè)計3.1系統(tǒng)總體設(shè)計3.1.1 MVC模式設(shè)計介紹MVC是一種開發(fā)設(shè)計模式,它不同于三層架構(gòu),它主要由三部

17、分組成:M:模型層(Model),V:視圖層(View),C:控制器(Controller)。它的整個設(shè)計原理是:控制層進行人機交互,由用戶從控制器輸入指令行為(一般是一個servlet),控制器將用戶輸入的指令和數(shù)據(jù)傳遞到業(yè)務模型,這里就是Model層,在模型層將進行業(yè)務邏輯判斷,和對數(shù)據(jù)庫的操作,通常就是數(shù)據(jù)的增刪改查等操作(JavaBean,EJB,Action),最后根據(jù)業(yè)務邏輯選擇不同視圖將處理結(jié)果顯示給用戶,所以視圖層也是進行人機交互的,將結(jié)果反饋給用戶(由JSP頁面產(chǎn)生),用戶可以從JSP頁面獲取相關(guān)信息并做下一步操作。在Struts框架中,我們也會用到MVC設(shè)計模式。首先,用戶

18、輸入的指令或者是做出的請求一般是通過servlet來實現(xiàn)的。接著在model層將請求做一些邏輯處理,并且要和數(shù)據(jù)庫操作,這里就要用到Action和EJB組件,Action處理完請求后,再將結(jié)果動態(tài)顯示到JSP頁面上,這就完成了一次請求。很顯然MVC這種設(shè)計模式,在很多框架中都會用到,特別注意的就是,MVC和三層架構(gòu)并不是同一個概念。三層架構(gòu)是我們由web層,service層,dao層組成。圖3-1 MVC設(shè)計模式3.1.2瀏覽器和服務器架構(gòu)設(shè)計介紹B/S模式即Browser/Server(瀏覽器/服務器),我們平時上網(wǎng)瀏覽的頁面、一些網(wǎng)頁版游戲或者網(wǎng)頁版小運用都是基于B/S架構(gòu)的項目。也就是說

19、,我們只要通過電腦打開一個瀏覽器(IE,火狐,google等)就可以訪問項目,不需要借助其他東西。B/S架構(gòu)設(shè)計主要就是運用了web瀏覽器技術(shù),包括瀏覽器底層支持的各種腳本語言及相關(guān)組件共同完成對項目的訪問及回顯。B/S設(shè)計的優(yōu)勢就在于訪問項目簡單容易,不需要其他軟件的支持,跨瀏覽器,跨平臺。只要把項目部署在服務器上,通過任何一款瀏覽器就可以進行訪問,因此給用戶帶來極大的方便。并且,強大的web瀏覽器技術(shù)也可以給用戶帶來極大的體驗。再一個就是瀏覽器的維護升級也很方便。當然,說到B/S架構(gòu),必然會想到C/S架構(gòu)。C/S即Client/Server(客戶端/服務器)。這種設(shè)計模式,要求用戶必須在本

20、機上安裝一個客戶端軟件。這種設(shè)計模式也有它的優(yōu)點,就是可以減輕服務器端的壓力,因為客戶端可以分擔一些服務。而且這種架構(gòu)的項目對安全機制比較嚴格,一般使用的都是專有網(wǎng)絡(luò),安全度較高,所以通過這種客戶端訪問方式更能保證信息的安全性。3.1.3數(shù)據(jù)庫設(shè)計及表單介紹本酒店管理系統(tǒng)采用的后臺數(shù)據(jù)庫是Oracle 10g,并且采用JDBC和Hibernate兩種設(shè)計共同訪問后臺數(shù)據(jù)庫。JDBC本質(zhì)上就是一大堆接口組成的一套標準。因為后臺數(shù)據(jù)庫有多種,常見的就有Oracle、DB2、Sybase、Mysql和Sql Server等等。我們不管使用的是哪種數(shù)據(jù)庫,只要我們實現(xiàn)JDBC這套接口,就可以訪問對應數(shù)

21、據(jù)庫,所以它提供了一種訪問數(shù)據(jù)庫的方式,是執(zhí)行SQL語句的JavaAPI。Hibernate是一個可以獨立使用于其他平臺的輕量級的設(shè)計框架,可以說是JDBC的升級版,專用于連接數(shù)據(jù)庫。它不像JDBC那么麻煩,不需要寫一大串代碼,它底層封裝好了一些方法,比如save方法,delete方法,saveOrUpdate方法等等,可以直接調(diào)用。當然我們也可以在hibernate的映射配置文件中開啟顯示SQL語句功能,這樣在對數(shù)據(jù)庫進行操作時即可在控制臺自動打印SQL語句。它可自動實現(xiàn)對象和表中記錄的轉(zhuǎn)換,可以在緩存拿到這個對象,并不用再查詢數(shù)據(jù)庫。本系統(tǒng)數(shù)據(jù)庫共有六個實體,分別為:管理員,顧客,用戶,留

22、言,公告,房間。以下是數(shù)據(jù)庫的實體-聯(lián)系圖(E-R圖)與實體類屬性圖,如圖3-2到圖3-5所示。39圖3-2 實體-聯(lián)系圖圖3-3 管理員屬性圖圖3-4 顧客屬性圖圖3-5 用戶屬性圖圖3-6 留言屬性圖圖3-7公告屬性圖圖3-8 房間屬性圖表單設(shè)計介紹:(1) 表Adminitrator:記錄管理員的賬號與密碼。表2-1管理員表字段名數(shù)據(jù)類型字段長度Adminid (管理員Id)Number10(primary key)Name (管理員名字)Varchar220(not null)Password (密碼)Varchar220(not null)(2) 表users:記錄用戶信息。表2-2

23、用戶表字段名數(shù)據(jù)類型字段長度Id (用戶id)Number10(primary key)UserName (用戶名)文本varchar220(not null)Password (密碼)文本varchar220(not null)Age (年齡)Number3(not null)Gender (性別)文本varchar25(not null)Province (所在地)文本varchar220 (not null)Cardid (身份證號碼)文本varchar218(not null)Phone (手機號碼)文本varchar211(not null)Email (常用郵箱)文本varchar

24、220 (not null)( 3 ) 表MessageInfo:記錄留言信息。表2-3留言信息表Id (留言id)Number7(primary key)Title (標題)Varchar2500(not null)Content(留言內(nèi)容)Varchar22000(not null)Senddate(留言時間)Date,(not null)Sender (用戶頭像)Varchar220 (not null)(4)表Notice:記錄公告信息。表2-4公告信息表字段名數(shù)據(jù)類型字段長度Id (信息id)Number10(primary key)Title (標題)Varchar2500(not

25、 null)Content(內(nèi)容)Varchar22000(not null)( 5 ) 表RoomInfo:記錄書本小類信息。表2-5房間表id (小類id)Number7(primary key)roomnumber(房間號)Varchar25(not null)roomstate(房間狀態(tài))Varchar25(not null)( 6 ) 表Customer:記錄顧客信息。表2-6顧客表字段名數(shù)據(jù)類型字段長度customerid(顧客id)Number10(primary key)customername(姓名)Varchar215(not null)Gender(性別)Varchar2

26、5phonenumber(手機號碼)Number11(not null)cardid(身份證號碼)Varchar218(not null)checkindata(入住時間)Varchar230(not null)checkindays(入住天數(shù))Number7(not null)customernumber(入住人數(shù))Varchar27price(價格)Varchar27(not null)paywayid(支付id)Number7(foreign key)customertypeid(顧客類型id)Number7(foreign key)adminid(受理人id)Number7(forei

27、gn key)roomcategoryid(房間類型id)Number7(foreign key)3.1.4系統(tǒng)結(jié)構(gòu)設(shè)計與系統(tǒng)結(jié)構(gòu)流程圖系統(tǒng)的結(jié)構(gòu)設(shè)計分為兩大結(jié)構(gòu),分別為前臺結(jié)構(gòu)設(shè)計和后臺結(jié)構(gòu)設(shè)計。a、前臺結(jié)構(gòu)主要如下:1、首頁模塊:可以查看酒店基本信息,可以查看公告信息,可以點擊跳轉(zhuǎn)鏈接,查看圖片及視頻等信息,可以登入和注冊。2、房間信息模塊:查看房間介紹及各類房間價格。3、房態(tài)查詢模塊:查詢當前房間狀態(tài)。主要顯示不同房間類型的房態(tài)情況。綠色為未入住狀態(tài),紅色為已入住狀態(tài),黃色為維護狀態(tài),暫不提供使用。4、房間預訂模塊:填入表單信息,完成房間預訂。5、留言板模塊:顧客可以直接反饋情況,留言給

28、酒店。6、管理賬戶模塊:下有四個子模塊:(1)個人信息:可以查看用戶本人的基本信息。(2)修改信息:可以修改用戶基本信息。(3)發(fā)布留言:跳轉(zhuǎn)到留言板模塊。(4)退出賬戶:退出賬戶,返回首頁。注意:前臺系統(tǒng)中4、5、6三個模塊均只能在顧客已經(jīng)登入系統(tǒng)的情況下訪問,若無登入訪問,會自動跳轉(zhuǎn)到登入頁面。b、后臺管理結(jié)構(gòu)主要如下:1、首頁模塊:管理員可進行刪除并或發(fā)布公告。2、入住登記模塊:顧客信息登記并入住。3、房態(tài)查詢模塊:查詢當前房間狀態(tài)。主要顯示不同房間類型的房態(tài)情況。綠色為未入住狀態(tài),紅色為已入住狀態(tài),黃色為維護狀態(tài),暫不提供使用。4、退房管理模塊:可根據(jù)顧客姓名、房間號和入住日期迅速查詢

29、結(jié)果并顯示其信息,同時可以對單條記錄進行修改或者刪除。5、顧客列表模塊:管理員可查看所有已入住和預訂的顧客信息。未入住但已預訂的顧客將用紅色顯示。同時在該模塊可以查看并刪除顧客信息,可以下載當前頁或者全部顧客信息,以csv文件格式保存到本地。6、查看留言模塊:列舉出顧客的所有留言,單條讀取留言內(nèi)容,可批量刪除留言記錄,并對留言進行記錄反饋。7、系統(tǒng)維護模塊:下有四個子模塊:(1)管理員信息:可以查看管理員基本信息并進行修改。(2)添加管理員:已登入管理員有權(quán)限添加新的管理員。(3)已注冊管理員:查看已經(jīng)注冊入庫的管理員信息。(4)已注冊用戶:查看已經(jīng)注冊入庫的用戶信息。注意:后臺登入系統(tǒng)中的所

30、有模塊都必須在已登入狀態(tài)下才能訪問。整個系統(tǒng)結(jié)構(gòu)設(shè)計的流程圖如圖3-6所示:圖3-6-1管理員流程圖圖3-6-1用戶流程圖3.2 系統(tǒng)詳細設(shè)計3.2.1 系統(tǒng)功能模塊詳細介紹該酒店管理系統(tǒng)適用于顧客及酒店管理人員使用,顧客可以在前臺頁面進行酒店房間的預訂和個人信息的注冊??梢圆樵兙频攴繎B(tài)及酒店基本信息。酒店管理人員可以在系統(tǒng)后臺頁面完成對顧客信息的增刪改查操作。主要功能如下:1、 系統(tǒng)可以對用戶注冊信息進行錄入;2、 系統(tǒng)可以對顧客預訂房間信息進行錄入;3、 系統(tǒng)可以對管理員信息進行錄入;4、 系統(tǒng)可以對公告信息進行錄入;5、 系統(tǒng)可以對顧客列表信息進行查詢、修改及刪除;6、 系統(tǒng)可以對注冊用

31、戶信息進行查詢及刪除;7、 系統(tǒng)可以對管理員信息、公告信息進行查詢及刪除;8、 系統(tǒng)可以對圖片、視頻信息進行查詢;9、 系統(tǒng)可以對所有類型房間房態(tài)信息查詢。根據(jù)上述的功能系統(tǒng)主要包括以下幾個模塊。u 后臺信息維護模塊:后臺信息維護模塊主要是對顧客及管理員信息進行維護,包括用戶、管理員注冊信息的管理,公告內(nèi)容管理,顧客入住記錄管理和用戶反饋的留言信息管理。u 前臺房間預訂模塊:前臺房間預訂模塊中,顧客想要預訂房間必須先登入系統(tǒng),若沒有注冊,必須先實名注冊再登入系統(tǒng)進行酒店房間預訂,同時用戶登入系統(tǒng)后還可給酒店留言,留言將第一時間直接發(fā)送到酒店管理人員處并保存到數(shù)據(jù)庫中。u 數(shù)據(jù)庫管理模塊:在系統(tǒng)

32、中,對所有用戶、管理員以及入住的信息和留言信息都要進行統(tǒng)一管理。u 信息查看模塊。信息查詢模塊主要用于查看相關(guān)的信息,例如管理員信息、用戶信息和預訂信息,公告信息等。(1) 查看入住后顧客信息。顧客的入住信息需要保存到數(shù)據(jù)庫,后臺會顯示顧客入住登記信息包括顧客的姓名、身份證號碼、聯(lián)系方式、入住日期、入住天數(shù)、房間類型、顧客類型,押金及應付金額等(對應顧客信息表)。(2) 查看修改后顧客入住信息。顧客由預訂變?yōu)槿胱顟B(tài)后,會有相應受理人記錄。根據(jù)具體情況修改顧客入住信息后,可以顯示顧客最后的入住登記信息。(3) 查看添加用戶和添加管理員的信息。注冊用戶,用戶的信息會保存到系統(tǒng)數(shù)據(jù)庫中,添加管理員

33、也將管理員信息存到系統(tǒng)數(shù)據(jù)庫中,管理人員可以根據(jù)用戶的信息查看用戶入住情況,也可查看已注冊管理員基本信息。(4) 查看修改用戶后的信息。用戶信息變動時,需要更新用戶的一些信息時,管理員可以及時查看用戶變化信息。(5) 查看顧客或者用戶留言信息。用戶可以在前臺頁面進行留言,并發(fā)送到后臺,由酒店管理人員進行管理查看,并反饋到酒店負責人員處,并進行處理反饋。(6) 查看預訂狀態(tài),確認預訂是否及時處理。3.2.2 系統(tǒng)詳細功能模塊設(shè)計本系統(tǒng)主要分為前臺和后臺兩大塊,分別按照用戶和管理員進行功能劃分。用戶主要完成預定、留言、查詢和管理等功能,管理員主要完成用戶管理、管理員管理、房間管理、預定管理、留言管

34、理、公告管理等功能。兩大模塊的功能示意圖如下:前臺系統(tǒng)功能模塊圖如圖3-7所示:圖3-7后臺系統(tǒng)功能模塊圖如圖3-8所示:圖3-8第四章 系統(tǒng)頁面設(shè)計與部分核心代碼實現(xiàn)4.1前臺頁面設(shè)計: 1、 用戶注冊頁面主要是用戶在執(zhí)行預定,查看預訂和留言前必須登入,沒有賬號必須先注冊。注冊表單所要填寫的信息有:姓名,密碼,身份證號碼,年齡,性別,城市,手機號碼,常用郵箱,驗證碼等。并且是實名注冊。注冊頁面設(shè)計如圖4-1所示。圖4-12、用戶登入頁面是用戶根據(jù)自己特定的賬號密碼進行登入,只有登入系統(tǒng)后才可以使用房間預訂,查看預訂,留言板及管理賬戶模塊。同時根據(jù)登入的賬戶獲取用戶相關(guān)信息。登錄頁面設(shè)計如圖4

35、-2所示。圖4-23、 首頁用于顯示本系統(tǒng)的所有基本功能以及基本信息,用戶可以查看公告信息,查看酒店介紹,觀看視頻,瀏覽圖片等。首頁頁面設(shè)計如圖4-3所示。圖4-34、 房間信息主要介紹了酒店的房間種類及相關(guān)價格。房間信息頁面設(shè)計如圖4-4所示。圖4-4 5、房態(tài)查詢頁面主要顯示當前酒店房間入住情況。紅色為已入住,綠色為無人入住,黃色為維護中,不提供使用。房態(tài)查詢頁面設(shè)計如圖4-5所示。圖4-56、房間預訂和查看預訂頁面,房間預訂需要填寫基本信息有:姓名,性別,手機號碼,身份證號碼,入住日期,入住天數(shù),房間類型,入住房間,賓客類型,支付方式,以及押金金額。查看頁面主要顯示顧客的預訂信息,同時可

36、以取消預訂。房間預訂和查看預訂頁面設(shè)計如圖4-6所示。圖4-67.留言板頁面。顧客可以在這留言并且可以直接發(fā)送到酒店后臺。留言板頁面設(shè)計如圖4-7所示。圖4-78.賬戶管理模塊下的修改信息頁面。主要由修改用戶個人信息。賬戶管理模塊設(shè)計如圖4-8所示圖4-8由于前臺頁面設(shè)計過多就不再一一介紹了。4.2后臺管理員界面設(shè)計:1、 管理員登錄頁面是執(zhí)行后臺頁面所有功能的第一步,管理員登錄頁面設(shè)計如圖4-9所示。圖4-92、入住登記和房態(tài)查詢和前臺頁面基本一樣,唯一不一樣的地方是入住登記頁面,當你點擊確定后,系統(tǒng)會根據(jù)你選擇的房間類型及賓客類型自動計算應收金額并顯示,然后提交才能保存到數(shù)據(jù)庫。入住登記頁

37、面設(shè)計如圖4-10所示。 圖4-103、 退房管理,管理員可根據(jù)顧客的名字,入住房間號和入住日期查詢指定記錄并且顯示信息,點擊退房將記錄從后臺數(shù)據(jù)庫中刪除,完成退房管理功能。退房管理頁面設(shè)計如圖4-11所示。圖4-114、 顧客列表,在這里管理員可以查看所有顧客的入住登記信息,同時也可退房并刪除數(shù)據(jù),其中金額為0且粉紅色背景的是已預訂的用戶,但還未經(jīng)處理。預訂用戶只交押金。查看信息的同時也可以修改信息,并且可以下載顧客列表并保存到本地。顧客列表頁面設(shè)計如圖4-12所示。圖4-125、 查看留言。在這里可以分頁查看所有用戶反饋的留言,可以查看詳細信息,同時可以進行批量刪除。查看留言頁面設(shè)計如圖4

38、-15所示。圖4-156、系統(tǒng)維護。該模塊下還有管理員信息,添加管理員,已注冊用戶,已注冊管理員。分別管理、查看、刪除對應信息。系統(tǒng)維護模塊設(shè)計如圖4-16所示。圖4-16由于后臺頁面設(shè)計過多就不再一一介紹了。4.3 系統(tǒng)部分核心代碼實現(xiàn)1、 實現(xiàn)顧客入住登記代碼:WebServlet("/SaveCustomer")public class SaveCustomer extends HttpServlet protected void doGet(HttpServletRequest request, HttpServletResponse response) throw

39、s ServletException, IOException /獲取sessionHttpSession session = request.getSession();/獲取前臺頁面輸入的值String customername=request.getParameter("customername");String gender=request.getParameter("gender");String phonenumber=request.getParameter("phonenumber");String cardid=req

40、uest.getParameter("cardid");String checkindata=request.getParameter("checkindata");String checkindays=request.getParameter("checkindays");String roomid=request.getParameter("roomid");String customernumber=request.getParameter("customernumber");String

41、 cashpledge=request.getParameter("cashpledge");String price=request.getParameter("price");String paywayid=request.getParameter("paywayid");String customertypeid=request.getParameter("customertypeid");String roomtypeid=request.getParameter("roomtypeid"

42、;);/將值保存在customer對象Customer customer=new Customer();customer.setCustomername(customername);customer.setGender(gender);customer.setPhonenumber(phonenumber);customer.setCardid(cardid);customer.setCheckindata(checkindata);customer.setCheckindays(Integer.parseInt(checkindays);customer.setRoomid(Integer.

43、parseInt(roomid);/如果customernumber不為空的話將String轉(zhuǎn)為int類型if(customernumber!=null&&!"".equals(customernumber)customer.setCustomernumber(Integer.parseInt(customernumber);customer.setCashpledge(Double.parseDouble(cashpledge);/加載支付方式監(jiān)聽Map<Integer, Payways> map=(Map<Integer, Payway

44、s>) request.getServletContext().getAttribute("payway");Payways paywaystyle=map.get(Integer.parseInt(paywayid);customer.setPayways(paywaystyle);/加載顧客類型監(jiān)聽Map<Integer, Customertype> map2=(Map<Integer, Customertype>) request.getServletContext().getAttribute("customertype&qu

45、ot;);Customertype customertype=map2.get(Integer.parseInt(customertypeid);customer.setCustomertype(customertype);/加載房間·類型監(jiān)聽Map<Integer, RoomCategory> map3=(Map<Integer, RoomCategory>) request.getServletContext().getAttribute("roomtype");RoomCategory roomtype=map3.get(Intege

46、r.parseInt(roomtypeid);customer.setRoomcategory(roomtype);ICustomerService service=new CustomerServiceImpl();ICustomerDao dao=new CustomerDaoImpl();try Customer customer2 = service.findCustomerByName(customername);/判斷顧客是否已經(jīng)入住if(customer2!=null)request.setAttribute("msg", "顧客已入住!"

47、);request.getRequestDispatcher("customerfolder/addcustomer.jsp").forward(request, response);else/判斷房間是否一杯使用List<Customer> list = service.listAllCustomers();for(Customer v:list)Integer ro = v.getRoomid();if(ro=(Integer.parseInt(roomid)request.setAttribute("msg", "很抱歉,該房

48、間已被入??!");request.getRequestDispatcher("customerfolder/addcustomer.jsp").forward(request, response);return;/判斷身份證號碼是否唯一String card=v.getCardid();if(cardid.equals(card)request.setAttribute("msg", "身份證號碼是唯一的,不能和他人重復!");request.getRequestDispatcher("customerfolder

49、/addcustomer.jsp").forward(request, response);return;/判斷身手機號碼是否唯一String phonenum=v.getPhonenumber();if(phonenum.equals(phonenumber)request.setAttribute("msg", "手機號碼是唯一的,不能和他人重復!");request.getRequestDispatcher("customerfolder/addcustomer.jsp").forward(request, respo

50、nse);return;List<User> users=service.listAllUsers();for(User us:users)if(us.getUsername().equals(customername)continue;String phone2 = us.getPhone();if(phone2.equals(phonenumber)request.setAttribute("msg", "手機號碼是唯一的,不能和他人重復!");request.getRequestDispatcher("addcustomer.

51、jsp").forward(request, response);return;String cardid2 = us.getCardid();if(cardid2.equals(cardid)request.setAttribute("msg", "身份證號碼是唯一的,不能和他人重復!");request.getRequestDispatcher("addcustomer.jsp").forward(request, response);return;service.addCustomer(customer);dao.se

52、tY(Integer.parseInt(roomid);request.setAttribute("msg", "顧客預訂成功!");request.getSession().setAttribute("customer", customer); catch (Exception e) / TODO Auto-generated catch blocke.printStackTrace();request.getRequestDispatcher("FindCustomerAction.action").forwa

53、rd(request, response); 第五章 系統(tǒng)測試5.1 測試的目的與目標完成上述各功能模塊的代碼編寫以后做基本測試。測試主要對前臺后臺兩塊進行功能測試,對鏈接的跳轉(zhuǎn),數(shù)據(jù)的顯示,頁面樣式以及后臺數(shù)據(jù)庫數(shù)據(jù)的使用進行綜合測試。測試目的,確保系統(tǒng)各個模塊能正常運行,對數(shù)據(jù)的增刪改查能夠高效運行。測試目標,前后臺系統(tǒng)。預期結(jié)果,正常運行。5.2 單元測試1.前臺測試。登錄前臺酒店管理系統(tǒng),對系統(tǒng)各個單元模塊進行測試,找出其中bug。各個單元測試如下表5-1所示。單元模塊輸入信息正確輸出錯誤輸出及分析用戶注冊新用戶輸入注冊信息進行注冊跳轉(zhuǎn)登錄頁面返回到注冊頁面,查找錯誤信息重新注用戶登錄

54、輸入正確用戶名和密碼信息登錄跳轉(zhuǎn)到首頁并且顯示用戶登錄成功,首頁顯示登入用戶名字用戶不存在,或者密碼錯誤,返回到登入頁面。用戶留言用戶可對酒店評價反饋,或者留言咨詢等在留言發(fā)送以后,顯示留言成功消息框留言失敗,直接報錯,跳轉(zhuǎn)到錯誤頁面表5-1房間信息點擊跳轉(zhuǎn)顯示房間信息介紹顯示錯誤頁面房態(tài)查詢點擊跳轉(zhuǎn)顯示當前所有房間入住情況,紅色為已入住,綠色為未入住,黃色為維護顯示錯誤頁面房間預訂填寫預訂信息,*號為必填項提交后顯示預訂信息信息填寫錯誤或重復,返回預訂頁面查看預訂點擊跳轉(zhuǎn)查看自己的預訂記錄及相關(guān)信息如有錯誤,顯示錯誤頁面管理賬戶點擊跳轉(zhuǎn)顯示個人信息,修改信息,退出賬戶等功能按鈕如有錯誤,顯示錯誤頁面修改信息輸入修改后的信息更新數(shù)據(jù)庫,顯示更改后的信息如有錯誤,不能更新數(shù)據(jù)庫,顯示錯誤頁面2.后臺測試。登錄后臺酒店管理系統(tǒng),對系統(tǒng)各個單元模塊進行測試,找出其中bug。各個單元測試如下表5-2所示。表5-2單元模塊輸入信息正確輸出錯誤輸出及分析管理員登入管理員輸入正確登入信息跳轉(zhuǎn)到后臺系統(tǒng)首頁管理員姓名或密碼錯誤,無法進入系統(tǒng)首頁發(fā)布公告,輸入公告主題及內(nèi)容顯示發(fā)布成功并將公告信息保存到數(shù)據(jù)庫發(fā)布失敗,無法保存公告信息入住登記輸入基本顧客入住信息,*號必填項點擊確定顯示價格,點擊提交,顯示入住成功消息框入住

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論