版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、软件工程课程设计报告软件工程课程设计报告 班级:班级:软件软件 xxx 姓名:姓名:xxx 学号:学号:xx4 指导教师:指导教师: 郭鹏飞郭鹏飞 辽宁工程技术大学软件学院 目目录录 1 1 设计内容设计内容 .1 1 2 2 概要设计概要设计 .1 1 2.1 数据库设计 .1 2.1.1 数据库 e-r 图.1 2.1.2 .1 2.1.3 数据库表设计.2 2.2 逻辑结构设计 .2 2.2.1 酒店管理系统数据流图.2 2.2.2 数据字典.3 3 3 详细设计详细设计 .4 4 4 4 程序源码程序源码 .5 5 4.1 客房申请 .5 4.2 退房申请 .6 4.3 查看 .9 5
2、 5 程序运行与调试程序运行与调试 .9 9 5.1 酒店入住页面 .9 5.2 退房 .10 5.3 查询 .10 6 6 总结总结 .1111 参考文献参考文献.1212 成绩评定成绩评定.1212 1 设计内容 酒店管理系统:实现住房,退房,住房人数统计等功能 2 概要设计 2.1 数据库设计 2.1.1 数据库 e-r 图 图 2-1 e-r 2.1.2 住户(序号,姓名,性别,身份证号) 房间(房号,类型,人数) 所住(序号,房号) 所住 房间 房号 类型 房号 序号 序号 身份证号 姓名 住户 性别 n 1 人数 2.1.3 数据库表设计 表 2-1 住户-person 列名列名(
3、table)类型长度非空 序号numberint4是 姓名namevarchar20是 性别sexchar4否 身份证号idint18是 表 2-2 房间-room 列名列名(table)类型长度非空 房号roomidint4是 类型typevarchar4否 人数numint4否 表 2-3 所住-relax 列名列名(table)类型长度非空 序号numberint4是 房号idint4是 2.2 逻辑结构设计 2.2.1 酒店管理系统数据流图酒店管理系统数据流图 图 2-2 数据流图 房间检查 住房信息 住 房 信 息 管理员 统计信息 住 房 标 识 人数统计 退 房 标 识 结账处理
4、 退房 房间 房间信息 结 账 款 项 退房申请 住 房 信 息 住 房 申 请 入住系统 住户 2.2.2 数据字典 图 2-3 图 2-4 图 2-5 图 2-6 名字:住房信息 别名: 描述:房间拥有的信息 定义:住房信息=房间号+房间人数+住房类型 位置:交给住户 房间申请 退房申请 名字:楼层号 别名: 定义:楼层号=1数字1 位置: 名字:房间号 别名: 定义:房间号=2数字2 位置: 名字:房间号 别名: 描述:房间的编号 定义:房间号=楼层号+房间号 位置: 3 3 详细设计详细设计 3.1 酒店管理系统程序流程图 图 3-1 酒店管理系统程序流程图 房间检查 申请成功 登记
5、结账 房间检查 显示 结束 房间申请 房间申请房间申请 用户申请统计申请退房申请 选择功能 开始 4 4 程序源码程序源码 4.1 客房申请 主要思想:输入身份证号,查看房间的剩余,进行入住 request.setcharacterencoding(utf-8); servletcontext application = getservletcontext(); string leixing= (string) application.getattribute(leixing); string roomno = (string) application.getattribute(roomno)
6、; datasource ds = null; context context; try context = new initialcontext(); ds = (datasource) context.lookup(java:/comp/env/jdbc/mysqlds); catch (namingexception e) e.printstacktrace(); system.out.println(获取数据源错误!); try string sql = select * from room where statue=? and roomno=?; queryrunner run =
7、new queryrunner(ds); string str=leixing,roomno; list list=(list) run.query(sql,str,new beanlisthandler(room.class); if(list.isempty() request.getrequestdispatcher(/servlet/insertroom).forward(request,response); elseservletcontext application1= getservletcontext(); application1.setattribute(roomno,ro
8、omno); application1.setattribute(leixing,leixing); requestdispatcher rs=request.getrequestdispatcher(/servlet/insertroom); tryrs.forward(request,response); return; catch (exception e) catch (sqlexception e) e.printstacktrace(); try string sql=select clientname,sex,shenfenzheng,roomnumber from client
9、 where yuding=1;queryrunner run = new queryrunner(ds); list list = (list) run.query(sql, new beanlisthandler(dbcommen.class); request.setattribute(list,list);request.getrequestdispatcher(/ main/yudingruzhu.jsp).forward(request,response);catch(sqlexcept ion e) e.printstacktrace(); 4.2 退房申请 客户退房模块设计是:
10、输入房间号后查询客户信息及消费情况;在输出之 前首先要预先查询房间号是否有人入住,再修改数据库信息,最后显示客户的 信息及消费情况。 退房设计思想为:当输入房间号后到 trueroom2 控制块中查询该房间是否 已经入住,到满足条件时,到 insertroom 对数据库插入退房时间,然后再到 getall 控制块查询:客户信息,房间入住,退房时间以及客户消费信息。最后 到 all.jsp 页面显示所有信息。然后结账,退房。 request.setcharacterencoding(utf-8); string roomno = request.getparameter(roomno); str
11、ing leixing= request.getparameter(leixing); try string sql = select * from room where statue=? and roomno=?; queryrunner run = new queryrunner(ds); string str = leixing, roomno ; list list = (list)run.query(sql, str, new beanlisthandler( room.class); servletcontext application1 = getservletcontext()
12、; application1.setattribute(roomno, roomno); application1.setattribute(leixing, leixing); requestdispatcher rs = request.getrequestdispatcher(/servlet/insertroom); try rs.forward(request, response);return; catch (exception e) catch (sqlexception e) e.printstacktrace(); insertroom 的实现如下: request.setc
13、haracterencoding(utf-8); servletcontext application = getservletcontext(); string leixing = (string) application.getattribute(leixing); string roomno= (string) application.getattribute(roomno); system.out.println(roomno); system.out.println(leixing); int i=integer.parseint(leixing); int result = 0;
14、string message = null; string sql=null; try switch(i) case 0:sql=update room set statue=1 where roomno=?;break; case 1:sql=update room set statue=2,startdate=now() where roomno=?;break; case 2:sql=update room set enddate=now() where roomno=?;break; string sr = roomno; queryrunner run = new queryrunn
15、er(ds); result = run.update(sql, sr); if(i=1) sql=update client set yuding=2 where roomnumber=?; queryrunner run1 = new queryrunner(ds); run1.update(sql, sr); if(i=2)servletcontext application1 = getservletcontext(); application1.setattribute(roomno, roomno); requestdispatcher rs = request.getreques
16、tdispatcher(/servlet/seachall); try rs.forward(request, response); return; catch (exception e) elseif (result = 1) message = 操作成功!; else message = 操作失败!; request.setattribute(message, message); request.getrequestdispatcher(/addresult.jsp).forward(request, response); catch (sqlexception e) e.printsta
17、cktrace(); seachall的实现如下: request.setcharacterencoding(utf-8); servletcontext application = getservletcontext(); string roomno = (string) application.getattribute(roomno); string consumerno = 123456; datasource ds = null; string sql = null; try sql = select clientname,sex,shenfenzheng from client wh
18、ere yuding=2 and roomnumber=?; queryrunner run = new queryrunner(ds); string str = roomno ; list list = (list) run.query(sql, str, new beanlisthandler( dbcommen.class); dbcommen bl = (dbcommen) list.get(0); request.setattribute(bl, bl); sql = select roomno,startdate,enddate, timestampdiff(day,startd
19、ate,enddate) as day from room where statue=2 and roomno=?; list list1 = (list) run.query(sql, str, new beanlisthandler(room.class); room room1 = (room) list1.get(0); request.setattribute(room1, room1); sql = select * from consumer where consumerno=?; string str1 = consumerno ; list list2 = (list) ru
20、n.query(sql, str1, new beanlisthandler (consumer.class); consumer cm = (consumer) list2.get(0);request.setattribute(cm, cm); if(list.isempty()|list1.isempty()|list2.isempty()system.out.println(读取失败!); else request.getrequestdispatcher(/seachall.jsp).forward(request, response); catch (sqlexception e)
21、 e.printstacktrace(); 4.3 查看 房间查询的思想为:先到 getallroom 控制块对条件进行处理,将满足条件 的房间号的数组放到 room.class 中,再到 roomseach.jsp 页面将数组显示出来。 try sql = select roomno,statue,startdate,enddate from room; queryrunner run = new queryrunner(ds); list list = (list) run.query(sql, new beanlisthandler(room.class); request.setatt
22、ribute(list,list); request.getrequestdispatcher(/main/roomseach.jsp).forward(request,response); catch (sqlexception e) e.printstacktrace(); 5 5 程序运行与调试程序运行与调试 5.1 酒店入住页面 图 5-1 入住 5.2 退房 5-2 酒店退房管理 5.3 查询 5-3 住户查询页面 6 6 总结总结 通过一段时间的设计与编写,该酒店管理系统终于有了一个比较完整的框架。 现将心得体会总结如下: 由于时间仓促,这暂时只是一个简单的管理系统,但从设计这个系统的过 程中,我感受到了关于软件工程,数据库设计、商业管理等各方面知识在实际 工作中的应用。在开发该系统过程中,我始终坚持以下四项原则,并朝相应目 标靠拢: (1)实用为主 任何系统都应该以用户需求为最终目标,以方便用
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 习作:多彩的活动教案-2024-2025学年六年级上册语文统编版
- 2024年秋部编版三年级上册 快乐读书吧(教案)
- 多学科整合教学课程设计
- 2024年湖南省湘西土家族苗族自治州凤凰县六年级数学第一学期期末质量跟踪监视试题含解析
- 2024-2030年全球及中国第三方物流的IT支出行业市场现状供需分析及市场深度研究发展前景及规划可行性分析研究报告
- 2024-2030年全球及中国移动中间件行业市场现状供需分析及市场深度研究发展前景及规划可行性分析研究报告
- 2024-2030年全球及中国石油和天然气培训软件行业市场现状供需分析及市场深度研究发展前景及规划可行性分析研究报告
- 2024-2030年全球及中国电视广播行业市场现状供需分析及市场深度研究发展前景及规划可行性分析研究报告
- 2024-2030年全球及中国电动恒温阀行业市场现状供需分析及市场深度研究发展前景及规划可行性分析研究报告
- 2024-2030年全球及中国漂移赛车轮行业市场现状供需分析及市场深度研究发展前景及规划可行性分析研究报告
- 道德讲堂:敬业奉献课件
- 修井机基本知识(讲稿)
- 小学语文人教三年级上册第一组-整本书阅读《男生贾里》教案(珙县米市街小学校高沙)
- 秘书心理学整本书课件完整版电子教案(最新)
- 历年六级翻译真题201312~201512
- H3C智能管理中心iMC部署手册
- 北师大版四年级数学上册角的度量(二)教学课件ppt
- 我国各种大跨度钢桁桥举例及施工技术汇总
- 电动门、电动执行机构调试工序及标准
- 生物质能发电项目可行性分析报告
- 植物遗传转化方法和技术(课堂PPT)
评论
0/150
提交评论