当前位置: 首页 > news >正文

基于javaweb和mysql的ssm酒吧后台管理系统(java+ssm+jsp+html+mysql)

基于javaweb和mysql的ssm酒吧后台管理系统(java+ssm+jsp+html+mysql)

私信源码获取及调试交流

私信源码获取及调试交流

运行环境

Java≥8、MySQL≥5.7、Tomcat≥8

开发工具

eclipse/idea/myeclipse/sts等均可配置运行

适用

课程设计,大作业,毕业设计,项目练习,学习演示等

功能说明

基于javaweb的SSM酒吧后台管理系统(java+ssm+jsp+html+mysql)

项目介绍

管理员角色包含以下功能: 管理员登录,桌位信息查看,查看账单,日常维护,酒水库存管理等功能。

环境需要

1.运行环境:最好是java jdk 1.8,我们在这个平台上运行的。其他版本理论上也可以。 2.IDE环境:IDEA,Eclipse,Myeclipse都可以。推荐IDEA; 3.tomcat环境:Tomcat 7.x,8.x,9.x版本均可 4.硬件环境:windows 7/8/10 1G内存以上;或者 Mac OS; 5.数据库:MySql 5.7版本;

技术栈

  1. 后端:Spring+SpringMVC+Mybatis 2. 前端:HTML+CSS+JavaScript+jsp

使用说明

  1. 使用Navicat或者其它工具,在mysql中创建对应名称的数据库,并导入项目的sql文件; 2. 使用IDEA/Eclipse/MyEclipse导入项目,Eclipse/MyEclipse导入时,若为maven项目请选择maven;若为maven项目,导入成功后请执行maven clean;maven install命令,然后运行; 3. 将项目中application.yml配置文件中的数据库配置改为自己的配置; 4. 运行项目,输入localhost:8080/ 登录
logger.info("根据{}排序,是否倒序:{}",orderBy,isDesc);orderUtil=newOrderUtil(orderBy,isDesc);JSONObjectobject=newJSONObject();logger.info("按条件获取第{}页的{}条用户",index+1,count);PageUtilpageUtil=newPageUtil(index,count);List<User>userList=userService.getList(user,orderUtil,pageUtil);object.put("userList",JSONArray.parseArray(JSON.toJSONString(userList)));logger.info("按条件获取用户总数量");IntegeruserCount=userService.getTotal(user);object.put("userCount",userCount);logger.info("获取分页信息");pageUtil.setTotal(userCount);object.put("totalPage",pageUtil.getTotalPage());
}else{user.setUser_realname("未命名");map.put("user",user);logger.info("转到后台管理-用户详情页-ajax方式");return"admin/include/userDetails";//按条件查询用户-ajax@ResponseBody@RequestMapping(value="admin/user/{index}/{count}",method=RequestMethod.GET,produces="application/json;charset=UTF-8")publicStringgetUserBySearch(@RequestParam(required=false)Stringuser_name/* 用户名称 */,@RequestParam(required=false)Byte[]user_gender_array/* 用户性别数组 */,@RequestParam(required=false)StringorderBy/* 排序字段 */,
//最后一级地址addressStack.push(address.getAddress_name()+" ");//如果不是第一级地址while(!address.getAddress_areaId().equals(address.getAddress_regionId().getAddress_areaId())){address=addressService.get(address.getAddress_regionId().getAddress_areaId());addressStack.push(address.getAddress_name()+" ");builder=newStringBuilder();while(!addressStack.empty()){builder.append(addressStack.pop());logger.info("家乡地址字符串:{}",builder);user.setUser_homeplace(newAddress().setAddress_name(builder.toString()));logger.info("获取用户详情-购物车订单项信息");
logger.info("登录验证成功,用户ID传入会话");session.setAttribute("userId",user.getUser_id());jsonObject.put("success",true);returnjsonObject.toJSONString();//退出当前账号@RequestMapping(value="login/logout",method=RequestMethod.GET)publicStringlogout(HttpSessionsession){Objecto=session.getAttribute("userId");if(o!=null){session.removeAttribute("userId");
.setUser_gender(gender);OrderUtilorderUtil=null;if(orderBy!=null){logger.info("根据{}排序,是否倒序:{}",orderBy,isDesc);orderUtil=newOrderUtil(orderBy,isDesc);JSONObjectobject=newJSONObject();logger.info("按条件获取第{}页的{}条用户",index+1,count);PageUtilpageUtil=newPageUtil(index,count);List<User>userList=userService.getList(user,orderUtil,pageUtil);object.put("userList",JSONArray.parseArray(JSON.toJSONString(userList)));
logger.info("根据{}排序,是否倒序:{}",orderBy,isDesc);orderUtil=newOrderUtil(orderBy,isDesc);JSONObjectobject=newJSONObject();logger.info("按条件获取第{}页的{}条用户",index+1,count);PageUtilpageUtil=newPageUtil(index,count);List<User>userList=userService.getList(user,orderUtil,pageUtil);object.put("userList",JSONArray.parseArray(JSON.toJSONString(userList)));logger.info("按条件获取用户总数量");IntegeruserCount=userService.getTotal(user);object.put("userCount",userCount);logger.info("获取分页信息");pageUtil.setTotal(userCount);
}else{user.setUser_realname("未命名");map.put("user",user);logger.info("转到后台管理-用户详情页-ajax方式");return"admin/include/userDetails";//按条件查询用户-ajax@ResponseBody@RequestMapping(value="admin/user/{index}/{count}",method=RequestMethod.GET,produces="application/json;charset=UTF-8")publicStringgetUserBySearch(@RequestParam(required=false)Stringuser_name/* 用户名称 */,@RequestParam(required=false)Byte[]user_gender_array/* 用户性别数组 */,@RequestParam(required=false)StringorderBy/* 排序字段 */,@RequestParam(required=false,defaultValue="true")BooleanisDesc/* 是否倒序 */,@PathVariableIntegerindex/* 页数 */,
Useruser=userService.login(username,password);JSONObjectjsonObject=newJSONObject();if(user==null){logger.info("登录验证失败");jsonObject.put("success",false);}else{logger.info("登录验证成功,用户ID传入会话");session.setAttribute("userId",user.getUser_id());jsonObject.put("success",true);returnjsonObject.toJSONString();//退出当前账号
if(user==null){logger.info("登录验证失败");jsonObject.put("success",false);}else{logger.info("登录验证成功,用户ID传入会话");session.setAttribute("userId",user.getUser_id());jsonObject.put("success",true);returnjsonObject.toJSONString();//退出当前账号@RequestMapping(value="login/logout",method=RequestMethod.GET)publicStringlogout(HttpSessionsession){Objecto=session.getAttribute("userId");if(o!=null){
@Resource(name="userService")privateUserServiceuserService;@Resource(name="addressService")privateAddressServiceaddressService;@Resource(name="reviewService")privateReviewServicereviewService;@Resource(name="productOrderItemService")privateProductOrderItemServiceproductOrderItemService;@Resource(name="productService")privateProductServiceproductService;@Resource(name="productImageService")
*/@ControllerpublicclassUserControllerextendsBaseController{@Resource(name="userService")privateUserServiceuserService;@Resource(name="addressService")privateAddressServiceaddressService;@Resource(name="reviewService")privateReviewServicereviewService;@Resource(name="productOrderItemService")
logger.info("用户验证登录");Useruser=userService.login(username,password);JSONObjectjsonObject=newJSONObject();if(user==null){logger.info("登录验证失败");jsonObject.put("success",false);}else{logger.info("登录验证成功,用户ID传入会话");session.setAttribute("userId",user.getUser_id());jsonObject.put("success",true);returnjsonObject.toJSONString();
logger.info("所在地地址字符串:{}",builder);user.setUser_address(newAddress().setAddress_name(builder.toString()));logger.info("获取用户详情-家乡地址信息");address=addressService.get(user.getUser_homeplace().getAddress_areaId());//最后一级地址addressStack.push(address.getAddress_name()+" ");//如果不是第一级地址while(!address.getAddress_areaId().equals(address.getAddress_regionId().getAddress_areaId())){address=addressService.get(address.getAddress_regionId().getAddress_areaId());addressStack.push(address.getAddress_name()+" ");builder=newStringBuilder();
if(orderBy!=null){logger.info("根据{}排序,是否倒序:{}",orderBy,isDesc);orderUtil=newOrderUtil(orderBy,isDesc);JSONObjectobject=newJSONObject();logger.info("按条件获取第{}页的{}条用户",index+1,count);PageUtilpageUtil=newPageUtil(index,count);List<User>userList=userService.getList(user,orderUtil,pageUtil);object.put("userList",JSONArray.parseArray(JSON.toJSONString(userList)));logger.info("按条件获取用户总数量");IntegeruserCount=userService.getTotal(user);object.put("userCount",userCount);logger.info("获取分页信息");pageUtil.setTotal(userCount);
user.setUser_realname("未命名");map.put("user",user);logger.info("转到后台管理-用户详情页-ajax方式");return"admin/include/userDetails";//按条件查询用户-ajax@ResponseBody@RequestMapping(value="admin/user/{index}/{count}",method=RequestMethod.GET,produces="application/json;charset=UTF-8")publicStringgetUserBySearch(@RequestParam(required=false)Stringuser_name/* 用户名称 */,@RequestParam(required=false)Byte[]user_gender_array/* 用户性别数组 */,@RequestParam(required=false)StringorderBy/* 排序字段 */,@RequestParam(required=false,defaultValue="true")BooleanisDesc/* 是否倒序 */,@PathVariableIntegerindex/* 页数 */,
@PathVariableIntegercount/* 行数 */)throwsUnsupportedEncodingException{//移除不必要条件Bytegender=null;if(user_gender_array!=null&&user_gender_array.length==1){gender=user_gender_array[0];if(user_name!=null){//如果为非空字符串则解决中文乱码:URLDecoder.decode(String,"UTF-8");user_name="".equals(user_name)?null:URLDecoder.decode(user_name,"UTF-8");if(orderBy!=null&&"".equals(orderBy)){orderBy=null;//封装查询条件Useruser=newUser().setUser_name(user_name)
//登录页@RequestMapping(value="login",method=RequestMethod.GET)publicStringgoToPage(HttpSessionsession,Map<String,Object>map){logger.info("转到前台天猫-登录页");return"fore/loginPage";//登陆验证-ajax@ResponseBody@RequestMapping(value="login/doLogin",method=RequestMethod.POST,produces="application/json;charset=utf-8")publicStringcheckLogin(HttpSessionsession,@RequestParamStringusername,@RequestParamStringpassword){logger.info("用户验证登录");Useruser=userService.login(username,password);
if(productOrderItemList!=null){logger.info("获取用户详情-购物车订单项对应的产品信息");for(ProductOrderItemproductOrderItem:productOrderItemList){IntegerproductId=productOrderItem.getProductOrderItem_product().getProduct_id();logger.warn("获取产品ID为{}的产品信息",productId);Productproduct=productService.get(productId);if(product!=null){logger.warn("获取产品ID为{}的第一张预览图片信息",productId);product.setSingleProductImageList(productImageService.getList(productId,(byte)0,newPageUtil(0,1))





http://www.jsqmd.com/news/491523/

相关文章:

  • ToB/ToC 前端开发:程序员选赛道必看!从业务本质到技术选型,避开高频坑
  • 2026大型集团资产管理系统选型指南:五大主流平台深度解析与推荐 - 品牌2026
  • 计算机毕业设计之springboot疫情背景下光明小区管理系统的设计与实现
  • 国产替代:福尔蒂vs利安隆/金发/普立万在阻燃PC母粒的技术代差与应用边界
  • buuctf BabyUpload
  • 以太坊 vs Polkadot 预编译合约对比 | 同样的入口,完全不同的能力边界
  • 题目2281:蓝桥杯2018年第九届真题-次数差
  • Windows 10系统盘制作(纯净版)
  • 具身智能中的VLA基础概念
  • 【Spring框架】别再死记硬背!AOP 原来这么简单
  • 回归实战2
  • 一次试样失败催生的技术革新:福尔蒂吹瓶专用ACR助剂逆向推演与流变拟合
  • 半监督食物图像分类项目
  • 国内首个,面向中小企业数据资产估值体系:“荟宸信科面向中小企业数据资产估值体系”正式发布(一)
  • iPhone开发 - %1$、%2$的写法
  • 就让我们从react的渲染逻辑出发吧
  • WordPress报错:preg_match() Compilation failed 错误解决方法
  • 【跨端技术ReactNative】JavaScript学习
  • 长亭 Xray Web 漏洞扫描器
  • 行业大咖谈数据资产|中海油如何规划数据资产管理?央企硬核实践拆解
  • 湘潭品牌设计公司权威推荐榜单
  • 零/负电价来了!储能业主如何抓住机遇?
  • 中小企业可用福尔蒂轻量化改性套件:含17种PA6/PBT配比+免费云端模拟
  • es为什么快面试回答
  • 筋膜提升第几天最肿
  • 深入解析HDFS:定义、架构、原理、应用场景及常用命令
  • 5 分钟搭建 Deepseek 私有化 RAG 知识库!支持多模型切换 + 激活验证 + 增量索引
  • 高级技巧-让AI自我迭代
  • 香港Web3区块链安全公司排行榜前三都有哪些公司?
  • openclaw、workbuddy上必装的12个RAG 应用 Skill 技能