课程设计---宾馆客房管理系统
课程名称: 数据库原理及应用
项目名称:宾馆客房管理系统
eclipse、Tomcat、MySQL8、Navicat
【项目内容】
1、主要数据表
客户住房信息登记表,客房信息统计表,账目统计表等。
2、功能模块
1)接待人员可以完成为客人预订房间,客人入住登记,客人离店结帐,并生成结帐报表;并可以按多种属性查询客房或客人情况。
2)经理可以随时查询、汇总宾馆客房和客人情况,并获得房间入住情况汇总报表。
3)经理可以进行房价调整,房间增减。
系统需求分析
结合项目要求以及通过对部分酒店客房管理模式的分析,我们小组设计的宾馆客房管理系统的功能需求具体如下: 该系统用户设置为员工与经理两大类别,各类别用户都有自己的权限。
对系统的第一大用户经理,他具有如下功能:
(1)经理必须通过帐号和密码登入系统。
(2)经理能够对员工进行注册,能够对员工的个人信息进行查询、修改和删除。
(3)经理能够对客户信息进行管理。
(4)经理能够对客房进行管理,主要包括对客房基本信息的添加、查询、删除等管理操作。
(5)经理能够对宾馆客房基本信息进行管理,主要包括对客房的定价等信息进行管理操作。
(6)经理能够对客户的入住消费进行管理,主要包括客户入住日期、退房日期、房费结算等进行管理操作。
(7)经理能够对员工和清洁工的信息进行管理,主要包括对员工和清洁工基本信息的修改和删除,以及增添新的员工和清洁工。
对系统的第二大用户员工,他具有以下功能:
(1)员工必须通过帐号和密码登入系统;
(2)员工可以对客户入住情况进行登记操作,对客户退房进行结账操作,对房间的清扫进行操作;
(3)员工可以对房间的打扫进行操作。
(4)员工为客户办理会员注册。
(5)员工可以查询房间的状态,主要包括是否入住,是否打扫等情况。
综上经理的权限明显多于员工的管理权限,不同权限管理可进行操作稍有差异。
系统的概要设计
E-R图
功能模块图
数据库物理设计
(1)清洁工表
清洁工表(clean_worker)
(2)顾客表
顾客表(custom)
(3)入住信息表
入住信息表(jdorder)
(4)房间信息表
房间信息表(room)
(5)VIP顾客信息表
VIP顾客信息表(VIP)
(6)员工表
员工表(worker)
核心代码
后端核心代码
- 连接数据库(com.jdbc.DButil包)
- 登录处理,房间状态处理(com.jdbc包)
- 六个实体类(com.jdbc.entity包)
- 处理数据,前端数据传到数据库,以及数据库数据传到前端(com.jdbc.service包)
- 后端处理,具体功能实现(com.jdbc.servlet包)
DButil.java类(jdbc连接数据库)
package com.jdbc.DButil;import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;public class DButil {private static String driver="com.mysql.cj.jdbc.Driver";private static String url = "jdbc:mysql://localhost:3306/jdgl?useUnicode=true&characterEncoding=UTF-8&useSSL=false&serverTimezone=UTC";/** Asia* /* Shanghai*/private static String user="root";private static String password="19980226";private static Connection conn = null;private static PreparedStatement ps=null;private static ResultSet rs=null;//加载驱动public static Connection getConn() throws SQLException {try {Class.forName(driver);/* System.out.println("成功加载驱动"); */conn=DriverManager.getConnection(url, user, password);/* System.out.println("连接成功"); */} catch (ClassNotFoundException e) {// TODO Auto-generated catch blocke.printStackTrace();}return conn;}//释放资源public static void close() throws SQLException{if(rs!=null){rs.close();}if(ps!=null){ps.close();}if(conn!=null){conn.close();}}//查询public static ResultSet select(String sql,Object[] obj) throws SQLException{DButil.getConn();try {ps=conn.prepareStatement(sql);} catch (SQLException e) {// TODO Auto-generated catch blocke.printStackTrace();}for(int i=0;i<obj.length;i++){ps.setObject(i+1,obj[i]);}rs=ps.executeQuery();return rs;}//无条件查询public static ResultSet select(String sql) throws SQLException{DButil.getConn();try {ps=conn.prepareStatement(sql);} catch (SQLException e) {// TODO Auto-generated catch blocke.printStackTrace();}rs=ps.executeQuery();return rs;}//删除public static int update0(String sql) throws SQLException{DButil.getConn();try {ps=conn.prepareStatement(sql);} catch (SQLException e) {// TODO Auto-generated catch blocke.printStackTrace();System.out.println("发送失败");}int a=0;try {a = ps.executeUpdate();} catch (SQLException e) {// TODO Auto-generated catch blocke.printStackTrace();System.out.println("执行sql语句失败");}finally {DButil.close();}return a;} //修改public static int update(String sql,Object[]obj) throws SQLException{DButil.getConn();try {ps=conn.prepareStatement(sql);} catch (SQLException e) {// TODO Auto-generated catch blocke.printStackTrace();System.out.println("发送失败");}for(int i=0;i<obj.length;i++){try {ps.setObject(i+1, obj[i]);} catch (SQLException e) {// TODO Auto-generated catch blocke.printStackTrace();System.out.println("参数设置失败");}}int a=0;try {a = ps.executeUpdate();/* conn.commit(); */} catch (SQLException e) {// TODO Auto-generated catch blocke.printStackTrace();System.out.println("执行sql语句失败");}finally {DButil.close();}return a;}
}
前端核心代码
- 引入bootstrap文件,相关js文件,自己写的CSS文件等(assets文件夹)
- 管理员界面(backStage文件夹)
- 员工界面(forehead、success、sys文件夹)
- 登录界面(login.jsp文件)
登录界面(login.jsp)
<%@ page language="java" contentType="text/html; charset=UTF-8"pageEncoding="UTF-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>登录界面</title><!-- Bootstrap -->
<link href="assets/css/vendor/bootstrap/bootstrap.min.css"rel="stylesheet">
<link rel="stylesheet" href="assets/css/vendor/bootstrap-checkbox.css">
<link href="assets/css/minimal.css" rel="stylesheet">
</head>
<body class="bg-1"><!-- Wrap all page content here --><div id="wrap"><!-- Make page fluid --><div class="row"><!-- Page content --><div id="content" class="col-md-12 full-page login"><div class="inside-block"><img src="assets/images/logo-big.png" alt class="logo"><h1><strong>欢迎</strong> 登陆</h1><h3>宾馆客房管理系统</h3><form id="form-signin" class="form-signin" action="login"method="post"><section><div class="input-group"><input type="text" class="form-control" name="user"placeholder="用户名"><div class="input-group-addon"><i class="fa fa-user"></i></div></div><div class="input-group"><input type="password" class="form-control" name="passwd"placeholder="密码"><div class="input-group-addon"><i class="fa fa-key"></i></div></div><div class="input-group"><input type="radio" name="login-type" value="0"checked="checked">员工登陆 <inputtype="radio" name="login-type" value="1">管理员登陆</div><div><c:if test="${msg!=null }">${msg}</c:if></div></section><section class="controls"></section><section class="log-in"><button class="btn btn-greensea">登陆</button></section></form></div></div><!-- /Page content --></div></div><!-- Wrap all page content end -->
</body>
</html>
系统实现
登录界面
员工管理界面
经理管理界面
员工管理
注意
连接自己的数据库时,在com.jdbc.DButil包下面的java文件里,修改为自己的用户名和密码。
Worker表里面workertype,其中0代表员工,1代表经理,0代表清洁工。
登录的时候,选择员工登录时,输入数据库中workertype为0的对应的姓名和密码。选择经理登录时,输入workertype为1的对应的姓名和密码。
本文借鉴至博文,https://blog.csdn.net/weixin_42673117/article/details/100527448。非常感谢博主的分享。
课程设计---宾馆客房管理系统相关推荐
- 基于c++课程设计-宾馆客房管理系统(附源码)
文章目录 前言 项目简介 涉及知识点 源码获取方法: 系统登陆界面 系统入口 订房实现 入住登记 源码获取方法: 前言 基于c&c++课程设计-宾馆客房管理系统(附源码+可执行程序) 非常完整 ...
- 宾馆客户管理系统数据库java_数据库课程设计+宾馆管理系统+Java+Sql
[实例简介] 数据库课程设计+宾馆管理系统+Java+Sql [实例截图] [核心代码] elz76n └── 数据库课程设计 ├── sushe │ ├── build │ │ ├── ...
- 【C++例程】:宾馆客房管理系统
目录 宾馆客房管理系统 1 设计思路及总体设计 2 订房功能的c++实现: 3 入住登记功能的c++实现: 宾馆客房管理系统 1 设计思路及总体设计 通过对c++课程的学习,我了解到了其面向对象的高级 ...
- 基于宾馆客房管理系统数据库实现
文章只截取部分代码,想要完整源码的小伙伴在评论区留言 目录 1 概述 1.2相关技术分析 2 系统功能设计 3数据库设计 3.1 概念结构设计 3.2逻辑结构设计 3.2.1 E-R图向关系模式的转换 ...
- [附源码]SSM计算机毕业设计宾馆客房管理系统JAVA
项目运行 环境配置: Jdk1.8 + Tomcat7.0 + Mysql + HBuilderX(Webstorm也行)+ Eclispe(IntelliJ IDEA,Eclispe,MyEclis ...
- 计算机毕设Python+Vue业俊宾馆客房管理系统(程序+LW+部署)
项目运行 环境配置: Jdk1.8 + Tomcat7.0 + Mysql + HBuilderX(Webstorm也行)+ Eclispe(IntelliJ IDEA,Eclispe,MyEclis ...
- jsp+ssm计算机毕业设计宾馆客房管理系统【附源码】
项目运行 环境配置: Jdk1.8 + Tomcat7.0 + Mysql + HBuilderX(Webstorm也行)+ Eclispe(IntelliJ IDEA,Eclispe,MyEclis ...
- [附源码]java+ssm计算机毕业设计业俊宾馆客房管理系统【源码+数据库+LW+部署】
项目运行 环境配置: Jdk1.8 + Tomcat7.0 + Mysql + HBuilderX(Webstorm也行)+ Eclispe(IntelliJ IDEA,Eclispe,MyEclis ...
- 宾馆客房管理系统正文
宾馆客房管理系统正文 1 引言 随着人员流动规模的不断扩大,宾馆数量的急剧增加,有关客房管理的各种信息量也在不断成倍增长.面对庞大的信息量,就需要有客房信息管理系统来提高客房管理工作的效率.通过这样 ...
- 基于html人事管理报告,基于C++builder的课程设计报告 (人事管理系统)
内容介绍 原文档由会员 bshhty 发布 C++builder课程设计 ( 人事信息管理系统 ) 12页 7000余字 资料包含:完整课程设计报告,源代码等相关设计资料.本课程设计为RAR个文件. ...
最新文章
- [YTU]_2907( 类重载实现矩阵加法)
- Coursera课程Python for everyone:Quiz: Networks and Sockets
- ASP.NET中实现模版的动态加载
- 正则表达式与神经网络的深度融合
- 二十四种设计模式:装饰模式(Decorator Pattern)
- IAR stm8 调试时无法看到局部变量解决
- Qt5 中的 signal/slot 新语法
- ==与equal在java中应用的感悟
- ZendStudio8的注册码
- 近似求PI (15 分)
- WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED!
- Flink当中使用kafka Consumer
- CMake - SWIG - 移植动态库
- 【Leetcode】347. 前 K 个高频元素
- 电脑选购指南(内含各价位型号最新推选)
- L0 Norm 、L1 Norm 和 L2 Norm 的简单理解
- 原理图中VCC、VDD、VEE、VSS等符号的意思
- py2neo直接调用cypher操作程序【不用每次都要输入cypher操作命令】
- Linux进阶 apache服务器;虚拟主机
- 讲座录播|Wook-Shin Han教授:Combining Sampling and Synopses with Worst-Case Optimal Runtime and Quality Gua