30基于java的酒店管理系统设计与实现

本章节给给大家介绍一个简单的基于java的酒店管理系统设计与实现。

系统概要

以往的酒店管理系统相关信息管理,都是工作人员手工统计。这种方式不但时效性低,而且需要查找和变更的时候很不方便。随着科学的进步,技术的成熟,计算机信息化也日新月异的发展,如今计算机已经进入了人类社会发展的各个领域,并且发挥着十分重要的作用。本系统充分利用网络的便捷,在工作效率上,得到极大地提高,延伸至服务水平也会有好的收获,有了网络,酒店管理系统的各方面的管理更加科学和系统,更加规范和简便。为用户提供酒店管理系统,方便管理员及时高效的管理所有的信息,给用户提供简单方便快捷的方式,并且数据准确,用户可以足不出户就可以对酒店管理系统相关信息进行查询等操作,而且还能节省用户查询信息的等待时间,所以开发酒店管理系统给工作人员带来很大的方便,可以大大的提高系统人员工作效率。

主要实现的功能有:

住客管理
房间管理
会员管理
系统设置
数据导出
等等

系统使用的架构

采用B/S的架构实现,整体遵循MVC的设计思想。

> 后端:java,spring,springmvc,mybatis,tomcat等
> 数据库:mysql
> 开发工具:idea或者eclipse
> 前端:jsp,html,css,javascript,jquery,layui等
> 更多详细内容可查看:http://projecthelp.top

项目实现

  • HomeController实现
@Controller
@RequestMapping("/home")

public class HomeController {
    @Autowired
    HomeServiceImpl homeService;

    // 定义文件保存的本地路径,用户需要自己修改这个文件上传的路径
    private String uploadPath = "E:\\ebm\\Hotel_Manage";

    @RequestMapping("/add")
    public String add(Home home, Model model) throws IOException{

        String sqlPath = null;
        //定义文件保存的本地路径
        String localPath=uploadPath;
        //定义 文件名
        String filename=null;
        if(!home.getFile().isEmpty()){
            //生成uuid作为文件名称
            String uuid = UUID.randomUUID().toString().replaceAll("-","");
            //获得文件类型(可以判断如果不是图片,禁止上传)
            String contentType=home.getFile().getContentType();
            //获得文件后缀名
            String suffixName=contentType.substring(contentType.indexOf("/")+1);
            //得到 文件名
            filename=uuid+"."+suffixName;
            System.out.println(filename);
            //文件保存路径
            home.getFile().transferTo(new File(localPath+filename));
        }
        //把图片的相对路径保存至数据库
        sqlPath = "/upload/"+filename;
        System.out.println(sqlPath);
        home.setImg(sqlPath);

        homeService.addHome(home);
        model.addAttribute("home",home);
        return "home_show";
    }

    @RequestMapping("/delete")
    public String delete(Integer  id){
        homeService.deleteHomeById(id);
        return "redirect:/home/list";
    }

    @RequestMapping("/list")
    public ModelAndView list(){
        ModelAndView mv = new ModelAndView();
        List<Home> homeList=homeService.queryAllHome();
        mv.addObject("list",homeList);
        mv.setViewName("home_list");
        return mv;
    }

    @RequestMapping("/update1")
    public ModelAndView update1(Integer  id){
        ModelAndView mv = new ModelAndView();
        Home home = homeService.queryHomeById(id);
        mv.addObject("h",home);
        mv.setViewName("home_update");
        return mv;
    }

    @RequestMapping("/update2")
    public String update2(Home h)throws IOException{
        String sqlPath = null;
        //定义文件保存的本地路径
        String localPath=uploadPath;
        //定义 文件名
        String filename=null;
        if(!h.getFile().isEmpty()){
            //生成uuid作为文件名称
            String uuid = UUID.randomUUID().toString().replaceAll("-","");
            //获得文件类型(可以判断如果不是图片,禁止上传)
            String contentType=h.getFile().getContentType();
            //获得文件后缀名
            String suffixName=contentType.substring(contentType.indexOf("/")+1);
            //得到 文件名
            filename=uuid+"."+suffixName;
            System.out.println(filename);
            //文件保存路径
            h.getFile().transferTo(new File(localPath+filename));
        }
        //把图片的相对路径保存至数据库
        sqlPath = "/upload/"+filename;
        System.out.println(sqlPath);
        h.setImg(sqlPath);

        homeService.updateHomeById(h);
        return ("redirect:/home/list");
    }

    @RequestMapping("/show")
    public ModelAndView show(Integer  id){
        ModelAndView mv = new ModelAndView();
        Home home=homeService.queryHomeById(id);
        mv.addObject("home",home);
        mv.setViewName("home_show");
        return mv;
    }

    @RequestMapping("/find")
    public ModelAndView find(int findByNum ){
        ModelAndView mv = new ModelAndView();
        Home home = homeService.queryHomeByNum(findByNum);
        List<Home> homeList=new ArrayList<Home>();
        homeList.add(home);
        if (home==null){
            homeList=homeService.queryAllHome();
            mv.addObject("error","未查询出结果");
        }
        mv.addObject("list",homeList);
        mv.setViewName("home_list");
        return mv;
    }
}
  • 登录页面实现
<html lang="zh">

<head>
    <meta charset="utf-8">
    <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1">
    <title>后台管理登陆</title>
    <link rel="stylesheet" href="${pageContext.request.contextPath}/static/common/layui/css/layui.css">
    <link rel="stylesheet" href="${pageContext.request.contextPath}/static/admin/css/login.css">
    <script src="${pageContext.request.contextPath}/static/common/layui/layui.js"></script>
</head>

<body id="login">

<div class="login">
    <h2> <strong><font face="仿宋" >xxx酒店后台登陆</font></strong></h2>

    <form class="layui-form" method="post" target="_blank" action="${pageContext.request.contextPath}/admin/login" >

        <div class="layui-form-item">
            <input type="text" name="username"  id="username" placeholder="用户名" class="layui-input" required>
            <i class="layui-icon input-icon">&#xe66f;</i>
        </div>

        <div class="layui-form-item">
            <input type="password" name="password" id="password" placeholder="密码"  class="layui-input" required>
            <i class="layui-icon input-icon">&#xe673;</i>
        </div>

        <div class="layui-form-item">
            <button style="width: 100%" class="layui-btn layui-btn-radius layui-btn-normal" lay-submit lay-filter="login" >立即登录</button>
        </div>
        <br>
        <div>
            <p style="font-family: 仿宋;color: #6f6e6e">ps:如忘记密码,请尽快联系管理人员更正密码</p>
        </div>
    </form>

</div>
</body>
</html>

部分功能展示

登录页面展示

在这里插入图片描述

管理页面首页

在这里插入图片描述

住客管理

添加住客

在这里插入图片描述

住客列表统计

在客房类型管理页面可以查看客房类型等信息,并可根据需要进行删除,修改等操作
在这里插入图片描述

房间管理

在这里插入图片描述

会员管理

新增会员

在这里插入图片描述

会员列表

在这里插入图片描述

系统设置

在这里插入图片描述

数据导出

在这里插入图片描述
在这里插入图片描述

以上是大部分功能展示,所有的功能都是正常运行,没有bug,导入到idea或者eclipse即可运行,没有套路,具体细节大家下载后自己慢慢研究,欢迎大家一起交流学习

原文链接:https://www.cnblogs.com/projecthelp/p/17380923.html

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:30基于java的酒店管理系统设计与实现 - Python技术站

(0)
上一篇 2023年5月8日
下一篇 2023年5月8日

相关文章

  • SpringBoot集成MybatisPlus报错的解决方案

    接下来我将为您提供关于“SpringBoot集成MybatisPlus报错的解决方案”的完整攻略。 问题描述 在SpringBoot项目中集成MybatisPlus时,可能会遇到以下报错信息: Caused by: org.springframework.beans.factory.BeanCreationException: Error creating …

    Java 2023年5月19日
    00
  • Java使用JDBC连接数据库的详细步骤

    下面就为你详细讲解一下“Java使用JDBC连接数据库的详细步骤”的完整攻略。 前置要求 在使用JDBC连接数据库前,我们需要有以下前置要求: 下载相应数据库的JDBC驱动程序 数据库的连接信息,比如:数据库名称,用户名和密码等 步骤一:导入JDBC驱动程序 先导入所下载的JDBC驱动程序,可以使用以下代码: try { // 加载MySQL的JDBC驱动 …

    Java 2023年5月19日
    00
  • 使用Java构造和解析Json数据的两种方法(详解二)

    使用Java构造和解析Json数据的两种方法主要有两种实现方式:使用JSONObject和JSONArray类以及使用Gson库。下面分别进行详细讲解: 1.使用JSONObject和JSONArray类 1.1 构造Json数据 通过JSONObject和JSONArray类可以直接构造出相应的Json数据。 1.1.1 构造JSONObject JSON…

    Java 2023年5月26日
    00
  • Java十分钟精通异常处理机制

    Java 十分钟精通异常处理机制 异常是一种程序中发生错误的情况,Java 提供了异常处理机制,能够更加优雅地处理这种错误。本文将介绍 Java 异常处理机制的基础知识和常用语法,让你在十分钟内精通异常处理机制。 异常的分类 Java 中的异常可以分为两种:受检异常(Checked Exception)和非受检异常(Unchecked Exception)。…

    Java 2023年5月27日
    00
  • Springboot整合Freemarker的实现详细过程

    下面我将详细讲解Spring Boot整合Freemarker的实现过程。 一、添加Freemarker依赖 首先,在项目的pom.xml文件中添加Freemarker的依赖: <dependency> <groupId>org.springframework.boot</groupId> <artifactId&g…

    Java 2023年5月19日
    00
  • Java Hibernate使用方法及整合查询

    下面我将详细讲解”Java Hibernate使用方法及整合查询”的完整攻略。 什么是Hibernate Hibernate是Java语言中一个开放源代码的对象关系映射框架,它对JDBC进行了封装,使Java程序员可以使用面向对象的思维来操作数据库。Hibernate可以自动将Java中的对象和关系数据库之间进行映射,使数据库的表结构和Java中的类结构相同…

    Java 2023年5月19日
    00
  • 如何进行Java并发编程?

    下面是关于如何进行Java并发编程的完整使用攻略。 1. 理解Java的并发问题 在开始了解如何进行Java并发编程之前,首先我们需要对Java的并发问题进行了解。Java并发问题主要体现在多线程协同执行的过程中,比如线程间的互斥、同步、等待-通知机制等。 2. Java中的并发编程工具 在Java中处理并发问题常用的工具包括线程、锁、Semaphore等。…

    Java 2023年5月11日
    00
  • 30分钟入门Java8之lambda表达式学习

    下面是关于“30分钟入门Java8之lambda表达式学习”的完整攻略: 什么是lambda表达式 Lambda表达式是Java8中引入的一种新的语法,它可以替代匿名内部类的写法,在某些场景下可以让代码更简洁、更易懂,并且可以提升代码的可读性和可维护性。 lambda表达式的语法 Lambda表达式的基本语法如下: (parameters) -> ex…

    Java 2023年5月26日
    00
合作推广
合作推广
分享本页
返回顶部