使用的技术栈:Spring+SpringMVC+mybatis+Mysql+layui+Maven

  • Maven 项目结构。项目配置项为:

  • 服务器:apache-tomcat-9.0.0.M26 (必须 9 以上)

  • 数据库:MySQL

  • 编辑器:IntelliJ IDEA

--Lay ui 的官网参考文档:Layui - 经典开源模块化前端 UI 组件库


核心代码实现:

package com.jiudian.controller.admin;import org.springframework.web.bind.annotation.RequestMapping;import javax.servlet.http.HttpSession;/*** 负责跳转后台管理页面:*/
@org.springframework.stereotype.Controller
/*** @author Lenovo*/
@RequestMapping("/admin")
public class SystemController {/***  跳转登陆页面:*/@RequestMapping("/login.html")public String login(){return "admin/login";}/*** 跳转到登陆成功页面(后台管理首页):*/@RequestMapping("/home.html")public String home(){return "admin/home";}/*** 退出登录,放到用户控制器因为有无刷新:*/@RequestMapping("/loginOut.html")public String loginOut(HttpSession session) {//清空session:session.invalidate();//重定向到登陆页面:return "redirect:/admin/login.html";}/***进入部门管理页面*/@RequestMapping("/toDeptManager.html")public String toDeptManager(){return "admin/dept/deptManager";}/*** 进入角色管理:*/@RequestMapping("/toRoleManager")public String toRoleManager(){return "admin/role/roleManager";}/***进入用户管理:* @return*/@RequestMapping("/toUserManager")public String toUserManager(){return "admin/user/userManager";}/*** 进入房型管理页面:* @return*/@RequestMapping("/toRoomManager")public String toRoomManager(){return "admin/room/roomManager";}/*** 进入楼层管理:* @return*/@RequestMapping("/toFloorManager")public String toFloorManager(){return "admin/floor/floorManager";}/*** 进入房间管理页面:* @return*/@RequestMapping("/toRoomsManager")public  String toRoomsManager() {return "admin/rooms/roomsManager";}
}

使用前端layui框架搭建后台登录页面:

<div id="container"><div></div><div class="admin-login-background"><div class="admin-header"><span>酒店管理系统 </span></div><form class="layui-form" action=""><div><i class="layui-icon layui-icon-username admin-icon"></i><input type="text" name="username" placeholder="请输入用户名" autocomplete="off" class="layui-input admin-input admin-input-username"></div><div></div><div><i class="layui-icon layui-icon-password admin-icon"></i><input type="password" name="password" placeholder="请输入密码" autocomplete="off" class="layui-input admin-input"></div><!--按钮加上lay-filter过滤器才可以绑定!!! --><button class="layui-btn admin-button" lay-submit="" lay-filter="login">登 陆</button></form></div>
</div>

实现效果如下:


登录成功主菜单页面的核心代码:

package com.jiudian.controller.admin;import com.alibaba.fastjson.JSON;
import com.jiudian.dao.SysMenuMapper;
import com.jiudian.entiy.SysMenu;
import com.jiudian.utils.MenuNode;
import com.jiudian.utils.TreeUtil;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;import javax.annotation.Resource;
import java.util.ArrayList;
import java.util.LinkedHashMap;
import java.util.List;
import java.util.Map;
import java.util.concurrent.LinkedTransferQueue;/*** @author Lenovo*/
//全部(返回JSON数据)无刷新:restConller=@Controller+++@ResponseBody:
//不用每个方法都加ResponseBody:@RestController
@RequestMapping("/admin/menu")
public class SysMenuController {/*** 注入SysMenuMapper*/@Resourceprivate SysMenuMapper sysMenuMapper;/*** 加载首页左侧菜单的导航* @return*/@RequestMapping("/loadSysMenuList")public String loadSysMenuList(){/*** 调用查询所有菜单列表的方法*/List<SysMenu> menuList = sysMenuMapper.findMenuList();//创建集合接收menuNode保存菜单逻辑关系:List<MenuNode> menuNodeList= new ArrayList<MenuNode>();//创建Map集合保存MenuInfo信息:Map<String,Object> menuInfo = new LinkedHashMap<String,Object>();//创建Map集合,保存HomeInfo信息(需要与模板保持一致):Map<String,Object> homeInfo = new LinkedHashMap<String,Object>();//创建Map集合,保存LogoInfo信息(需要与模板保持一致):Map<String,Object> logoInfo = new LinkedHashMap<String,Object>();/*** 循环遍历菜单列表,目的是创建菜单之间的层级关系(逻辑关系);*/for (SysMenu sys : menuList) {//创建节点对象:MenuNode menuNode = new MenuNode();//打开链接地址menuNode.setHref(sys.getHref());//菜单头标样式menuNode.setIcon(sys.getIcon());//菜单编号menuNode.setId(sys.getId());//所属的父级菜单menuNode.setPid(sys.getPid());//是否展开(0-否  1-是)menuNode.setSpread(sys.getSpread());//打开方式:是否展开menuNode.setTarget(sys.getTarget());//菜单名称menuNode.setTitle(sys.getTitle());//将对象添加到集合:menuNodeList.add(menuNode);}//保存HomeInfo信息:homeInfo.put("title","首页");//跳转到子菜单中:homeInfo.put("href","");//保存LoginInfo信息://logo标题:logoInfo.put("title","酒店管理系统");//包含图片:logoInfo.put("image","/statics/layui/images/logo1.png");//跳转到首页:logoInfo.put("href","/admin/home.html");//将菜单集合添加到MenuInfo集合中://pid就是父菜单:menuInfo.put("menuInfo", TreeUtil.toTree(menuNodeList,0));menuInfo.put("homeInfo",homeInfo);menuInfo.put("logoInfo",logoInfo);return JSON.toJSONString(menuInfo);}}

采用layui前端框架搭建后台页面核心代码:

<script>layui.use(['jquery', 'layer', 'miniAdmin','miniTongji'], function () {let $ = layui.jquery,layer = layui.layer,miniAdmin = layui.miniAdmin,miniTongji = layui.miniTongji;let options = {iniUrl: "${pageContext.request.contextPath}/admin/menu/loadSysMenuList",    // 初始化接口:已经定义过接口不再使用json文件了。clearUrl: "${pageContext.request.contextPath}/statics/layui/api/clear.json", // 缓存清理接口urlHashLocation: true,      // 是否打开hash定位bgColorDefault: false,      // 主题默认配置multiModule: true,          // 是否开启多模块menuChildOpen: false,       // 是否默认展开菜单loadingTime: 0,             // 初始化加载时间pageAnim: true,             // iframe窗口动画maxTabNum: 20,              // 最大的tab打开数量};miniAdmin.render(options);// 百度统计代码,只统计指定域名miniTongji.render({specific: true,domains: ['99php.cn','layuimini.99php.cn','layuimini-onepage.99php.cn',],});$('.login-out').on("click", function () {//在layui官网文档配置是否退出登录:layer.confirm('确定要退出系统?', {icon: 3, title:'提示'}, function(index){//do something//如果退出发送请求:location.href="/admin/loginOut.html"layer.close(index);});});});
</script>

页面实现效果:


总结:适合初学SSM的小伙伴们的一个上手项目实战,有助于对SSM框架更进一步的熟悉了解,后期可能推出基于Springboot实现JavaWeb酒店管理系统,有兴趣的可以了解一下,麻烦点赞关注一下,需要源码和数据库的私信up主。

SSM项目实战:酒店管理系统相关推荐

  1. [含论文+源码等]ssm实现的酒店管理系统[包运行成功]

    <ssm实现的酒店管理系统>该项目采用技术jsp.SpringMVC.Spring.Mybatis.echarts.easyui.h-ui.jquery.tomcat服务器.mysql数据 ...

  2. SSM框架之酒店管理系统十四(C端完善前台用户登录、计算日期之间的天数、房间预订)

    SSM框架之酒店管理系统十四(C端完善前台用户登录.计算日期之间的天数.房间预订) 当用户点击预定的时候,判断是否有登录的session 1.修改用户登录时保存的sessuin中的key 如果不修改的 ...

  3. SSM框架之酒店管理系统三(菜单数据库设计,菜单列表查询渲染)

    SSM框架之酒店管理系统三(菜单数据库设计,菜单列表查询渲染) 参考LAYUI MINI官网给出的数据库设计规范 Java示例(spring) · layuimini开发手册 (99php.cn) 数 ...

  4. SSM框架之酒店管理系统十一(房型管理,图片上传)

    SSM框架之酒店管理系统十一(房型管理,图片上传) 1.数据库完善 create table t_room_type (id int auto_increment comment '房间类型id'pr ...

  5. SSM项目-商城后台管理系统

    SSM项目-商城后台管理系统 开发说明 开发环境 项目界面演示 项目功能 具体的技术指标 开发过程 1.搭建SSM框架 1.1.建库建表 1.2.新建Maven工程 1.3.配置pom.xml 1.4 ...

  6. 基于SSM框架的酒店管理系统

    基于SSM框架的酒店管理系统 开发工具(eclipse/idea/vscode等): 数据库(sqlite/mysql/sqlserver等): 功能模块(请用文字描述,至少200字): 看每个等级模 ...

  7. Java项目实战---歌曲管理系统

    Java项目实战-歌曲管理系统 声明:本人仅整理了代码,方便大家进行调试优化,功能上还存在很多纰漏,欢迎大家评论区讨论 代码原地址放于文章末尾 一.实验目的: 掌握类的定义,JAVA应用程序的设计与实 ...

  8. SSM框架之酒店管理系统八(菜单管理)

    SSM框架之酒店管理系统八(菜单管理) 1.SystemController控制器跳转 /*** 去到员菜单理页面* @return*/ @RequestMapping("/toMenuMa ...

  9. Vue项目实战 —— 后台管理系统( pc端 ) 第三篇

    ​前期回顾    ​  Vue项目实战 -- 后台管理系统( pc端 ) 第二篇_0.活在风浪里的博客-CSDN博客前期回顾 Vue项目实战 -- 后台管理系统( pc端 ) 第一篇 _0.活在风浪里 ...

最新文章

  1. mysql5.5在windows7下编译的详细步骤_Windows7下编译MySQL5.5的详细步骤
  2. 电子称重管理计算机,称重管理系统
  3. MySQL / 多版本并发控制
  4. 数据预处理和特征工程
  5. Java中TreeMap和TreeSet的底层实现
  6. 平台(洛谷P1105题题解,Java语言描述)
  7. jpa调用mysql函数_Spring data jpa 调用存储过程处理返回参数及结果集(示例代码)
  8. android 练习之路 (一)
  9. python+opencv+PIL,在图片和视频中写入中文(汉字)
  10. 推荐最近使用的一个APP
  11. 汽车底盘线控与动力学域控制技术
  12. Java版实现一个简单的电话簿
  13. Koo叔说Shader-描边效果
  14. Python2020期末考试试题及答案
  15. 如何用PHP编写简单的api数据接口
  16. 机器学习(九)基于SVM的上证指数涨跌预测
  17. TADF材料的机制原理;TADF的机理;热活化延迟荧光如何产生?
  18. Linux系统之iftop的基本使用
  19. 艾宾浩斯记忆法和遗忘曲线
  20. Linux(Ubuntu)下C语言编译与调试

热门文章

  1. 输入一个字符,判断它是否为大写字母,如果是,将它转换为小写字母,不是则不转换
  2. RapidScada免费开源Scada组态软件系列教程3-牛刀小试
  3. 虚拟机克隆后MAC地址IP地址修改
  4. 推荐本地远程连接服务器软件 | Xshell 和 Xftp 安装
  5. 人工智能识别性格,只需看眼睛便可实现
  6. mysql 越文_mysql数据库乱码之保存越南文乱码解决方法_MySQL
  7. 从“芯片”选择路由器
  8. 岗位竞聘报告PPT模板
  9. 最大回撤和夏普比率的概念
  10. 解决外置声卡配套StudioOne机架卡顿杂音问题