SSM宾馆客房管理系统开发mysql数据库web结构java编程计算机网页源码eclipse项目
一、源码特点
SSM 宾馆客房管理系统是一套完善的信息系统,结合springboot框架和bootstrap完成本系统,对理解JSP java编程开发语言有帮助系统采用SSM框架(MVC模式开发),系统具有完整的源代
码和数据库,系统主要采用B/S模式开发。
ssm 宾馆客房管理系统
前段主要技术 bootstrap.css jquery
后端主要技术 SSM
数据库 mysql
开发工具 eclipse JDK1.8 TOMCAT 8.5
二、功能介绍
本系统模块实现功能如下:
(1)会员等级管理:对会员等级信息进行添加、删除、修改和查看
(2)管理员管理:对管理员信息进行添加、删除、修改和查看
(3)员工管理:对员工信息进行添加、删除、修改和查看
(4)客户管理:对客户信息进行添加、删除、修改和查看
(5)客房类型管理:对客房类型信息进行添加、删除、修改和查看
(6)客房管理:对客房信息进行添加、删除、修改和查看
(7)客房预定管理:对客房预定信息进行添加、删除、修改和查看
(8)公告管理:对公告信息进行添加、删除、修改和查看
(9)个人信息修改、登录
数据库设计
(1)会员等级信息表如表5.1所示:
表5.1 会员等级信息表
序号 | 字段名称 | 数据类型 | 长度 | 主键 | 描述 |
1 | hydjid | INTEGER | 11 | 是 | 会员等级编号 |
2 | dj | VARCHAR | 40 | 否 | 等级 |
3 | yhjs | VARCHAR | 40 | 否 | 优惠介绍 |
4 | zk | VARCHAR | 40 | 否 | 折扣 |
(2)管理员信息表如表5.2所示:
表5.2 管理员信息表
序号 | 字段名称 | 数据类型 | 长度 | 主键 | 描述 |
1 | glyid | INTEGER | 11 | 是 | 管理员编号 |
2 | yhm | VARCHAR | 40 | 否 | 用户名 |
3 | mm | VARCHAR | 40 | 否 | 密码 |
4 | xm | VARCHAR | 40 | 否 | 姓名 |
(3)员工表如表5.3所示:
表5.3 员工信息表
序号 | 字段名称 | 数据类型 | 长度 | 主键 | 描述 |
1 | ygid | INTEGER | 11 | 是 | 员工编号 |
2 | yhm | VARCHAR | 40 | 否 | 用户名 |
3 | mm | VARCHAR | 40 | 否 | 密码 |
4 | xm | VARCHAR | 40 | 否 | 姓名 |
5 | lxdh | VARCHAR | 40 | 否 | 联系电话 |
6 | lxdz | VARCHAR | 40 | 否 | 联系地址 |
(4)客户表如表5.4所示:
表5.4 客户信息表
序号 | 字段名称 | 数据类型 | 长度 | 主键 | 描述 |
1 | khid | INTEGER | 11 | 是 | 客户编号 |
2 | yhm | VARCHAR | 40 | 否 | 用户名 |
3 | mm | VARCHAR | 40 | 否 | 密码 |
4 | xm | VARCHAR | 40 | 否 | 姓名 |
5 | xb | VARCHAR | 40 | 否 | 性别 |
6 | lxdz | VARCHAR | 40 | 否 | 联系地址 |
7 | lxfs | VARCHAR | 40 | 否 | 联系方式 |
8 | gj | VARCHAR | 40 | 否 | 国籍 |
9 | sfz | VARCHAR | 40 | 否 | 身份证 |
10 | hydj | VARCHAR | 40 | 否 | 会员等级 |
(5)客房类型信息表如表5.5所示:
表5.5 客房类型息表
序号 | 字段名称 | 数据类型 | 长度 | 主键 | 描述 |
1 | kflxid | INTEGER | 11 | 是 | 客房类型编号 |
2 | lx | VARCHAR | 40 | 否 | 类型 |
(6)客房信息表如表5.6所示:
表5.6客房信息表
序号 | 字段名称 | 数据类型 | 长度 | 主键 | 描述 |
1 | kfid | INTEGER | 11 | 是 | 客房编号 |
2 | fjh | VARCHAR | 40 | 否 | 房间号 |
3 | lx | VARCHAR | 40 | 否 | 类型 |
4 | lc | VARCHAR | 40 | 否 | 楼层 |
5 | tp | VARCHAR | 40 | 否 | 图片 |
6 | js | VARCHAR | 40 | 否 | 介绍 |
7 | jg | VARCHAR | 40 | 否 | 价格 |
8 | rzrs | VARCHAR | 40 | 否 | 入住人数 |
9 | fjdh | VARCHAR | 40 | 否 | 分机电话 |
10 | fjzt | VARCHAR | 40 | 否 | 房间状态 |
控制类
@Resource gonggaoDao gonggaodao;@RequestMapping(value="/addPage")public String addPage(gonggao gonggao,HttpServletRequest request){Map<String,Object> map= new HashMap<String,Object>();System.out.println("addPageok");return "gonggao/gonggaoadd";}@RequestMapping(value="/add")public String add(gonggao gonggao,HttpServletRequest request){Map<String,Object> map= new HashMap<String,Object>();//String name=(String)request.getParameter("name");map.put("ggid", gonggao.getGgid());//公告编号map.put("bt", gonggao.getBt());//标题map.put("nr", gonggao.getNr());//内容map.put("fbsj", gonggao.getFbsj());//发布时间gonggaodao.save(map);request.setAttribute("msg", "<script>alert('添加成功');</script>");System.out.println("addok");return "gonggao/gonggaoadd";}/**删除 * */@RequestMapping(value="/del")public String del(Integer id,HttpServletRequest request,Map<String,Object> map){// Map<String,Object> map= new HashMap<String,Object>();String a=(String)request.getParameter("keyid");id=Integer.parseInt(a);request.setAttribute("msg", "<script>alert('删除成功');</script>");gonggaodao.del(id);return selectall(null,map,request);}/*** 修改gonggao信息*/@RequestMapping(value="/update")public String update(gonggao gonggao,HttpServletRequest request,Map<String,Object> map1){Map<String,Object> map= new HashMap<String,Object>();map.put("ggid", gonggao.getGgid());//公告编号map.put("bt", gonggao.getBt());//标题map.put("nr", gonggao.getNr());//内容map.put("fbsj", gonggao.getFbsj());//发布时间request.setAttribute("msg", "<script>alert('修改成功');</script>");gonggaodao.update(map);return selectall(null,map1,request);}/*** 查询gonggao信息*/@RequestMapping(value="/modify")public String modify(Integer id,Map<String,Object> map,HttpServletRequest request){String keyid=(String)request.getParameter("keyid");List<Map<String,Object>> list= new ArrayList<Map<String,Object>>();list=gonggaodao.select(Integer.parseInt(keyid));request.setAttribute("ggid", list.get(0).get("ggid"));//公告编号request.setAttribute("bt", list.get(0).get("bt"));//标题request.setAttribute("nr", list.get(0).get("nr"));//内容request.setAttribute("fbsj", list.get(0).get("fbsj"));//发布时间return "gonggao/gonggaomodify";}@RequestMapping(value="/detail")public String detail(Integer id,Map<String,Object> map,HttpServletRequest request){String keyid=(String)request.getParameter("keyid");List<Map<String,Object>> list= new ArrayList<Map<String,Object>>();list=gonggaodao.select(Integer.parseInt(keyid));request.setAttribute("ggid", list.get(0).get("ggid"));//公告编号request.setAttribute("bt", list.get(0).get("bt"));//标题request.setAttribute("nr", list.get(0).get("nr"));//内容request.setAttribute("fbsj", list.get(0).get("fbsj"));//发布时间return "gonggao/gonggaodetail";}
三、注意事项
1、管理员账号:admin密码:admin 数据库配置文件DBO.java
2、开发环境为eclipse开发,数据库为mysql,使用java语言开发。
3、数据库文件名是jspssmkefang.sql 系统名称ssmkefang
4、地址:http://127.0.0.1:8080/ssmkecheng/login.jsp
四系统实现
相关文章:

SSM宾馆客房管理系统开发mysql数据库web结构java编程计算机网页源码eclipse项目
一、源码特点 SSM 宾馆客房管理系统是一套完善的信息系统,结合springboot框架和bootstrap完成本系统,对理解JSP java编程开发语言有帮助系统采用SSM框架(MVC模式开发),系统具有完整的源代 码和数据库,系统…...

永远在路上
今年的1024是自己过的第八个程序员节,虽然没有放假,但是公司给每一个程序员都发了一个水果拼盘的福利,礼轻情意重吧!毕竟有许多公司都欠薪的情况下,我们公司不仅按时发薪资,而且还有固定福利和节日福利&…...

JS递归函数详解
递归函数是一种在函数内部调用自身的编程技巧。通过不断地将问题分解为更小的子问题,递归函数可以处理复杂的任务,并提供简洁和可读性高的代码实现。 基本原理: 1.递归函数由两个主要部分组成:基准条件(base case&…...

JS问题:如何实现文本一键复制和长按复制功能?
前端功能问题系列文章,点击上方合集↑ 序言 大家好,我是大澈! 本文约2000字,整篇阅读大约需要4分钟。 本文主要内容分三部分,第一部分是需求分析,第二部分是实现步骤,第三部分是问题详解。 …...

react实现步进器
创建一个步进器组件,包含当前步骤(currentStep)的状态以及前进和后退的操作: import React, { useState } from react;function Stepper() {const [currentStep, setCurrentStep] useState(1);const handleNext () > {setCu…...

【jenkins】centos7在线安装jenkins
一、系统要求 最低推荐配置 256MB可用内存 1GB可用磁盘空间(作为一个Docker容器运行jenkins的话推荐10GB) 软件配置 Java 8—无论是Java运行时环境(JRE)还是Java开发工具包(JDK)都可以 二、安装jenkins 准备一台安装有ce…...

Hive常用DDL操作
本专栏案例数据集链接: https://download.csdn.net/download/shangjg03/88478038 1. Database 1.1 查看数据库列表 show databases; 1.2 使用数据库 USE database_name;...

关于css中设置变量用于全局Css或者Js中使用
一、配置变量css文件 src/styles/variables.scss // 设置色值变量// 1、继承body中设置的样式内嵌style"--baseColor:#0075FF;" // 一般常用于Saas系统,如qiankun框架主应用决定子应用的样式 $primary: var(--baseColor, #0075FF); // 主色调࿰…...

Elasticsearch(十五)搜索---搜索匹配功能⑥--基于地理位置查询
一、前言 随着互联网的热门,越来越多的传统行业将全部或者部分业务转移到互联网上,其中不乏一些和地理位置强相关的行业。基于地理位置的搜索功能,大大提升了人们的生活和工作效率。例如,外出旅行时,只需要用手机打开…...

为什么axios会有params和data两个参数
不知道大家有没有过这种感觉,突然一个问题百思不得其解,然后突然有一天就明白了。然后就感觉这个问题原来这么简单,本来想记录下来,但是又感觉这么简单的问题记录下来没啥意义。但是回过头来想一想,这个问题之前其实困…...

Vite+Vue3项目全局引入scss文件
前言 Sass 是世界上最成熟、最稳定、最强大的专业级CSS扩展语言!在日常项目开发过程中使用非常广泛,今天主要讲一下 ViteVue3 项目中该如何全局引入 scss 文件,引入混合 mixin 文件的不同配置。捎带说一下 Vue2 中的引入方式做一下简单的对比…...

android10.0(Q) MTK 6765 user版本打开root权限
前言 相比较 Android8.1、9.0 而言,Android10.0 版本 的 root变得相当麻烦,10.0 中引入了动态分区机制,同样的要想完全 adb root,需要 fastboot 解锁,然后关闭 verity 才能 adb remount 成功。我尝试和之前一样修改 f…...

软考 系统架构设计师系列知识点之设计模式(9)
接前一篇文章:软考 系统架构设计师系列知识点之设计模式(8) 所属章节: 老版(第一版)教材 第7章. 设计模式 第2节. 设计模式实例 相关试题 7. 一组对象以定义良好但是复杂的方式进行通信,产生…...

LeetCode二分查找
搜索插入位置 description 给定一个排序数组和一个目标值,在数组中找到目标值,并返回其索引。如果目标值不存在于数组中,返回它将会被按顺序插入的位置。 请必须使用时间复杂度为 O(log n) 的算法。 示例 1: 输入: nums [1,3,5,6], tar…...

米软科技客户单病种上报量云南省第一
近日米软获悉,在云南省统计的单病种上报情况中,截止2021年11月15日,上线单病种系统不足半年的红河州第一人民医院(云南省滇南中心医院)以占全省上报总数5%的22950例,遥遥领先于同省各家二三级医院。 全省上…...

SpringCore完整学习教程5,入门级别
本章从第6章开始 6. JSON Spring Boot提供了三个JSON映射库的集成: Gson Jackson JSON-B Jackson是首选的和默认的库。 6.1. Jackson 为Jackson提供了自动配置,Jackson是spring-boot-starter-json的一部分。当Jackson在类路径上时,将自动配置Obj…...

1024 云上见 · 上云挑战(ChatGPT搭建)
【玩转1024】使用函数计算X通义千问搭建AI助手,参与1024小说创作大赛 【使用函数计算X通义千问搭建AI助手,参与小说创作大赛】:本活动基于函数计算X 通义千问快速部署 AI 个人助手应用,用户可以根据需要选择不同角色的AI助手开启…...

Linux内核代码中常用的数据结构
Linux内核代码中广泛使用了数据结构和算法,其中最常用的两个是链表和红黑树。 链表 Linux内核代码大量使用了链表这种数据结构。链表是在解决数组不能动态扩展这个缺陷而产生的一种数据结构。链表所包含的元素可以动态创建并插入和删除。 链表的每个元素都是离散…...

自动驾驶,从“宠儿”走进“淘汰赛”
从“一步到位”到场景、技术降维。从拼落地路径,到拼雷达、算力,再到如今的性价比之争,自动驾驶似乎变得愈发“接地气”。 作者|斗斗 编辑|皮爷 出品|产业家 比起去年,黄文欢和张放今年显得更加忙碌。 “自动驾驶赛道&…...

Tensorflow2 中模型训练标签顺序和预测结果标签顺序不一致问题解决办法
本篇文章将详细介绍Tensorflow2.x中模型训练标签顺序和预测结果标签顺序不一致问题,这个问题如果考虑不周,或者标签顺序没有控制好的情况下会出现预测结果精度极其不准确的情况。 训练数据集的结构:数据集有超过10的类别数,这里包…...

uniapp 在 Android Studio 模拟器中运行项目
在开发App时,无论是使用 Flutter 还是 React native,还是使用uni-app 开发跨端App时,总是需要运行调试。一般调试分为两种。 第一:真机调试 第二:模拟器调试 真机调试的好处是可以看到更好的效果,缺点就是…...

淘宝API接口获取商品信息,订单管理,库存管理,数据分析
在淘宝开放平台中,每个API接口都有相应的文档说明和授权机制,以确保数据的安全性和可靠性。开发者可以根据自己的需求选择相应的API接口,并根据文档说明进行调用和使用。 淘宝开放平台API接口是一套REST方式的开放应用程序编程接口&…...

Azure - 机器学习企业级服务概述与介绍
目录 一、什么是 Azure 机器学习?大规模生成业务关键型机器学习模型 二、Azure 机器学习适合哪些人群?三、Azure 机器学习的价值点加快价值实现速度协作并简化 MLOps信心十足地开发负责任地设计 四、端到端机器学习生命周期的支持准备数据生成和训练模型…...

Linux docker 安装 部署
docker 安装 linux系统离线安装docker 如何使用docker部署c/c程序 常用命令 给予 docker 访问 gui 的权限 在 /etc/profile 末尾添加 if [ "$DISPLAY" ! "" ] thenxhost fi在执行 更新 source /etc/profiledocker下载镜像 docker search gcc #搜索d…...

selenium+python web自动化测试框架项目实战实例教程
自动化测试对程序的回归测试更方便。 由于回归测试的动作和用例是完全设计好的,测试期望的结果也是完全可以预料的,将回归测试自动运行... 可以运行更加繁琐的测试 自动化测试的一个明显好处就是可以在很短的时间内运行更多的测试。学习自动化测试最终目的是应用到实际项目中&…...

软考高级系统架构设计师系列之:案例分析典型试题七
软考高级系统架构设计师系列之:案例分析典型试题七 一、架构评估1.案例试题2.参考答案一、架构评估 某网上购物电子商务公司拟升级正在使用的在线交易系统,以提高用户网上购物在线支付环节的效率和安全性。在系统的需求分析与架构设计阶段,公司提出的需求和关键质量属性场景…...

【算法|动态规划No30】leetcode5. 最长回文子串
个人主页:兜里有颗棉花糖 欢迎 点赞👍 收藏✨ 留言✉ 加关注💓本文由 兜里有颗棉花糖 原创 收录于专栏【手撕算法系列专栏】【LeetCode】 🍔本专栏旨在提高自己算法能力的同时,记录一下自己的学习过程,希望…...

计算机视觉 激光雷达结合无监督学习进行物体检测的工作原理
一、简述 激光雷达是目前正在改变世界的传感器。它集成在自动驾驶汽车、自主无人机、机器人、卫星、火箭等中。该传感器使用激光束了解世界,并测量激光击中目标返回所需的时间,输出是点云信息,利用这些信息,我们可以从3D点云中查找障碍物。 从自动驾驶汽车的角度看激光雷达…...

kubectl资源管理命令-陈述式
目录 一、陈述式对象管理 1、基本概念 2、基础命令使用 3、基本信息查看(kubectl get) 4、增删等操作 5、登录pod中的容器 6、扩容缩容pod控制器的pod 7、删除副本控制器 二、创建项目实例 1、创建 kubectl create命令 2、发布 kubectl …...

Android-宝宝相册(第四次作业)
第四次作业-宝宝相册 题目 用Listview建立宝宝相册,相册内容及图片可自行设定,也可在资料文件中获取。给出模拟器仿真界面及代码截图。 (参考例4-8) 创建工程项目 创建名为baby的项目工程,最后的工程目录结构如下图所…...