Java MVC快速搭建酒店管理系统

本文介绍了如何使用SpringBoot、JPA、Thymeleaf、MySQL和Bootstrap搭建一个酒店管理系统的步骤,包括创建项目、定义模型、编写仓库接口、服务层和控制器代码,以及展示了HTML模板的部分内容。通过这个教程,读者可以学习到如何结合这些技术开发Web应用程序。
摘要由CSDN通过智能技术生成

前言

    小白在入门Java后,已经知道了Java的一些基本类型和语法,今天来做一个MVC快速搭建酒店管理系统。需求如下:

在这里插入图片描述

一、技术介绍

1、Spring Boot:

	Spring Boot是一种基于Spring框架的开发工具,它通过提供自动化配置和约定优于配置的原则,简化了Java应用程序的开发过程。Spring Boot能够极大地提高开发效率,同时还提供了丰富的插件和功能,例如内嵌服务器、自动化依赖管理和配置,以及集成了许多常用的开发组件。

2、Java Persistence API

	JPA是Java平台上的一种ORM(对象关系映射)规范,它提供了一种将Java对象映射到关系数据库中的方式。与传统的SQL编程相比,使用JPA可以更加方便地操作数据库,提供了对象级别的查询和持久化操作,减少了开发者的数据库访问困扰。

3、Thymeleaf

	Thymeleaf是一种用于构建服务器端Java模板的现代化服务器端Java模板引擎。它允许开发人员将动态数据呈现到HTML页面,并支持强大的表达式语言和模板布局。Thymeleaf的语法简单易用,使得前端开发变得更加容易。

4、MySQL

	MySQL是一个开源的关系型数据库管理系统,被广泛用于Web应用程序开发。它具有卓越的性能、可靠性和可扩展性,提供了丰富的查询语言和存储过程支持。通过与Spring Boot和JPA的结合,我们可以轻松地进行数据库操作,实现数据的持久化和查询。

5、Bootstrap

	Bootstrap是一个流行的前端开发框架,它提供了丰富的CSS和JavaScript组件,可以帮助我们快速搭建现代化的用户界面。通过集成Bootstrap,我们可以对Web应用程序的外观和用户交互进行美化和增强,使得应用在不同设备上的显示效果更加统一和友好。

二、过程

1、新建项目

打开idea,点击新建,然后选择Spring lnitializr,修改项目名字(默认的是demo,demo1…以此类推),修改储存路径等。JDK跟Java选择相同版本的17或者20,建议都选17。
在这里插入图片描述
选择依赖,选Lombok、Spring Web、Thymeleaf、Spring Data JPA、MySQL Driver这五个依赖。
在这里插入图片描述
然后项目创建成功。如图:
在这里插入图片描述

2、编写model类,博主这里写的是酒店的所以就创建了一个Room(房间)类。代码如下:

import jakarta.persistence.*;
import lombok.Data;

@Data
@Entity
@Table(name = "room")
public class Room {
   
    @Id
    @GeneratedValue(strategy = GenerationType.IDENTITY)
    private long id;

    //酒店名称
    @Column(name="hotel")
    private String hotel;

    //入住客户
    @Column(name="Customers")
    private String customers;

    //客户身份证
    @Column(name="identity_Card")
    private String identityCard;

    //房间号
    @Column(name="rooms")
    private String rooms;

    //房型
    @Column(name="room_Type")
    private String roomType;

    //价格
    @Column(name="price")
    private double price;
}

在这里插入图片描述

3、编写repository类。代码如下:

import com.example.hotelsystem.model.Room;
import org.springframework.data.jpa.repository.JpaRepository;
import org.springframework.data.jpa.repository.Query;
import org.springframework.data.repository.query.Param;
import org.springframework.stereotype.Repository;

import java.util.List;

@Repository
public interface RoomRepository extends JpaRepository<Room, Long> {
   

    //通过酒店名跟房间号来查找房间是否入住
    @Query("select h from Room h where h.rooms like %:name%")
    List<Room> findByRoom(@Param("name") String name);
}

在这里插入图片描述

4、编写service类,代码如下:

import com.example.hotelsystem.model.Room;
import org.springframework.data.domain.Page;

import java.util.List;

public interface RoomService {
   
    List<Room> getAllRoom();
    void saveRoom(Room room);

    List<Room> findByRoomContaining(String name);

    Room getRoomByid(Long id);
    void deleteRoomByid(Long id);

    Page<Room> findPaginated(int pageNo, int pageSize, String sortField, String sortDirection);
}

在这里插入图片描述

import com.example.hotelsystem.model.Room;
import com.example.hotelsystem.repository.RoomRepository;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.domain.Page;
import org.springframework.data.domain.PageRequest;
import org.springframework.data.domain.Pageable;
import org.springframework.data.domain.Sort;
import org
酒店管理系统使用说明书 主要功能 本系统中包含如下6大功能模块: q 前台服务:该模块主要包括开台点菜、维护菜品、签单、结账等功能,其中维护菜品功能包括添加和取消菜品,能够取消菜品的前提条件是尚未签单,即处于开单状态,结账时则要求所有商品都要签单,否则不允许结账。 q 后台管理:该模块主要包括台号管理、菜系管理和菜品管理功能,其中菜系用来对菜品进行分类。 q 销售统计:该模块用来分段统计营业额,可以按日、月和年进行统计,其中日统计是按消费单和销售的商品统计销售额,月统计是按日期和每日的销售额统计销售额,年统计是按日期和月份统计销售额。 q 系统安全:该模块主要包括交接班、锁定系统和修改密码功能,其中交接班功能在操作员换岗时使用,锁定系统在操作员临时离开时使用。 q 人员管理:该模块主要包括档案管理、管理员管理和操作权限管理功能,其中管理员管理功能用来管理系统的操作员,权限管理功能用来管理系统操作员具有的操作权限。 q 初始化系统:该功能用来对系统进行初始化,初始化后系统数据将全部被删除。 操作注意事项 用户在使用《酒店管理系统》之前,应注意以下事项: (1)管理员用户名和密码为:mr、mrsoft。 (2)当鼠标经过主界面右下角时,会弹出菜单,在这里可以对本系统的信息进行管理。 业务流程 要想运行本系统,请按照以下流程操作: (1)在“人员管理”中添加操作员及其档案信息。 (2)在“系统维护”中添加台号、菜系及菜品信息。 (3)在“台号”下拉列表中选择台号、在商品文本框中输入商品助记码或编号及商品数量,然后单击“开台”按钮。可添加多个商品。 (4)顾完单完菜后,单击“签单”按钮,表示确认该订单,此时可以执行结账操作,否则不可进行结账。 如果操作临时离开,可单击“锁定系统”按钮,输入登录密码可解锁。 (5)在“销售统计”中可对日销售、月销售及年销售额进行统计。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值