基于JAVA的酒店管理系统毕业设计论文Word文档格式.docx
《基于JAVA的酒店管理系统毕业设计论文Word文档格式.docx》由会员分享,可在线阅读,更多相关《基于JAVA的酒店管理系统毕业设计论文Word文档格式.docx(15页珍藏版)》请在冰豆网上搜索。
第一章引言
1.1课题背景
我们所要开发的大西洋酒店前台明细查询管理系统是计算机管理本酒店的各种业务需求和业务实现的一种计算机应用技术的创新,本系统是根据当前酒店行业是发展需求而开发的系统,是典型的信息管理系统,系统开发的任务主要包括数据库的设计与维护、客户端应用程序的开发这两个主要方面。
对于前者要求建立起数据一致性和完整性强、数据安全性好的库。
而对于后者则要求应用程序功能完备,易使用和具有较强的可移植性等特点。
1.2系统概述:
本系统主要应用于酒店服务前台,服务于本酒店的各项业务需求。
负责管理本酒店的酒店前台相关名细工作。
大西洋酒店前台管理系统主要由以下几大功能模块构成:
一:
数据录入
录入酒店已入住和未入住的客房相关信息:
录入入住顾客相关信息:
二:
数据修改
修改客房的相关属性:
修改入住者的相关信息:
修改当前管理员帐号密码:
实现新管理员的创建和旧管理员的删除功能:
四:
删除数据
删除退房后顾客的相关信息:
删除酒店不用或废弃的客房相关信息:
六:
查询明细
将入住者信息与客房相关属性使用外键连接实现查询机制的一体化:
七:
退出系统
第二章系统开发平台
2.1系统采用的数据库技术概述
MYSQL是目前最流行的开放源代码的数据库管理系统;
MYSQL是一个高性能,多线程,多用户的建立在客户和服务器上的数据库管理系统:
MYSQL所采用的SQL查询语言语言则集数据定义语言DDL、数据操纵语言DML、数据控制语言DCL的功能于一体,语言风格统一,可以独立完成数据库生命周期中全部活动,包括定义关系模式、建立数据库、插入数据、查询、更新、维护、数据库重构、数据库安全性控制等一系列操作要求,这就为数据库应用系统的开发提供了良好的环境。
用户在数据库投入了运行后,还可根据需要随时地逐步地修改模式,且并不影响数据库的运行,从而使系统具有良好的可扩展性。
2.2系统开发工具的选择
Eclipse是由Sun公司提出的免费开源软件;
具有强大的java程序开发扩展性,能实现java程序的编写编译测试和运行的一体化;
还支hibernate,cvs,xml,uml,Spring等面向对象编程的基于映射来实现的编程扩展性;
是一款比较理想的开发软件。
在开发的过程中我们只要应用是的Sun公司提供是Swing图形界面工具来实现主要模块和框架;
故该系统是用纯java语言来实现的
2.3系统开发与数据库的连接的实现
在系统开发的过程中我们采用的是JDBC在实现当前系统和数据库的连接;
2.4系统开发应用到的其他工具
在系统开发的过程中我们使用了Photoshop作为系统开发过程中所需要处理的图象的
图象处理工具。
第三章系统的分析
3.1系统开发的思
随着人们的物质精神生活的不断提高,酒店这一个行业作为一种民族传统与饮食文化的结合体而不断的得到发展和提升;
而人们的物质生活上的需求导致了酒店这个行业的不断做大做好;
显然在这样的条件下还依赖于以往的传统人工模式来实现酒店的前台管理不仅浪费了人力和物力:
而且在很大的程度上制约了酒店的发展;
使得酒店只能在狭小的空间中生存
然而在酒店行业发展的同时IT产业得到了飞速的发展;
于是便诞生了将人们的所有需求与计算机相集合的发展模式;
酒店前台管理系统也就是这样有供与需的前提下产生的。
我们毕业设计的题目是大西洋酒店前台管理系统;
该系统的各项管理功能的实现都集
中的体现了该系统是一个典型的信息系统。
系统JSP技术+MYSQL开发。
我们所设计的系
统将解决酒店前台管理凌乱而毫无规律的众多弊端、为酒店的管理提供一个系统化,合理化的管理系统:
使得酒店能实现有效,有叙和高性能管理;
所以该系统的设计和开发具有很大的现实意义。
本系统开发的目标是服务于酒店行业的各项管理业务需求,方便工作人员,收集相关信息,发布相关信息,同时力求做到界面人性化,功能齐全,数据存储安全。
3.2系统现状的分析
目前,有很多同类的系统,但由于各用户需求不同,在实际使用过程中,不能完全比较具有针对性的完成酒店前台管理系统的相关功能实现,而且存在维护困难等弊端。
如果自主开发软件,而且使得软件能尽量的做到界面的人性化管理;
在使用维护方面便能通过管理员及时、高效的完成软件的更新提高,从而尽最大可能的满足酒店前台业务管理的需求。
技术上:
本系统采用Sun公司提供的eclipse为开发工具和用MYSQ作为数据库,使用纯java进行开发;
似的系统在安全性能方面得到了保障。
经济上:
本系统实现了酒店前台管理的基本业务需求的功能,系统的开发费用相对低
廉---能被绝大多数的酒店接受,而且可大幅度降低人工管理过程中的费用,提高管理效率。
操作上:
本系统运行在通用的Windows操作系统上,具有Windows相似的操作界面。
具有简单易学,使用方便等特点。
管理人员只需懂得计算机基本操作,经过简单的培训即可操作。
3.3系统分工及系统协作经过对系统的分析,由于系统的特殊性,我们才用的是相互讨论---共同设计与共同完善的方式;
小组共有两人。
第四章系统总体结构设计
4.1系统的流程设计1.酒店前台需求分析与酒店业务需求分析。
2.酒店客房布局与客房属性分析。
3.系统设计与系统功能分析得到系统的最初雏形。
4.系统详细设计与系统设施分析。
5.系统测试与完善流程得到已经实现基本酒店业务需求的管理系统。
6.系统设计完成打包并在其他系统下调试其性能。
7.
4.2系统功能结构的设计
*:
酒店前台管理系统的具体功能实现如下图所示:
在下图中设置有一个超级管理员既享有一切特殊管理权限的管理员,可以有多个普通管
1•大西洋酒店管理系统主界:
2•大西洋酒店管理系统---管理员登陆界面:
3•大西洋酒店管理系统---超级管理员权限设置界面:
4•大西洋酒店管理系统---添加管理员界:
5•大西洋酒店管理系统---用户及客房信息查询界面:
6•大西洋酒店管理系统---查询所有客房当前状态界面:
4.31大西洋酒店管理系统主界面:
该界面主要功能是为管理员提供详细功能实现的组件---从而实现对酒店前台的详细管
理:
其中组件及其实现的相关功能为:
1.管理员信息栏实现---超级管理员功能:
具体的详细代码如下:
publicclass
FrameOnlyimplements
ActionListener{
JFramejf0
=newJFrame("
《--〈
---大西洋酒店前台管理系统,是
计算机毕业设计网提供辅
导---〉--》"
);
Dated1;
Timerti
=newTimer(1000,this
);
JTextField
jt1=newJTextField(8);
jt2=newJTextField(8);
publicFrameOnly(){
jf0.setLayout(
newBorderLayout());
JMenuBarjmb=
newJMenuBar();
JMenu[]jm=
JMenuItem[]jmi=
newJMenu[5];
newJMenuItem[9];
String[]ss={
"
管理员设置"
,"
客房管理"
"
当天经营额度"
酒店概况"
String[]ss1={
登陆管理"
密码管理"
权限管理"
后台维护"
客房等级"
客房入住"
顾客退房"
现有房间"
,"
酒店简介"
};
for(inti=0;
i<
ss.length;
i++){jm[i]=newJMenu(ss[i]);
jmb.add(jm[i]);
//jf.add(jm[i]);
}
for(intj=0;
j<
ss1.length;
j++){jmi[j]=newJMenuItem(ss1[j]);
jmi[j].addActionListener(this);
if(0<
=j&
&
j<
3){
jm[0].add(jmi[j]);
if(4<
4){
jm[1].add(jmi[j]);
if(8<
6){
jm[2].add(jmi[j]);
if(12<
7){
jm[3].add(jmi[j]);
if(j==9){
jm[4].add(jmi[j]);
Stringss0="
C:
\\Documentsand
Settings\\Administrator\\workspace\\jiudianqiantai\\com\\tarena\\jiudianqiantai\\jframe\\000044.jpg"
;
JPaneljp0=newJPanel();
Iconic=newImageIcon(ss0);
JLabeljl0=newJLabel(ic);
JLabeljl3=newJLabel("
《:
欢迎您来到大西洋酒店:
》"
jl3.setFont(newFont("
kkk"
20,30));
jl3.setForeground(newColor(220,125,220));
jl0.add(jl3);
jp0.add(jl0);
jl3.setBounds(50,20,430,60);
//jf.add(jp0);
JLabeljl4=newJLabel("
《--客房入住简况--》"
jl0.add(jl4);
jl4.setBounds(10,75,250,50);
jl4.setFont(
newFont("
15,25));
jl4.setForeground(
JTablejtl=
jl0.add(jtl);
newColor(110,125,220));
newJTable(18,6);
for(inti=1;
18;
i++){
jtl.setValueAt(ss2[i],i,0);
String[]ss3={"
房号:
价格:
"
等级:
设施:
状态:
for(inti=0;
ss3.length;
jtl.setValueAt(ss3[i],0,i);
selectFull();
String[][]ssc=JDBCUTIL.
for(inti=2;
for(intj=1;
4;
j++){
jtl.setValueAt(ssc[i-1][j],i-1,j);
4.32大西洋酒店管理系统---管理员登陆界面
该功能模块主要实现了普通管理员的创建和后台的管理功能:
在做这个界面的时候,我参考了计算机毕业论文网的酒店管理系统界面设计,再此说明报告下噢。
*:
实现该功能与数据库连接的相关代码如下:
publicclassChangeAdmin{staticbooleanb1;
publicstaticBooleanselectAdmin(){
Connectioncon=null;
con=JDBCUTIL.getConnection();
//通过工具类的方法实现数据库的连接。
PreparedStatementps=null;
ResultSetrs=null;
//StringBuffersb=newStringBuffer();
Stringsql="
selectT_Admin,T_PassfromT_XS_UserwhereT_Admin='
+Login.ss1+"
'
andT_Pass='
+Login.ss2+"
;
ps=con.prepareStatement(sql);
//获取一个可执行对象执行当前的sql。
rs=ps.executeQuery(sql);
publicstaticvoidchangeName(){//创建一个方法实现管理员的名字的改变。
selectT_AdminfromT_XS_User"
Stringsql1="
updateT_XS_UsersetT_Admin='
+PasswordManager.ssp1+"
whereT_Admin='
+PasswordManager.ssp+"
//通过sql语句查询输入的酒密码是否存在,如果已经
try{
ps=con.prepareStatement(sql);
re=ps.executeQuery(sql);
//通过可执行对象的操作返回一个结果集。
while(re.next()){
Stringss=re.getString("
T_Admin"
if(ss.equals(PasswordManager.ssp)){ps.executeQuery(sql1);
publicstaticvoidchangePassword(){//创建一个方法实现管理员的密码的更改。
selectT_PassfromT_XS_User"
updateT_XS_UsersetT_Pass='
whereT_Pass='
ResultSetre=null;
while(re.next()){
T_Pass"
4.33大西洋酒店管理系统---添加管理员界
实现该功能的具体功能模块的界面为:
publicstaticvoidcreateUser(){//创建一个方法实现新管理员的创建
try{
con.setAutoCommit(false);
}catch(SQLExceptione1){
e1.printStackTrace();
Stringsql="
insertintoT_XS_User(T_Admin,T_Pass)values('
'
)"
ps.executeUpdate(sql);
mit();
对前边提到的实现数据库连接的工具类的描述代码如下:
publicclassJDBCUTIL{
//注册驱动的实现;
static{
Stringss=;
Class.forName(ss);
}catch(Exceptione){
e.printStackTrace();
//建立java程序与数据库的相关性连接;
publicstaticConnectiongetConnection(){
Connectioncon=null;
Stringurl=;
Stringuser="
sd0902"
Stringpass="
con=DriverManager.getConnection(url,user,pass);
}catch(Exceptionee){
ee.printStackTrace();
returncon;
4.34大西洋酒店管理系统---用户及客房信息查询界面
:
实现该功能的界面和详细代码如下:
实现该功能的详细代码为:
insertintoguesthouse22(RoomNo,t_price,t_mode,t_Cname)values('
+Record.ss0+"
+Record.ss1+"
+Record.ss2+"
+Record.ss3+"
insertintot_customer(t_name,t_sex,t_cno)values('
+Record.ss4+"
+Record.ss5+"
deletefromguesthouse22whereRoomNo='
+OutRoom.ssd+"
deletefromt_customerwheret_name='
上边为用户信息入住和退房的核心sql语句:
4.35:
将数据库中的具体字段值在主界面的表格中展示出来的具体实现代码:
String[]ss2=
{"
1101"
1102"
1201"
1202"
1203"
1204"
1301"
1302"
1303"
1304"
1401"
"
1402"
1403"
1404"
1501"
1502"
1503"
1504"
房号:
价格:
等级:
姓名:
性别:
证号:
String[][]ssc=JDBCUTIL.selectFull();
本段代码为:
通过三个循环来实现下边的步奏:
1.是在new有Jtabel并且将该对象添加到主界面Jframe中的前提下。
2.利用第一个for循环实现将Jtabel的第一列设置为房间管理表格的房号。
3.利用第二个for循环实现将Jtabel的第一行设置为房间管理表格的属性字段值。
4.利用第三个循环实现表格中去掉第一行第一列之外的空余表格的赋值。
publicstaticString[][]selectFull(){
PreparedStatementps=null;
ResultSet