收藏 分销(赏)

java专业课程设计大酒店标准管理系统.doc

上传人:w****g 文档编号:2727255 上传时间:2024-06-05 格式:DOC 页数:23 大小:314.54KB
下载 相关 举报
java专业课程设计大酒店标准管理系统.doc_第1页
第1页 / 共23页
java专业课程设计大酒店标准管理系统.doc_第2页
第2页 / 共23页
java专业课程设计大酒店标准管理系统.doc_第3页
第3页 / 共23页
java专业课程设计大酒店标准管理系统.doc_第4页
第4页 / 共23页
java专业课程设计大酒店标准管理系统.doc_第5页
第5页 / 共23页
点击查看更多>>
资源描述

1、目 录一、设计题目2二、设计目标2三、设计分析23.1可行性分析23.1.1技术上可行性23.1.2操作上可行性33.1.3经济上可行性33.2系统功效分析3四、总体设计34.1设计思想34.2系统功效模块44.3系统步骤分析44.4功效需求和程序模块对应关系74.5数据库结构设计74.5.1系统数据库性能需求74.5.2本系统数据库表设计中所遵守基础标准74.5.3数据库需求分析84.5.4数据字典设计及数据库表命名规则8五、具体设计105.1系统登陆界面105.2添加住房信息功效105.3住房信息查询功效115.4添加就餐信息功效125.5就餐信息查询功效135.6结账功效13六、结论13

2、附录(部分源代码)14一、设计题目 酒店管理系统二、设计目标 1利用已学过知识进行一个简单应用程序开发。2经过设计,掌握使用SSH技术、Java高级语言、SQL语言开发一个基于J2EE应用系统基础方法。后台数据库关键采取My SQL Server数据库。3基础掌握实现对数据库连接、对数据查询、修改、插入、删除等操作。4设计系统主界面,主界面上包含系统功效菜单。5界面友好,操作方便。三、设计分析3.1可行性分析可行性研究目标,就是用最小代价在尽可能短时间内确定问题是否能够处理。要达成这个目标,必需分析多个关键可能解法利弊,从而判定原定系统规模和目标是否现实,系统完成后所能带来效益是否达成值得投资

3、开发这个系统程度。所以,可行性研究实质上是要进行一次大大压缩简化了系统分析和设计过程,也就是在较高层次上以较抽象方法进行系统分析和设计过程。系统可行性分析关键包含经济上可行性,技术上可行性和操作上可行性,下面将分别介绍三种技术上可行性。3.1.1技术上可行性酒店管理系统是采取Java语言编写,含有Java一次编写,四处运行优点,所以此系统在不一样操作系统上全部能够运行,含有很强移植性、健全性和安全性。而且酒店管理系统应含有功效完备、易于使用、易于维护等特点,而对于后者则要求能建立数据一致性和完整性强、数据安全性好库。基于以上要求,本系统采取MyEclipse6.0作为开发工具,使得代码编写过程

4、大大简化。而数据库则是采取现在较为流行Mysql,Java对Mysql含有很好支持,而且在经历了多年发展后Mysql含有很好口碑。此系统在技术上是可行。3.1.2操作上可行性酒店管理系统含有友好用户界面,使用方便,易于维护,操作简单易于被用户接收,用户只需有一定计算机操作基础,并对此系统使用做简单了解,即可方便使用此系统,而且使用此系统能够大大降低管理人员负担。所以从使用操作方面看,此系统开发是可行。3.1.3经济上可行性本酒店管理系统运行硬件环境只需一台廉价电脑既可,软件环境则是安装windows XP系统,MyEclipse6.0,Mysql既可。对于通常中小型酒店来说全部是很小成本支出。

5、所以此系统在经济上、技术上、操作上开发全部是可行。3.2系统功效分析满足用户需求,实现酒店管理步骤。此管理系统关键功效包含添加新管理员、修改密码、用户预订和入住、用户住宿管理、用户餐饮管理、用户结账等等。添加新管理员:此功效能够添加新管理员。用户入住开单:完成用户入住开单,实现用户入住酒店。用户住宿管理:能够实现管理人员对客人住宿情况管理。用户餐饮管理:能够实现管理人员对客人餐饮情况管理。用户结账:实现用户离宿后结账。四、总体设计4.1设计思想本系统实现了来宾入住酒店从登记到离宿管理,本系统关键功效以下:用户入住开单:完成用户预定或现场入住开单,实现客人入住酒店。其中需要录入客人身份证信息、入

6、住时间、房间选择情况等等。用户住宿管理:能够实现管理人员对客人住宿情况管理。用户餐饮管理:能够实现管理人员对客人餐饮情况管理。关键表现在入住客人就餐消费管理和非入住客人就餐消费管理等等。用户结账:实现用户离宿结账,包含住宿消费和就餐消费。4.2系统功效模块图4-1。客房预订即时开房信息查询信息修改信息删除就餐消费信息查询信息修改信息删除住宿结账就餐结账主界面住宿管理系统餐饮管理系统结账信息具体登陆界面 图4-1 系统功效模块图4.3系统步骤分析本系统关键步骤以下图4-2。YN开始登陆界面输入账号密码验证码登录信息正确选择消费住宿消费就餐消费相关消费相关消费退出系统结束图4-2 系统步骤图系统E

7、-R图图4-3。1NN1N用户名密码操作员管理客房房间号入住日期单价住房信息编号入住来宾用户ID姓名就餐餐厅餐桌号就餐信息编号服务者费用1 图4-3 系统E-R图 4.4功效需求和程序模块对应关系如表4-4。表4-4 功效需求和程序模块对应关系住房信息添加住房信息查询住房信息修改餐饮信息添加餐饮信息查询餐饮信息修改住房结账餐饮结账用户入住Y住房管理YY餐饮管理YYY结账YY4.5数据库结构设计4.5.1系统数据库性能需求整个系统应该操作简便,界面友好,维护简便。数据库要求运行稳定,实施速度快,数据安全性高。软件系统本身运行对计算机硬件平台和操作系统平台要求适中。数据库技术是信息资源管理最有效手

8、段。数据库设计是指对于一个指定应用环境,结构最优数据库模式,建立数据库及其应用系统,有效存放数据,满足用户信息要求和处理要求。数据库结构设计好坏将直接对应用系统效率及实现效果产生影响。合理数据库设计能够提升数据存放效率,确保数据完整和一致。本系统采取Mysql 数据库,灵活方便。4.5.2本系统数据库表设计中所遵守基础标准系统时间:由数据库产生系统时间首选数据库日期型,如DATE类型。 外部时间:由数据导入或外部应用程序产生日期时间类型采取varchar类型,数据格式采取YYYYMMDDHH24MISS。大字段:如无尤其需要,尽可能避免使用大字段(blob,clob,long,text,ima

9、ge等)4.5.3数据库需求分析针对此适适用于中小型酒店酒店管理系统需求,设计以下数据项和数据结构:住房信息输入包含:房间号、客房编号、住房费用、住宿时间、开始日期等。用户信息输入包含:用户ID、用户姓名等。用户登录信息输入包含:用户名、用户密码、验证码等。餐厅信息输入包含:餐桌号、服务人员、就餐编号、就餐日期、就餐费用、客人房间号等。4.5.4数据字典设计及数据库表命名规则本系统数据库共包含5张数据库表,各个数据库表字段命名遵守见名知意规则。下面为关键3个表结构:1.住房信息表4-5。表4-5 住房信息表字段名类型可否为空键值备注stayIDint(10)否PK客房编号roomIDvarch

10、ar(45)是房间号码customerIDnumber(33)否用户IDcustomerNamevarchar(180)否用户姓名stayTimevarchar(45)否住宿时间feeint(10)否房间单价startDatedatetime是开始日期2.用户登录表4-6。表4-6 用户登录表字段名类型可否为空键值备注userIDint(10)否PK用户IDuserNamevarchar(180)否用户名passWordnumber(90)否用户密码userPositionvarchar(150)是验证码3.用户餐饮信息表4-7。表4-7 用户餐饮信息表字段名类型可否为空键值备注eatingI

11、Dint(10)否PK用餐编号tableNumbervarchar(45)否餐桌号feeint(10)否用餐费用eatingDatedatetime否用餐日期roomIDint(10)否FK房间号码servervarchar(180)是服务人员4.空餐桌信息表4-8。表4-8 空餐桌信息表字段名类型可否为空 键值 备注tableNumbervarcher(15)否PK 餐桌号tableDescribevarcher(30) 否餐桌信息5.空房间信息4-9。表4-9 空房间信息表字段名类型可否为空键值备注roomIDvarcher(20)否PK房间号码feeInt(11)否房间单价roomDes

12、cribevarcher(30)否房间信息五、具体设计5.1系统登陆界面用户在登陆本酒店管理系统时候,只需要输入正确用户名、密码和验证码,验证码每次登陆全部会随机刷新出来,假如输入信息有误,系统会提醒错误之处,重新登陆即可。图5-1。图5-1 登陆界面5.2添加住房信息功效添加住房信息功效能够实现用户入住登记,其中包含客人姓名、身份证号、入住日期、选择房间情况等等,便于管理员进行管理和查询。图5-2。图5-2 添加住房信息界面实现此功效代码以下:private void doAddAssetsInfoAction(HttpServletRequest request,HttpServletRe

13、sponse response,StayInfoActionform oneStayInfoActionform) throws ServletException, IOExceptionStayInfoPO oneStayInfoPO=new StayInfoPO();stayInfoActionFormSaveToStayInfoPO(oneStayInfoActionform,oneStayInfoPO);oneStayInfoPO.setStayID(SystemUtil.getRandomIntegerNumber(10, 6);boolean returnResult;StayIn

14、foCRUDImple oneStayInfoCRUDImple=new StayInfoCRUDImple();try returnResult=oneStayInfoCRUDImple.insertOneStayInfo(oneStayInfoPO); catch (WebException e) forwardToShowErrorInfoTargetPage(request,response,e.getMessage();return;if(returnResult)forwardToSuccessTargetPage(request,response,/main.html);else

15、 forwardToShowErrorInfoTargetPage(request,response,在添加住房信息时,系统出现了错误,请重新添加该住房信息!);return;5.3住房信息查询功效住房信息查询功效便于管理员和用户查询,能够按住房编号查询,也能够根据入住日期查询,还能够直接查看全部住宿信息,正确快捷。图5-3。图5-3 住房信息查询界面5.4添加就餐信息功效就餐信息添加功效,能够实现管理员对客人就餐消费管理,图5-4。图5-4 添加就餐信息界面实现此功效代码以下:private void doQueryAssetsInfoAction(HttpServletRequest re

16、quest,HttpServletResponse response,EatingInfoActionform oneEatingInfoActionform) throws ServletException, IOExceptionEatingInfoPO oneEatingInfoPO=new EatingInfoPO();eatingInfoActionFormSaveToEatingInfoPO(oneEatingInfoActionform,oneEatingInfoPO);oneEatingInfoPO.setEatingID(SystemUtil.getRandomInteger

17、Number(10, 6);boolean returnResult;EatingInfoCRUDImple oneEatingInfoCRUDImple=new EatingInfoCRUDImple();try returnResult=oneEatingInfoCRUDImple.insertOneEatingInfo(oneEatingInfoPO); catch (WebException e) forwardToShowErrorInfoTargetPage(request,response,e.getMessage();return;if(returnResult)forward

18、ToSuccessTargetPage(request,response,/main.html);else forwardToShowErrorInfoTargetPage(request,response,在添加就餐信息时,系统出现了错误,请重新添加就餐信息!);return;5.5就餐信息查询功效就餐信息查询功效便于管理员和客人对就餐消费信息查询,图5-5。图5-5 就餐信息查询界面5.6结账功效当来宾离店结账时候能够分开进行就餐结账和住房结账,也能够两种账单和在一起清算,图5-6。图5-6 结账界面六、结论 本系统综合了中小型星级酒店特点,从界面设计到系统使用全部是从方便用户使用角度出发

19、,含有很强实用性关键功效包含用户预订、入住开单、用户住宿管理、用户餐饮管理、用户结账等等。系统特色归纳以下: 本系统能够运行在多个操作系统平台上(Windows NT/Windows /Windows XP)。数据库管理系统采取Mysql数据库。而且利用安全可靠Java来编写,使得系统含有很强移植性和易于维护等特点。 立即全方面地处理多种错误异常,尤其是对用户提交信息进行判定,若出现输入错误或信息为空现象,系统就会立即给用户犯错提醒。避免了用户误操作和输入非法数据可能性。 用户界面比较友好,操作简单,使用方便。符合酒店管理基础步骤。本系统基础上满足了酒店管理方面需要。满足了酒店管理人员对客房管

20、理工作。在界面上努力争取做到美观、在操作方面尽可能避免因为用户操作不妥带来系统犯错现象。但因为时间仓促,本系统还存在部分不足之处,关键表现在:需要深入修饰和美化;部分模块功效实现有些简单,和实际情况有一定出入,在以后学习和工作时间里,我会深入加强其功效。附录(部分源代码)验证码:public void doGet(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException CreateVerifyCodeImageBean oneCreateVerifyCodeIma

21、geBean=new CreateVerifyCodeImageBean();java.awt.imag12y67lc,e.BufferedImage image=oneCreateVerifyCodeImageBean.createSomeOneVerifyImage();HttpSession session=request.getSession();String verifyCodeInSession=oneCreateVerifyCodeImageBean.getVerifyCodeString();session.setAttribute(verifyCodeNameInSessio

22、n,verifyCodeInSession); / 将认证码存入SESSION对象中response.setContentType(image/jpeg); /该已经必需要有response.setHeader(Pragma,No-cache);response.setHeader(Cache-Control,no-cache);response.setDateHeader(Expires, 0);javax.imageio.ImageIO.write(image, JPEG, response.getOutputStream(); / 输出图像登陆界面:public void doPost(

23、HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException request.setCharacterEncoding(gb2312);String verifyCode=request.getParameter(verifyCode);String userName=request.getParameter(userName);String passWord=request.getParameter(passWord);UserInfoRUImple oneUserI

24、nfoRUImple=new UserInfoRUImple();UserInfoPO oneUserInfoPO=new UserInfoPO();HttpSession session=request.getSession();String verifyCodeInSession=(String)session.getAttribute(verifyCodeNameInSession);if(verifyCode.equals(verifyCodeInSession)try oneUserInfoPO=oneUserInfoRUImple.selectUserInfo(userName,

25、passWord); catch (WebException e) / TODO Auto-generated catch blocke.printStackTrace();if(oneUserInfoPO=null)request.setAttribute(errorText,用户名和密码输入错误!);RequestDispatcher oneRequestDispatcher=request.getRequestDispatcher(this.getServletContext().getInitParameter(forwardShowErrorInfoTargetPage);oneRe

26、questDispatcher.forward(request, response);return;else RequestDispatcher oneRequestDispatcher=request.getRequestDispatcher(/index.html);oneRequestDispatcher.forward(request, response);else request.setAttribute(errorText,验证码输入错误!);RequestDispatcher oneRequestDispatcher=request.getRequestDispatcher(th

27、is.getServletContext().getInitParameter(forwardShowErrorInfoTargetPage);oneRequestDispatcher.forward(request, response);return;住房信息查询:private void doQueryAssetsInfoAction (HttpServletRequest request, HttpServletResponse response, StayInfoActionform oneStayInfoActionform) throws ServletException, IOE

28、xception String sqlQueryWhereString=null; PageStatePO onePageStatePO=null;onePageStatePO=new PageStatePO();onePageStatePO.setCurrentPageNumber(1); /因为是第一次访问,所以取得第一页数据onePageStatePO.setOnePageSize(AllConstantItems.OnePageSize); switch(oneStayInfoActionform.getQueryMethodRadioButtonID() case AllConsta

29、ntItems.ProductionInfoManage_QueryAllData: sqlQueryWhereString=; break; case AllConstantItems.ProductionInfoManage_QueryDataByProductionID: if(oneStayInfoActionform.getStayID()!=0) sqlQueryWhereString=where stayID=+oneStayInfoActionform.getStayID(); break; case AllConstantItems.ProductionInfoManage_

30、QueryDataBySomeProductionInfo: sqlQueryWhereString=where startDate like %+oneStayInfoActionform.getStartDate()+%; break; StayInfoCRUDImple oneStayInfoCRUDImple=new StayInfoCRUDImple(); List someStayInfo=null; try someStayInfo=oneStayInfoCRUDImple.selectSomeStayInfo(sqlQueryWhereString,onePageStatePO

31、); catch (WebException e) forwardToShowErrorInfoTargetPage(request,response,e.getMessage();/* * 将查询结果保留到requestScope作用域中,实现在页面中显示输出数据 */request.setAttribute(allStayInfoPOList, someStayInfo);/* * 将分页状态对象保留到requestScope作用域中,在页面中显示分页状态相关各个数据 */request.setAttribute(onePageStatePO, onePageStatePO);/* * 将

32、上次查询条件保留到requestScope作用域中,有利于分页跳转继续保持相同查询条件 */request.setAttribute(sqlQueryWhereString, sqlQueryWhereString);forwardToSuccessTargetPage(request,response,this.getInitParameter(ToShowQueryResultTargetPage);结账界面:public void doPost(HttpServletRequest request, HttpServletResponse response)throws ServletE

33、xception, IOException request.setCharacterEncoding(gb2312); String payType=request.getParameter(payType); String eatingIDString=request.getParameter(eatingID); String stayIDString=request.getParameter(stayID); int eatingID=0; int stayID=0; if(eatingIDString!=null)&(eatingIDString.length()0) eatingID

34、=Integer.parseInt(eatingIDString); if(stayIDString!=null)&(stayIDString.length()0) stayID=Integer.parseInt(stayIDString); if(payType.equals(1) EatingInfoPO oneEatingInfoPO=new EatingInfoPO(); EatingInfoCRUDImple oneEatingInfoCRUDImple=new EatingInfoCRUDImple(); try oneEatingInfoPO=oneEatingInfoCRUDI

35、mple.selectOneEatingInfo(eatingID); catch (WebException e) forwardToShowErrorInfoTargetPage(request,response,e.getMessage();return;request.setAttribute(oneEatingInfoPO, oneEatingInfoPO);request.setAttribute(onepayType, 1);forwardToSuccessTargetPage(request,response,/payManage/payInfo.jsp); else Stay

36、InfoPO oneStayInfoPO=new StayInfoPO(); List someEatingInfoPO=new ArrayList(); StayInfoCRUDImple oneStayInfoCRUDImple=new StayInfoCRUDImple(); EatingInfoCRUDImple oneEatingInfoCRUDImple=new EatingInfoCRUDImple(); try oneStayInfoPO=oneStayInfoCRUDImple.selectOneStayInfo(stayID); catch (WebException e)

37、 forwardToShowErrorInfoTargetPage(request,response,e.getMessage();return;request.setAttribute(oneStayInfoPO, oneStayInfoPO);try someEatingInfoPO=oneEatingInfoCRUDImple.selectSomeEatingInfo(stayID); catch (WebException e) forwardToShowErrorInfoTargetPage(request,response,e.getMessage();return;request

38、.setAttribute(onepayType, 2);boolean isNull=someEatingInfoPO.isEmpty();int allFee=0;if(!isNull)Iterator oneIterator=someEatingInfoPO.iterator();while(oneIterator.hasNext()allFee=allFee+oneIterator.next().getFee();allFee=allFee+oneStayInfoPO.getFee();request.setAttribute(allFee, allFee);request.setAttribute(oneIsNull, isNull);request.setAttribute(someEatingInfoPOInfo, someEatingInfoPO);forwardToSuccessTargetPage(request,response,/payManage/payInfo.jsp);

展开阅读全文
部分上传会员的收益排行 01、路***(¥15400+),02、曲****(¥15300+),
03、wei****016(¥13200+),04、大***流(¥12600+),
05、Fis****915(¥4200+),06、h****i(¥4100+),
07、Q**(¥3400+),08、自******点(¥2400+),
09、h*****x(¥1400+),10、c****e(¥1100+),
11、be*****ha(¥800+),12、13********8(¥800+)。
相似文档                                   自信AI助手自信AI助手
搜索标签

当前位置:首页 > 学术论文 > 其他

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        获赠5币

©2010-2024 宁波自信网络信息技术有限公司  版权所有

客服电话:4008-655-100  投诉/维权电话:4009-655-100

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :gzh.png    weibo.png    LOFTER.png 

客服