Java课程设计报告 酒店客房管理系统
客房管理系统java课程设计

客房管理系统java课程设计一、课程目标知识目标:1. 掌握Java语言面向对象编程的基本原理和方法;2. 学会使用Java语言设计并实现客房管理系统的基本功能模块;3. 了解数据库连接和SQL语句在Java中的应用,能够实现对客房信息的增删改查操作;4. 理解Java事件处理机制,实现对客房管理系统中用户界面的交互功能。
技能目标:1. 能够独立分析客房管理系统的需求,设计合理的系统架构和模块划分;2. 掌握使用Java语言编写类和对象,实现系统各个功能的方法;3. 学会运用数据库技术,实现客房信息的存储和管理;4. 提高问题解决能力,能够根据用户需求调整和优化系统功能。
情感态度价值观目标:1. 培养学生的团队协作意识,增强合作完成项目的能力;2. 培养学生勇于尝试、积极探究的学习态度,增强学习Java编程的兴趣;3. 增强学生的实际操作能力,使学生在实践中体会到编程的乐趣和成就感;4. 培养学生关注实际应用,关注社会发展,学会将所学知识应用于实际问题的解决。
二、教学内容1. Java面向对象编程基本原理:类的定义、对象的创建、封装、继承和多态;2. Java异常处理和文件操作:异常处理机制、文件读写操作;3. 数据库连接技术:JDBC简介、数据库连接、SQL语句的执行;4. Java GUI编程:Swing组件的使用、事件处理机制、布局管理器;5. 客房管理系统功能模块设计:- 客房信息管理:实现客房信息的添加、删除、修改和查询功能;- 客房预订管理:实现客房预订、取消预订、查询预订信息功能;- 客房入住与退房管理:实现客房入住、退房、查询在住客人功能;- 系统用户管理:实现用户登录、权限管理、用户信息管理功能;6. 系统测试与优化:功能测试、性能测试、用户界面优化。
教学内容安排和进度:1. 第1周:Java面向对象编程基本原理学习;2. 第2周:Java异常处理和文件操作;3. 第3周:数据库连接技术;4. 第4周:Java GUI编程;5. 第5-7周:客房管理系统功能模块设计;6. 第8周:系统测试与优化。
酒店客房管理系统(论文范文_JSP_JAVA_毕业设计)

摘要随着社会服务行业的发展,使用管理软件来管理酒店的客房信息也正逐步成为众多酒店管理者的需求,而许多酒店也陆续采用了相关的酒店客房管理系统,代替原来的手工记录管理,使效率有明显的提高,出错率显著下降……酒店客房管理系统可以实现对客房的科学化、规范化、查询顾客情况、定房信息、以及结算信息等。
有助于提高管理的效率,客房管理系统是根据某酒店对客房管理的实际情况进行编写的,主要目的是为了方便酒店对客房的实际情况进行集中的查询与管理工作,以提高整个酒店的工作。
主要有用户信息管理模块、客房类型管理模块、客房信息管理模块、客户信息查询模块、经营状况统计模块等.整个宾馆信息管理系统分为两大部分,即后台的数据管理维护和前台的操作。
后台数据的管理能保证系统各项功能的正常运行,前台操作能提供给宾馆客户尽可能方便快捷的服务。
本系统使用功能强大的MyEclipse 8.5作为开发工具,对整个系统进行设计与开发。
本系统可以根据各应用的具体情况,适当加以修改,以便更好应用。
另外,本系统还设计了详细的查询功能,以供管理人员快速掌握酒店的各项业务及相关信息。
在数据库设计阶段使用了Microsoft SQL Server 2005软件,同时介绍了数据库的相关知识,对数据库进行数据库需求分析和数据库结构设计。
分析在数据库中要建立多少存储信息的表,又列出各表的结构,分析表中字段之间的。
关键词:JSP 酒店客房Microsoft SQL Server 2005目录摘要............................................................................................................................... 目录............................................................................................................................... 第一章绪论. 01。
客房管理系统课程设计报告

客房管理系统课程设计报告客房管理系统课程设计报告一、课程设计的目的和意义随着科技的不断发展和人们生活水平的提高,酒店作为一个重要的服务行业,更需要一个先进、高效、智能的管理系统来提高服务质量,方便客户和酒店的管理者进行信息交流和互动。
客房管理是酒店的一项重要任务,客房管理系统的实现,可以有效提高酒店的管理效率和服务质量,满足客户的需求,从而增强酒店的竞争力。
本课程设计的目的是通过对客房管理系统的设计和实现,提高学生的技术能力和实践能力,为以后的实际工作打下坚实的基础。
二、客房管理系统设计综述1. 系统流程客房管理系统是一种信息化的管理系统,其基本流程包括:前台用户提交订单-收银系统进行收费-订单信息保存至数据库-分配房间-通知客户-客房服务管理-顾客结账离店。
2. 系统功能本系统主要包括以下几个功能模块:1)客户信息管理:录入顾客信息、查询顾客信息、修改顾客信息等。
2)房间管理:记录客房的类型、状态、入住时间、离店时间等信息。
3)订单管理:处理前台提交的订单并将订单信息存入数据库,顾客的订单状态包括预订、入住、退房三种状态。
4)支付结算:支持客户使用支付宝、微信、银行卡等支付工具,同时支持现金结算和应收账单的管理。
5)客房服务管理:为顾客提供咨询、维修、各种服务等服务。
6)数据分析:收集各种数据信息进行统计和分析,为酒店日常管理提供参考和依据。
3. 系统结构本系统采用B/S系统结构模式,服务器端安装Web服务器软件,客户端通过浏览器访问服务器进行操作。
4. 系统技术实现系统的前端采用HTML、CSS、JavaScript、Vue.js等技术,后端使用Spring Boot框架和MySQL数据库实现。
三、课程设计中遇到的问题及解决方法1. 系统设计思路不够清晰在课程设计初期,由于缺乏设计经验,对整体的客房管理系统的设计思路不够清晰。
后经过学习和沟通,通过对各种技术的综合应用,逐渐明确系统设计的方向。
酒店管理管理系统java课程设计

酒店管理管理系统java课程设计一、课程目标知识目标:1. 学生能够理解酒店管理系统的业务流程和功能需求。
2. 学生能够掌握Java语言面向对象编程的基本概念,包括类、对象、继承、封装和多态。
3. 学生能够运用Java集合框架处理酒店管理系统中数据存储与检索。
4. 学生理解并掌握Java异常处理机制,提高程序的稳定性和可靠性。
5. 学生能够运用Java事件处理机制实现用户界面与酒店管理系统的交互。
技能目标:1. 学生能够独立设计并编写酒店管理系统的功能模块。
2. 学生能够运用集成开发环境(IDE)进行代码编写、调试和优化。
3. 学生能够通过编写代码实现酒店管理系统的模块测试和系统集成。
4. 学生能够运用软件工程方法,编写技术文档,对系统设计进行说明。
情感态度价值观目标:1. 学生通过课程学习,培养对酒店管理行业信息化的认识和兴趣。
2. 学生在团队协作中,学会沟通与交流,提高解决实际问题的能力。
3. 学生在学习过程中,养成积极思考、主动探索的良好习惯,增强自主学习能力。
4. 学生能够认识到编程在酒店管理系统开发中的实际应用,提高职业素养和社会责任感。
二、教学内容1. 酒店管理系统的业务需求分析,涉及客户管理、房间管理、预订管理、入住退房管理等模块。
2. Java面向对象编程基础,包括类与对象、构造方法、访问控制、继承与多态。
- 教材章节:第三章《Java面向对象编程》。
3. Java集合框架的使用,如List、Set、Map等数据结构在酒店管理系统中的应用。
- 教材章节:第五章《Java集合框架》。
4. Java异常处理机制,捕获和处理程序运行时的异常。
- 教材章节:第七章《Java异常处理》。
5. Java事件处理和图形用户界面设计,实现酒店管理系统的交互界面。
- 教材章节:第十章《Java图形用户界面编程》。
6. 数据库连接和SQL语句,实现酒店管理系统中数据的存储和查询。
- 教材章节:第八章《数据库编程》。
java旅馆管理系统课程设计

java旅馆管理系统课程设计一、课程目标知识目标:1. 让学生理解Java语言面向对象编程的基本原理,掌握类的定义、对象的创建及使用。
2. 让学生掌握Java集合框架的基本使用,如List、Set等,并能应用于实际项目中。
3. 让学生掌握Java异常处理机制,能够编写健壮的代码,提高程序的稳定性。
4. 让学生了解Java数据库连接(JDBC)的基本操作,能够实现对数据库的增、删、改、查功能。
技能目标:1. 培养学生运用Java语言设计并实现一个旅馆管理系统,具备基本的系统分析与设计能力。
2. 培养学生运用Java集合框架解决实际问题的能力,如存储和管理旅馆客户信息、房间信息等。
3. 培养学生运用Java异常处理机制编写可靠代码的能力,提高程序的容错性。
4. 培养学生使用JDBC进行数据库操作的能力,实现旅馆管理系统的数据存储和查询。
情感态度价值观目标:1. 培养学生积极的学习态度,激发学生对编程和计算机科学的兴趣。
2. 培养学生团队合作精神,学会与他人共同分析问题、解决问题。
3. 培养学生严谨、负责的工作态度,养成良好的编程习惯。
4. 培养学生关注社会热点问题,将所学知识应用于实际生活,提高社会责任感。
课程性质:本课程为Java语言程序设计实践课,注重理论与实践相结合,培养学生的实际编程能力和系统设计能力。
学生特点:学生已具备一定的Java语言基础,了解面向对象编程的基本概念,但实际应用能力较弱。
教学要求:教师应采用案例教学、任务驱动等方法,引导学生主动参与教学活动,提高学生的实践能力和创新能力。
同时,注重个体差异,因材施教,确保每个学生都能达到课程目标。
通过课程学习,使学生能够独立设计并实现一个具有一定实用价值的旅馆管理系统。
二、教学内容本章节教学内容主要包括以下几部分:1. 面向对象编程基础:回顾Java类与对象的概念,重点讲解封装、继承、多态等面向对象特性,并指导学生运用这些特性进行类的设计。
java酒店管理系统课程设计

java酒店管理系统课程设计Java酒店管理系统课程设计是计算机科学与技术专业的一门必修课程,是对学生进行项目实践的重要环节。
酒店管理系统的设计涉及到java编程技术、数据库设计技术、面向对象技术等多种知识点,是一项综合性的项目。
第一步,需建立数据库。
设计出一个能够储存全部酒店信息、客户信息以及订单详情的数据库。
考虑到关系型数据库的理念,我们需要设计出需用户的关系模型,以方便数据的储存和查询。
并且要考虑到了数据的增加,修改和查询等操作,因此在数据库设计中需要加入完善的约束和触发器等。
第二步,需进行用户注册与登录。
在网页(或软件)中设计用户注册和登录的功能,以实现用户购买酒店客房的操作。
此操作涉及到用户个人信息的储存和安全保障,也就是说,在注册功能中需要设计防止SQL注入等攻击方式、以及实现密码加密的技术。
第三步,需实现酒店信息查询功能。
管理员或客户可以通过网页或软件查询指定酒店的详情包括酒店名称、所在地点、房型信息、价格、客服电话以及各种优惠信息等等。
在此操作中需要较高的编程技术以及数据库设计技术。
第四步,需实现客房订单与支付功能。
用户可以通过网页或软件提交订单并进行支付,在此操作中我们需考虑到用户与数据库之间的数据传递以及支付宝、微信支付等支付公司的接口。
同时,需要考虑订单信息储存时不能重复,对用户提交的订单要进行同时的记录,方便后期进行统计和查询。
第五步,需实现酒店收入和账务统计功能。
在系统实现订单提交与确认之后,管理者和用户都需要查询过去一段时间内的收入和销售数据。
开发人员需要通过使用可视化的方式,可以按照不同的时间范围,如月度、季度、年度,快速地将数据汇总为图表型数据,使管理者可以清晰直观地看到不同时间段间的收入变化。
综上所述,Java酒店管理系统课程设计综合了多种计算机计算机科学与技术知识点,包括Java编程技术、MySQL数据库设计技术、面向对象技术等等。
开发人员在设计中应做到领导下达任务,明确任务目标,合理规划时间与任务进度,最终交出符合开发要求的酒店管理系统。
(完整word版)基于JAVA的客房管理系统设计(有源代码+数据库)

计算机软件学专业课程设计报告书课程名称SQL server 2000课程设计题目客房管理系统1概述1.1 背景客房管理是旅店管理事务中的一项重要工作,在管理过程中涉及到大量的数据处理,传统的人工管理已经无法完成胜任。
相关数据的处理带来了更大的工作量。
本系统采用目前比较流行的JDBC-ODBC数据访问技术,成功地将面向对象的程序设计思想应用到数据库应用程序设计中。
1.2 开发与运行环境本客房管理系统的开发与运行环境如下:开发环境:Eclipse 3.1开发工具:JAVA 1.5数据库管理系统:SQL Server 2000运行环境:Windows 2000/XP/2003/Vista使用说明:用户自己附加数据库,并且在控制面板下的数据工具中的数据源(ODBC),在用户DSN下添加名为“客房管理”,驱动程序为SQL-Server。
并且安装了JAVA虚拟机,该程序即可使用。
2需求分析客房资管理系统涉及到:客人信息、客房信息、入住信息、历史信息等多种数据信息。
客房管理系统的用户包括系统管理员。
系统管理员负责整理工作,如各种基本信息的添加、删除和简单的结账计算等操作。
本系统的主要功能包括:客人信息管理:客人信息数据的添加、删除、结账计算。
数据查询:查看客人信息数据,查看客房信息数据。
数据统计:统计一段时间内的客房情况和月收入等基本统计。
3系统设计3.1 系统模块设计根据系统功能分析和一些旅店客房管理的特点,经过模块化的分析得到如下图所示的系统功能模块结构图。
系统功能模块结构图3.2 数据库设计3.2.1数据流图顶层数据流图第0层数据流图3.2.2数据字典根据系统功能模块结构图及典型旅店客房管理系统的需求,总结出来如下的数据字典:(1)数据项说明数据项名称含义说明类型长度记录编号惟一标识一条记录bigint8客房编号惟一标识一间客房varchar10离店时间标识离店时间datetime8金额标识所收金额money8类别标识客房类别smallint2名称标识客房类别名称varchar20价格标识客房价格money8(2)数据流说明(3)数据存储说明(4)处理过程说明处理过程名称:审核登陆输入:编号+密码输出:确认加工逻辑:根据编号和密码管理员,进入主窗体。
旅店管理系统java课程设计报告

常州信息职业技术学院课程设计报告软件学院《Java程序设计》课程设计报告题目:旅店管理系统班级:姓名:学号:年月日目录摘要........................................................ 错误!未定义书签。
第1章绪论. (1)第2章系统功能介绍 (2)2.1系统功能总框图 (2)2.2 模块功能介绍 (2)2.2.1 客户信息管理模块功能介绍 (2)2.2.2房间信息管理 (3)2.2.3开退房模块功能介绍 (3)2.2.4退房功能介绍 (3)第3章数据库设计 (4)3.1 数据库需求分析 (4)3.2数据库表的设计 (4)第4章系统功能实现 (6)4.1 管理员模块功能实现 (6)4.1.1 管理员登陆 (6)4.1.2 管理员添加功能实现 (7)4.1.3 管理员查询,修改,删除功能实现 (8)4.2 旅客管理模块功能实现 (11)4.2.1 旅客查询 (11)4.2.2 旅客添加: (12)4.2.3 旅客修改: (12)4.2.3 旅客删除: (12)4.3 房间管理模块功能实现 (13)4.3.1 GRUD功能实现 (13)4.3.2 订房功能实现 (15)4.3.3 退房功能实现 (16)结论 (17)致谢 (18)摘要随着信息技术的发展,计算机已被广泛的应用于社会的各个领域,成为推动社会发展的技术动力。
而在计算机应用中,软件的作用十分突出,软件已经发展成为信息技术的核心,主导着信息产品的开发和信息技术市场的进一步的开拓。
软件产业已成为社会信息化进程中的一个战略性产业。
在软件技术的应用中软件的开发技术尤其是应用型软件产品的开发技术成了重中之重。
不断开发适应用户需求、市场需要的新型软件产品。
尤其是在校园里,各种软件的应用无处不在,为我们的学习和生活提供了方便。
学校的图书馆不仅给我们提供看书学习的地方,还给我们提供了一套功能齐全的图书馆系统,方便我们搜索书籍、借阅图书。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
《Java网络编程》课程设计报告酒店客房管理指导教师:***班级: 1303班组长:*组员: ****完成日期:2016年6月20号运城学院计算机科学与技术系目录第一章问题定义 (3)第二章系统需求分析 (3)2.1 系统建设目标 (3)2.2 可行性分析 (3)2.2.1 技术可行性 (4)2.2.2 经济可行性 (5)2.2.3 运行可行性 (5)25565 63DD 揝\37898 940A 鐊39237 9945 饅30392 76B8皸24587 600B 怋*37451 924B 鉋2.2.4 法律可行性 (5)2.3 系统需求分析 (5)第三章系统总体设计 (6)3.1 系统总体结构设计 (6)3.2 使用结构化方法进行系统分析 (6)3.2.1系统功能建模 (6)3.2.2 学生宿舍管理系统的E-R图 (6)第四章系统的详细设计及其实现 (7)4.1 注册页面 (8)4.2 用户登录 (8)4.3 入住登记 (9)4.4 离店结账并生成结账报表 (11)4.5 房间增加 (13)4.6 房间删除 (14)4.7 房间查询 (15)4.8 房间更新 (15)4.9 客户查询 (16)Z30476 770C 県8Y|g33602 8342 荂-第五章系统测试 (16)165.2 测试方法...................................................175.3 测试步骤...................................................175.4 测试过程...................................................175.5 测试结论...................................................18第六章课程设计体会 (18)第一章问题定义随着人类社会进入信息时代,计算机越来越多地活跃在社会各个领域,成为不可缺少的工具,尤其在管理方面,管理软件的出现使大量繁琐复杂的问题变得简单易行。
在人民生活水平提高的同时,餐饮,住宿,娱乐业在服务行业中占有越来越重要的地位。
要使在当前酒店行业日趋激烈的竞争中脱颖而出,必须努力发展自己在管理方面的特色,避免传统管理方法的失误,使酒店的信誉以及各个管理方面都能够出现零失误,给管理者和普通的营业员带来操作上的方便,对整个酒店各个方面的业务带来快捷,方便,高效的服务,才是管理软件的成功之处。
现今酒店宾馆的规模不断扩大,客户数量急剧增加,有关客户的各种信息也成倍增长,尤其是大量的客房预订信息。
面对庞大的信息量,需要有客户信息管理系统来提高客户管理工作的效率。
通过这样的系统,可以做到信息的规范管理,科学统计和快速查询,从而减少管理方面的工作量。
当前许多酒店正在逐步完善客户信息管理工作,需要一个能满足内部管理需求,提高管理效率的应用系统进行内部管理。
许多酒店经过多年的发展,规模不断扩大,客流量成倍增长,积累了大量的客户信息急需进行统一管理以防信息的流失。
因此,许多酒店需要一个功能全面的客户信息管理系统来进行管理,以使管理客户信息的工作在该系统的配合下更加高效和便捷。
第二章系统需求分析2.1 系统建设目标在对系统初步调查的基础上就可以提出项目的开发目标,即新系统建立后所要求达到的运行指标,这是系统开发和评价的依据。
由于传统的手工客房信息管理,管理过程复杂繁琐,低执行效率,并且容易出错。
为了提高工作效率,减少工作中的错误,针对酒店客房管理开发管理软件,让前台客服人员通过电脑操作进行酒店客房管理,为用户节省时间和人力,更能全面、有效地掌握酒店基本情况,及时获取最新的准确资料和信息。
本酒店客房管理系统主要以提高酒店客房服务的速度、精度,改善顾客服务的亲善程度,减少工作差错为目标,减少各项资金支出,提高管理质量,从而能为酒店经营上档次创造条件。
2.2 可行性分析可行性分析是任何一个大型工程正式投入力量之前必须进行的一项工作。
这对于保证资源的合理利用、避免浪费是一个十分重要的,也是项目一旦开始以后能顺利进行的必要保证。
当系统的.:开发目标确定后,就可以从以下三方面对能否实现新系统目标进行可行性分析2.2.1 技术可行性枮67AE $26542 A38344 95C8 闈技术可行性是指:根据现有的技术条件,能否达到所提出的要求;所需要的物理资源是否具备,能否得到。
硬件:计算机的存储量大,运算速度快,成本较低,外部设备的功能好、效率高、可靠性高,通信设备的能力、质量都满足要求。
系统软件:本系统主要采用B/S结构,其中B/S部分采用JSP技术来实现,由前台用户使用、后台系统管理部分两大部分组成,不需安装客户端,被授权用户通过浏览器即可登录系统。
服务器以Win7为操作系统,Mysql为数据库,主体程序Eclipse实现。
客户端以Win7为平台,用浏览器进行系统登陆和页面浏览。
在B/S三层体系结构系统中,用户通过客户端浏览器向网络上的服务器发出请求,服务器对浏览器的请求进行处理,将用户所需信息返回到浏览器。
B/S结构简化了客户机的工作,客户机上无需配置客户端软件。
服务器将担负更多的工作,对数据库的访问和应用程序的执行将在服务器上完成。
浏览器发出请求,而其余如数据请求、加工、结果返回以及动态网页生成等工作全部由Web Server完成。
实际上B/S体系结构是把二层C/S结构的事务处理逻辑模块从客户机的任务中分离出来,由Web服务器单独组成一层来负担其任务,这样客户机的压力减轻了,把负荷[i]服务器。
Web 分配给了2.2.2 经济可行性经济可行性分析要估计项目的成本和效益,分析项目经济上是否合理,并将费用与效益进行比较,看是否有利。
该酒店客房管理系统开发经费对于一个企业来来说是可以接受的,并且本系统实施后可以显著提高工作效率,有助于企业的信息化管理,所以为该企业开发酒店管理系统在经济上是可行的。
2.2.3 运行可行性运行可行性是指所建立的信息系统能否在该企业实现,在当前的操作环境下能否很好的进行,即组织内外是否具备接受和使用新系统的条件。
该酒店管理系统是一个简单的信息管理系统,所耗费的资源非常少,并且将来的操作界面是直接浏览网页的形式,利用鼠标进行傻瓜式的操作,操作中的每一步都会有相应的提示,这样可以让更多的人群在最短的时间内学会使用他。
2.2.4 法律可行性整个系统由于是自行开发,自行使用,在开发过程中没有涉及合同、责任等与法律抵触的方面。
因此,本系统在法律上是可行的。
按上述四方面进行可行性分析、研究后,我们认为该项目是可行的。
2.3 系统需求分析该酒店预订管理系统使用户能迅速而便捷的了解和查询酒店信息,根据自己的需求来预订房间。
一个方便地实现对客房变更、房价及预订信息的自动化操作。
使用该系统全面管理酒店信息,为用户节省时间和人力,更能全面、有效地掌握酒店基本情况,及时获取最新的准确资料和信息。
该软件能系统管理酒店的信息,功能与实现方面有相当的针对性和实用性。
该系统的主要功能有酒店信息管理,房间类型管理,订单信息管理,业务人员编辑和系统用户管理。
酒店客房管理系统需要具有以下的功能:G@, r34772 87D4 蟔26458 675A 杚21184 52C0 勀1)系统管理功能:普通接待人员的注册2)客户管理功能:提供住宿客户信息的登记以及浏览。
3)住房管理功能:可以进行客户入住、房间更换、退房的管理。
4)查询管理功能:提供对所有用户和房间信息的查询。
如:房间状态查询、客户住房信息查询、客户退房查询、管理员信息查询等。
5)房间管理功能:提供房间的信息管理,例如:房间状态,不同类型房价的剩余量的记录。
6)其他特殊功能:不同权限的用户登录实现不同的功能、各类信息的统计。
第三章系统总体设计系统总体设计是对有关系统全局问题的设计,也就是设计系统总的处理方案,又称系统概要设计。
它主要包括系统模块结构设计、数据库设计等内容。
3.1 系统总体结构设计[4],然后再逐层深入,首先设计总体结构直至进本系统设计采用了自顶向下方式进行设计的。
行每一个模块的设计。
总体设计主要是指在系统分析的基础上,针对企业电子商务的目标,刻画系统的内部结构及其相互关系,明确目标系统的各个组成部分、各个组成部分的作用及其相互关系,系统的流程如图所示:系统功能模块图3.2 使用结构化方法进行系统分析3.2.1系统功能建模对用户需求进行分析,画出系统的数据流图,如图所示。
图3.1 酒店客房管理系统的顶层数据流图酒店客房管理系统的二层数据流图3.2 图3.2.2 学生宿舍管理系统的E-R图根据系统数据流程图,我们可以列出以下系统所需的数据项:X nG25649 6431 搱36112 8D10 贐38513 9671 陱客户:姓名、性别、年龄、证件号码、押金、房间号、房间状态用户:账户名、账户密码、姓名、性别、年龄、联系电话房间:房间号、房间类型、房间单价、电话、房间状态款项:已收押金、消费金额、结余金额同时系统还需要进行记录的数据项:入住及退房记录:客户姓名、入住时间、退出时间、管理员查询记录:日期、当天收入金额、支出金额、全部押金.管理员更新记录:房价更改、客户登记、结算金额用户ER图房间ER图客户ER图结算ER图总体ER图3.3 数据库设计根据E-R模型和数据库需求分析,本系统总共涉及10个数据表格。
其中包括用户表、房间表、客户表表、结算表4个基本表,同时还需要不用的用户登录实现不同的功能,因此还需要角色表、角色类型表,同时还引入了房间状态表,实现简单的操作。
本系统的数据表设计如图所示。
Account表Function表Living表vx; L40215 9D17 鴗34941 887D 衽Role表Role_function表Room表Rooms表Roomstate表User表User_role表第四章系统的详细设计及其实现本章所讲的主要内容是该系统的实现方法和原理。
下面来详细介绍系统的实现.4.1 注册页面//注册新用户protected void doZhuCe(HttpServletRequest req, HttpServletResponse resp)throws ServletException, IOException {User user = new User();ResultMsg rmsg=null;try {copyProperties(user, req.getParameterMap()); BeanUtils.getSqlSession();SqlSession sqlsession= MybatisUtil.25034 61CA 懊33517 82ED 苭31816 7C48 籈F24310 5EF6 延39406 99EE 駮23417 5B79 孹sqlsession.insert(User.insert1,user);mit();sqlsession.close();); 尬注册成功truenew rmsg= ResultMsg(} catch (IllegalAccessException e) {Auto-generated catch block TODO//e.printStackTrace();} catch (InvocationTargetException e) {Auto-generated catch block TODO//e.printStackTrace();}outJsonStrAndColsetransToJsonStr(rmsg))JsonUtil.(resp, JsonUtil.}}4.2 用户登录//判断用户名和密码是否正确protected void doCheckLogin(HttpServletRequest req, HttpServletResponse resp)throws ServletException, IOException {29137 71D1 燑+?( 35834 8BFA 诺nBUser(); new User user ={ trycopyProperties(user,req.getParameterMap()); BeanUtils.getSqlSession(); SqlSession sqlsession = MybatisUtil.out.println(user.getAccount());er uu = sqlsession.selectOne(User.select1, user);out.println(ame==+uu.getAccount()+p===+uu.getPwd());System.(uu.getAccount().equals(user.getAccount()) && uu.getPwd().equals(user.getPwd())){ ifreq.getSession().setAttribute(loginuser, uu);正确跳转到主页面// req.getRequestDispatcher(Myjsp/main.jsp).forward(req, resp);}(Exception e) {catch}// TODO Auto-generated catch blocke.printStackTrace();//不正确跳转到登录页面req.getRequestDispatcher(Myjsp/login.jsp);}38791 9787 鞇g24672 6060 恠26011 659B 斛38067 94B3 钳32262 7E06 縆'}4.3 入住登记//添加一条入住信息protected void addAccount(HttpServletRequest req, HttpServletResponse resp)throws ServletException, IOException {// TODO Auto-generated method stubAccount acc=new Account();ResultMsg rmsg=null;SqlSession sqlsession=MybatisUtil.getSqlSession();System.out.println(req.getParameterMap());try {BeanUtils.copyProperties(acc, req.getParameterMap());System.out.println(addddddddddddddddacc=========== + acc);if(acc.getAccid()==0){System.out.println(888888);sqlsession.insert(Acc.insert1, acc);if(acc.getStateidfk()==3){String accs= acc.getAccount();21993 55E9 嗩28775 7067 灧22439 57A7 垧g28690 7012 瀒Q20653 50AD 傭Account accse=new Account();Live live=new Live();Date date=new Date();accse.setAccount(accs);System.out.println(accs-----------+accse);Account acclive=sqlsession.selectOne(Acc.select5, acc.getAccid());live.setCheckdate(date.toLocaleString());live.setAccidfk(acclive.getAccid());live.setRoomidfk(acclive.getRoomidfk());live.setCashpledge(acc.getCashpledge());sqlsession.insert(Acc.insert2, live);}}else{System.out.println(%updateacc============== + acc);sqlsession.update(Acc.update1,acc);if(acc.getStateidfk()==3){String accs= acc.getAccount();磋ub30923 78CB €40130 9CC2 鳂.nAccount accse=new Account();Live live=new Live();Date date=new Date();accse.setAccount(accs);System.out.println(accs-----------+accse);Account acclive=sqlsession.selectOne(Acc.select5, accse);live.setCheckdate(date.toLocaleString());live.setAccidfk(acclive.getAccid());live.setRoomidfk(acclive.getRoomidfk());live.setCashpledge(300);sqlsession.insert(Acc.insert2, live);}}Room ro=new Room();int roomid=acc.getRoomidfk();int statidfk=acc.getStateidfk();ro.setRoomid(roomid);ro.setStateidfk(statidfk);35750 8BA6 讦36558 8ECE 軎21631 547F 呿240577 9E81 麁N39684 9B04 鬄34410 866A 虪sqlsession.update(Acc.update2, ro);mit();sqlsession.close();); 操作成功浲杳渽睥删獥汵?杳琨畲?} catch (Exception e) {// TODO Auto-generated catch blocke.printStackTrace(););浲杳渽睥删獥汵?杳琨畲?操作失败}JsonUtil.outJsonStrAndColse(resp, JsonUtil.transToJsonStr(rmsg));}}4.4 离店结账并生成结账报表//结账信息protected void Delete(HttpServletRequest req, HttpServletResponse resp)throws ServletException, IOException {// TODO Auto-generated method stubint livid=Integer.parseInt(req.getParameter(livid));硶30838 7876 奦{i22886 5966 罰c7?24 7F70int bill=Integer.parseInt(req.getParameter(ill));System.out.println(livid====+livid);System.out.println(ill== + bill);SqlSession sqlsession=MybatisUtil.getSqlSession();ResultMsg rmsg=null;Live live = new Live();live.setLivid(livid);live.setBill(bill);try{Live lives=sqlsession.selectOne(Live.select4,livid);/*sqlsession.delete(Live.delete1,livid);System.out.println(accid=======+accid);sqlsession.delete(Live.delete2,accid);*/sqlsession.update(Acc.update3, lives.getAccidfk());sqlsession.update(Room.update_room_state, lives);sqlsession.update(Live.update1, live);Live live2 = sqlsession.selectOne(Live.select6, livid);mit();証8A3C35388崷5D3723863澾6FBE2860635303 89E7 觧26989 696D 業27266 6A82 檂sqlsession.close();StringBuffer sb = new StringBuffer();sb.append(<div class = 'billlist'><h3 style = 'text-align: center;'>账单</h3>姓名:+live2.getAccount().getAccount());sb.append(</br>);+live2.getRoomnumber().getRoomnumber()); 扳愮灰湥? 房间号:sb.append(</br>);+live2.getCashpledge()); 扳愮灰湥? 押金:sb.append(</br>);+live2.getBill()); 扳愮灰湥? 消费:sb.append(</br>);+(live2.getCashpledge() - live2.getBill())); 结余:扳愮灰湥?sb.append(</br>);+live2.getCheckdate()); 时间:扳愮灰湥?sb.append(</br>);sb.append(</br>););欢迎下次光临!扳愮灰湥?rmsg=new ResultMsg(true,sb.toString());}catch(Exception e){e.printStackTrace();32709 7FC5 翅20291 4F43 佃24141 5E4D 幍25480 6388 授37536 92A0 銠31731 7BF3 篳36643 8F23 輣$); 结算失败浲杳渽睥删獥汵?杳琨畲? }JsonUtil.outJsonStrAndColse(resp, JsonUtil.transToJsonStr(rmsg));}}4.5 房间增加//添加房型protected void addType(HttpServletRequest req, HttpServletResponse resp)throws ServletException, IOException {// TODO Auto-generated method stubRoomType types=new RoomType();ResultMsg rmsg=null;SqlSession sqlsession=MybatisUtil.getSqlSession();try {BeanUtils.copyProperties(types, req.getParameterMap());System.out.println(types.getRoomsid());if(types.getRoomsid()==0){System.out.println(888888);yg淿28159 6DFF 儂20738 5102 喔21908 5594 湔628244 6E54 取21462 53D6sqlsession.insert(RoomType.insert1, types);}else{System.out.println(000000);sqlsession.update(RoomType.update1,types);mit();sqlsession.close();浲杳渽睥删獥汵?杳琨畲? 操作成功 );} catch (Exception e) {// TODO Auto-generated catch blocke.printStackTrace(););操作失败浲杳渽睥删獥汵?杳琨畲?}JsonUtil.outJsonStrAndColse(resp, JsonUtil.transToJsonStr(rmsg));}}4.6 房间删除//移除一种房间类型26867 68F3 棳439200 9920 餠40540 9E5C 鹜 25890 6522 攢 38754 9762 面protected void toremove(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {// TODO Auto-generated method stubResultMsg rmsg=null;try{String roomsids=req.getParameter(oomsid);int roomsid=Integer.parseInt(roomsids);SqlSession sqlsession=MybatisUtil.getSqlSession();sqlsession.delete(RoomType.delete1,roomsid);mit();sqlsession.close(););删除成功浲杳渽睥删獥汵?杳琨畲?}catch(Exception e){e.printStackTrace();); 删除失败浲杳渽睥删獥汵?杳琨畲?}JsonUtil.outJsonStrAndColse(resp, JsonUtil.transToJsonStr(rmsg));}1TJ 35797 8BD5 试8N29631 73BF 玿4.7 房间查询//查询所有房间类型protected void doList(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {// TODO Auto-generated method stubSqlSession sqlsession=MybatisUtil.getSqlSession();List<RoomType> typelist =sqlsession.selectList(RoomType.select1);String jsonStr = JsonUtil.transToJsonStr(typelist);System.out.println(typelist.get(0).getRoomtype());JsonUtil.outJsonStrAndColse(resp,jsonStr);}protected void toUpdate(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {// TODO Auto-generated method stubString roomsids=req.getParameter(oomsid);int roomsid=Integer.parseInt(roomsids);SqlSession sqlsession=MybatisUtil.getSqlSession();RoomType type =sqlsession.selectOne(RoomType.select2,roomsid);M28207 6E2F 港26505 6789 枉X24550 5FE6 忦u23657 5C69 屩26059 65CB 旋req.setAttribute( ype, type);req.getRequestDispatcher(Myjsp/room/rotypeedit.jsp).forward(req, resp);4.8 房间更新//更新房间信息protected void toUpdate(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {// TODO Auto-generated method stubString roomsids=req.getParameter(oomsid);int roomsid=Integer.parseInt(roomsids);SqlSession sqlsession=MybatisUtil.getSqlSession();RoomType type =sqlsession.selectOne(RoomType.select2,roomsid);req.setAttribute( ype, type);req.getRequestDispatcher(Myjsp/room/rotypeedit.jsp).forward(req, resp); }4.9 客户查询//查询所有现入住客户protected void AccList(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {// TODO Auto-generated method stubSqlSession sqlsession=MybatisUtil.getSqlSession();List<Account> Acclist =sqlsession.selectList(Acc.select1);JsonUtil.outJsonStrAndColse(resp,JsonUtil.transToJsonStr(Acclist));}protected void toUpdate(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {int accid=Integer.parseInt(req.getParameter(accid));SqlSession sqlsession=MybatisUtil.getSqlSession();Account acc =sqlsession.selectOne(Acc.select2,accid);req.setAttribute(acc,acc);req.getRequestDispatcher(Myjsp/room/accountedit.jsp).forward(req, resp);}第五章系统测试5.1 测试综述系统测试其实就是对系统实现的一个校正。