JavaWeb:实现酒店管理系统(课程设计完整版)

前言

该系统是一个基于JavaWeb的酒店管理系统。
前端用到了 html+css+js+jQuery;
后端Http协议,Servlet基础,JSP技术,Mysql等
这个项目的代码相对简单、不太复杂,适合在校的学生参考。
文章末尾附项目源代码和图片素材。

一、功能概述

先简单的介绍一个这个项目的功能。
项目分为两个大部分:普通用户和管理员。
普通用户:注册和登陆账号,查看和修改自己的个人信息、查看自己的预约记录,查看其他客房情况并且可以预约。
管理员:查看所有客房信息,可以对客房进行增加、修改、下架、查询功能,也可以代替用户预约客房,取消预约等功能。
JavaWeb:实现酒店管理系统(课程设计完整版)_第1张图片

二、代码分析

JavaWeb:实现酒店管理系统(课程设计完整版)_第2张图片

  1. action层:管理业务调度和管理跳转的,即处理逻辑问题
  2. bean层:封装数据,设置数据的属性和行为
  3. biz层:接受数据库的处理结果并且返回给前端
  4. dao层:对数据库进行增删改查
  5. util层: 是一个多功能,基于工具的包。比如字符串处理,JDBC连接等

三、项目展示

1.选择登录入口页面

JavaWeb:实现酒店管理系统(课程设计完整版)_第3张图片

2.登录页面

JavaWeb:实现酒店管理系统(课程设计完整版)_第4张图片

3.管理员客房管理页面

JavaWeb:实现酒店管理系统(课程设计完整版)_第5张图片

4.添加客房信息

5.修改客房信息

6.普通用户个人预约信息

JavaWeb:实现酒店管理系统(课程设计完整版)_第6张图片

7.普通用户个人信息查看和修改

四、部分代码展示

1.登录和注册

//1.判读用户请求的类型为login
        String method = req.getParameter("type");
        switch (method) {
            case "login":
                // 从 login.html中 拿 账号,密码等数据
                String name = req.getParameter("name");
                String pwd = req.getParameter("pwd");
                //  调用UserBiz的getUser方法,根据 网页中 输入的账号密码,获取相应对象
                User user = userBiz.getUser(name,pwd);
                 //判断 获取到的对象是否为 null;
                 if (user == null) {
                     System.out.println(user);
                     out.println("");
                 }else {
                     session.setAttribute("user",user);//user-->Object
                     out.println("");
                 }
                 break;
            case "register" :
                // 从 login.html中 拿 账号,密码等数据
                String name1 = req.getParameter("name");
                String pwd1 = req.getParameter("pwd");
                UserDao userDao = new UserDao();
                try {
                    userDao.setUser(name1,pwd1);
                } catch (SQLException throwables) {
                    throwables.printStackTrace();
                }
                out.println("");
                break;


2.个人信息查看和保存

 // 获取 用户名
        User user = (User) req.getSession(false).getAttribute("user");
        String name = user.getName();
        UserDao userDao = new UserDao();
        try {
            req.setAttribute("name",  userDao.getMyinformation(name).getName());
        } catch (SQLException throwables) {
            throwables.printStackTrace();
        }
        try {
            req.setAttribute("pwd",  userDao.getMyinformation(name).getPwd());
        } catch (SQLException throwables) {
            throwables.printStackTrace();
        }
        try {
            req.setAttribute("id",  userDao.getMyinformation(name).getId());
        } catch (SQLException throwables) {
            throwables.printStackTrace();
        }
        try {
            req.setAttribute("age",  userDao.getMyinformation(name).getAge());
        } catch (SQLException throwables) {
            throwables.printStackTrace();
        }
        try {
            req.setAttribute("sex",  userDao.getMyinformation(name).getSex());
        } catch (SQLException throwables) {
            throwables.printStackTrace();
        }
        req.getRequestDispatcher("myinformation.jsp").forward(req, resp);

3.客房预定

 CommodityDao commodityDao = new CommodityDao();
        String temp = req.getParameter("booking");
        int temp1 = 0;
        if (temp!=null) {
            temp1=Integer.parseInt(temp);
        }
        String temo=req.getParameter("idd");  //  获取到的 房间 id
        String temp2 = req.getParameter("price");  // 输入的内容
        try {
            commodityDao.modstateCommodity(temo,temp2);
        } catch (SQLException throwables) {
            throwables.printStackTrace();
        }
        req.getRequestDispatcher("/index").forward(req, resp);

4. 数据库连接


 
    
        
        10
        
        30
        
        100
        
        10
        
        
        200
     
    
    
	    
        com.mysql.jdbc.Driver
		
        jdbc:mysql://127.0.0.1:3306/mydemo?useUnicode=true&characterEncoding=utf8
		
        root
		
        123456
		
        10
		
        30
		
        100
		
        10
		
        200
    

五、项目总结

该web写的相对简单一点,写的大概思路就是:先写前端页面,然后将信息传递给后端,后端在对数据进行处理,处理之后再将数据转发给前端。如此反复即可。如果有问题了,可以在评论区指出。

六、源代码展示

链接:https://pan.baidu.com/s/1DCRWKfFXQKLt61FKDfBpVg?pwd=ojbk
提取码:ojbk

你可能感兴趣的:(课程设计,servlet,java,web)