SSM项目实战:酒店管理系统
使用的技术栈: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项目实战:酒店管理系统相关推荐
- [含论文+源码等]ssm实现的酒店管理系统[包运行成功]
<ssm实现的酒店管理系统>该项目采用技术jsp.SpringMVC.Spring.Mybatis.echarts.easyui.h-ui.jquery.tomcat服务器.mysql数据 ...
- SSM框架之酒店管理系统十四(C端完善前台用户登录、计算日期之间的天数、房间预订)
SSM框架之酒店管理系统十四(C端完善前台用户登录.计算日期之间的天数.房间预订) 当用户点击预定的时候,判断是否有登录的session 1.修改用户登录时保存的sessuin中的key 如果不修改的 ...
- SSM框架之酒店管理系统三(菜单数据库设计,菜单列表查询渲染)
SSM框架之酒店管理系统三(菜单数据库设计,菜单列表查询渲染) 参考LAYUI MINI官网给出的数据库设计规范 Java示例(spring) · layuimini开发手册 (99php.cn) 数 ...
- SSM框架之酒店管理系统十一(房型管理,图片上传)
SSM框架之酒店管理系统十一(房型管理,图片上传) 1.数据库完善 create table t_room_type (id int auto_increment comment '房间类型id'pr ...
- SSM项目-商城后台管理系统
SSM项目-商城后台管理系统 开发说明 开发环境 项目界面演示 项目功能 具体的技术指标 开发过程 1.搭建SSM框架 1.1.建库建表 1.2.新建Maven工程 1.3.配置pom.xml 1.4 ...
- 基于SSM框架的酒店管理系统
基于SSM框架的酒店管理系统 开发工具(eclipse/idea/vscode等): 数据库(sqlite/mysql/sqlserver等): 功能模块(请用文字描述,至少200字): 看每个等级模 ...
- Java项目实战---歌曲管理系统
Java项目实战-歌曲管理系统 声明:本人仅整理了代码,方便大家进行调试优化,功能上还存在很多纰漏,欢迎大家评论区讨论 代码原地址放于文章末尾 一.实验目的: 掌握类的定义,JAVA应用程序的设计与实 ...
- SSM框架之酒店管理系统八(菜单管理)
SSM框架之酒店管理系统八(菜单管理) 1.SystemController控制器跳转 /*** 去到员菜单理页面* @return*/ @RequestMapping("/toMenuMa ...
- Vue项目实战 —— 后台管理系统( pc端 ) 第三篇
前期回顾 Vue项目实战 -- 后台管理系统( pc端 ) 第二篇_0.活在风浪里的博客-CSDN博客前期回顾 Vue项目实战 -- 后台管理系统( pc端 ) 第一篇 _0.活在风浪里 ...
最新文章
- mysql5.5在windows7下编译的详细步骤_Windows7下编译MySQL5.5的详细步骤
- 电子称重管理计算机,称重管理系统
- MySQL / 多版本并发控制
- 数据预处理和特征工程
- Java中TreeMap和TreeSet的底层实现
- 平台(洛谷P1105题题解,Java语言描述)
- jpa调用mysql函数_Spring data jpa 调用存储过程处理返回参数及结果集(示例代码)
- android 练习之路 (一)
- python+opencv+PIL,在图片和视频中写入中文(汉字)
- 推荐最近使用的一个APP
- 汽车底盘线控与动力学域控制技术
- Java版实现一个简单的电话簿
- Koo叔说Shader-描边效果
- Python2020期末考试试题及答案
- 如何用PHP编写简单的api数据接口
- 机器学习(九)基于SVM的上证指数涨跌预测
- TADF材料的机制原理;TADF的机理;热活化延迟荧光如何产生?
- Linux系统之iftop的基本使用
- 艾宾浩斯记忆法和遗忘曲线
- Linux(Ubuntu)下C语言编译与调试