ssm蜀都天香酒楼的网站设计与实现028
开发工具:idea
数据库mysql5.7+
数据库链接工具:navcat,小海豚等
技术:ssm
摘要
近年来,信息化管理行业的不断兴起,使得人们的日常生活越来越离不开计算机和互联网技术。首先,根据收集到的用户需求分析,对设计系统有一个初步的认识与了解,确定蜀都天香酒楼管理系统的总体功能模块。然后,详细设计系统的主要功能模块,通过数据库设计过程将相关的数据信息存储到数据库中,再通过使用关键的开发工具,如MyEclipse开发平台、JSP技术等,编码设计相关的功能模块。接着,主要采用功能测试的方式对系统进行测试,找出系统在运行过程中存在的问题,以及解决问题的方法,不断地改进和完善系统的设计。最后,总结本文介绍的系统的设计和实现过程,并且针对于系统的开发提出未来的展望工作。本系统的研发具有重大的意义,在安全性方面,用户使用浏览器访问网站时,采用注册和密码等相关的保护措施,提高系统的可靠性,维护用户的个人信息和财产的安全。在方便性方面,促进了酒楼管理行业的信息化建设,极大的方便了相关的工作人员对酒楼信息进行管理。
关键词:酒楼管理;Java语言;B/S模式;JSP技术;系统测试
目 录
摘要
Abstract
目 录
1绪论
1.1研究背景与意义
1.2国内外研究现状
1.3研究内容
1.4论文结构
2相关技术介绍
2.1 B/S模式
2.2 MyEclipse开发环境
2.3 MySQL数据库
2.4 Java语言
2.5 JSP技术
2.6 Tomcat服务器
3系统分析
3.1需求分析
3.2可行性分析
3.2.1经济可行性
3.2.2技术可行性
3.2.3操作可行性
3.3 用例建模分析
4系统设计
4.1系统功能设计
4.2数据库设计
4.2.1概念设计
4.2.2逻辑设计
5系统实现
5.1管理员功能模块实现
5.1.1管理员登录
5.1.2用户管理
5.1.3类型管理
5.1.4菜品管理
5.1.5包间管理
5.1.6系统管理
5.2用户功能模块实现
5.2.1系统首页
5.2.2包间预定
5.2.3菜品信息
5.2.4个人中心
6系统测试
6.1测试概述
6.2测试结果
7总结与展望
参考文献
致谢
研究背景与意义
信息化管理模式是将行业中的工作流程由人工服务,逐渐转换为使用计算机技术的信息化管理服务。这种管理模式发展迅速,使用起来非常简单容易,用户甚至不用掌握相关的专业知识,根据教程指导即可正常使用相关的系统,因而被越来越多的用户所使用。由于相关行业管理信息化,这就使得管理工作不在受到时间和区域的限制,随时随地即可完成相关的工作任务和结果[1]。就目前而言,管理信息化在现代社会中非常流行,使用比较广泛。早在20世纪70年代末,就出现了早期的电子商务,相关的公司企业使用计算机建立专用的内部网络,通过内部网络完成相应的采购、销售等活动,加快相关的企业之间的交易速度,提高了工作效率[2]。
当下,许多行业采用互联网技术将工作流程信息化、数字化,提高了相关人员的服务质量和效率,节约了相关行业的人力、财力、物力等资源,与此同时,人们获取外界的相关信息主要依赖于主流的信息化技术和工具。人们对生活的需求也在不断的发生着变化,为了应对用户的多样化需求,许多相关的第三产业应运而生,管理信息化也逐渐的流行起来,比如电子商务行业。本人通过查询大量学习资料,了解基本的开发系统的基本背景和关键任务,学习与掌握Java语言、web技术、JSP技术、HTML语言等开发技术,设计系统功能模块,以及MySQL数据库的相关语法和工具,创建和存储数据表格,反映和关联表格之间相互存在的关系,由此对蜀都天香酒楼管理系统进行研发和实现。
package com.controller;import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Calendar;
import java.util.Map;
import java.util.HashMap;
import java.util.Iterator;
import java.util.Date;
import java.util.List;
import javax.servlet.http.HttpServletRequest;import com.utils.ValidatorUtils;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.format.annotation.DateTimeFormat;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
import com.baomidou.mybatisplus.mapper.EntityWrapper;
import com.baomidou.mybatisplus.mapper.Wrapper;
import com.annotation.IgnoreAuth;import com.entity.BisaixiangmuEntity;
import com.entity.view.BisaixiangmuView;import com.service.BisaixiangmuService;
import com.service.TokenService;
import com.utils.PageUtils;
import com.utils.R;
import com.utils.MD5Util;
import com.utils.MPUtil;
import com.utils.CommonUtil;/*** 比赛项目* 后端接口* @author * @email * @date 2023-03-20 08:05:26*/
@RestController
@RequestMapping("/bisaixiangmu")
public class BisaixiangmuController {@Autowiredprivate BisaixiangmuService bisaixiangmuService;/*** 后端列表*/@RequestMapping("/page")public R page(@RequestParam Map<String, Object> params,BisaixiangmuEntity bisaixiangmu, HttpServletRequest request){EntityWrapper<BisaixiangmuEntity> ew = new EntityWrapper<BisaixiangmuEntity>();PageUtils page = bisaixiangmuService.queryPage(params, MPUtil.sort(MPUtil.between(MPUtil.likeOrEq(ew, bisaixiangmu), params), params));request.setAttribute("data", page);return R.ok().put("data", page);}/*** 前端列表*/@RequestMapping("/list")public R list(@RequestParam Map<String, Object> params,BisaixiangmuEntity bisaixiangmu, HttpServletRequest request){EntityWrapper<BisaixiangmuEntity> ew = new EntityWrapper<BisaixiangmuEntity>();PageUtils page = bisaixiangmuService.queryPage(params, MPUtil.sort(MPUtil.between(MPUtil.likeOrEq(ew, bisaixiangmu), params), params));request.setAttribute("data", page);return R.ok().put("data", page);}/*** 列表*/@RequestMapping("/lists")public R list( BisaixiangmuEntity bisaixiangmu){EntityWrapper<BisaixiangmuEntity> ew = new EntityWrapper<BisaixiangmuEntity>();ew.allEq(MPUtil.allEQMapPre( bisaixiangmu, "bisaixiangmu")); return R.ok().put("data", bisaixiangmuService.selectListView(ew));}/*** 查询*/@RequestMapping("/query")public R query(BisaixiangmuEntity bisaixiangmu){EntityWrapper< BisaixiangmuEntity> ew = new EntityWrapper< BisaixiangmuEntity>();ew.allEq(MPUtil.allEQMapPre( bisaixiangmu, "bisaixiangmu")); BisaixiangmuView bisaixiangmuView = bisaixiangmuService.selectView(ew);return R.ok("查询比赛项目成功").put("data", bisaixiangmuView);}/*** 后端详情*/@RequestMapping("/info/{id}")public R info(@PathVariable("id") Long id){BisaixiangmuEntity bisaixiangmu = bisaixiangmuService.selectById(id);return R.ok().put("data", bisaixiangmu);}/*** 前端详情*/@RequestMapping("/detail/{id}")public R detail(@PathVariable("id") Long id){BisaixiangmuEntity bisaixiangmu = bisaixiangmuService.selectById(id);return R.ok().put("data", bisaixiangmu);}/*** 后端保存*/@RequestMapping("/save")public R save(@RequestBody BisaixiangmuEntity bisaixiangmu, HttpServletRequest request){bisaixiangmu.setId(new Date().getTime()+new Double(Math.floor(Math.random()*1000)).longValue());//ValidatorUtils.validateEntity(bisaixiangmu);bisaixiangmuService.insert(bisaixiangmu);return R.ok();}/*** 前端保存*/@RequestMapping("/add")public R add(@RequestBody BisaixiangmuEntity bisaixiangmu, HttpServletRequest request){bisaixiangmu.setId(new Date().getTime()+new Double(Math.floor(Math.random()*1000)).longValue());//ValidatorUtils.validateEntity(bisaixiangmu);bisaixiangmuService.insert(bisaixiangmu);return R.ok();}/*** 修改*/@RequestMapping("/update")public R update(@RequestBody BisaixiangmuEntity bisaixiangmu, HttpServletRequest request){//ValidatorUtils.validateEntity(bisaixiangmu);bisaixiangmuService.updateById(bisaixiangmu);//全部更新return R.ok();}/*** 删除*/@RequestMapping("/delete")public R delete(@RequestBody Long[] ids){bisaixiangmuService.deleteBatchIds(Arrays.asList(ids));return R.ok();}/*** 提醒接口*/@RequestMapping("/remind/{columnName}/{type}")public R remindCount(@PathVariable("columnName") String columnName, HttpServletRequest request, @PathVariable("type") String type,@RequestParam Map<String, Object> map) {map.put("column", columnName);map.put("type", type);if(type.equals("2")) {SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");Calendar c = Calendar.getInstance();Date remindStartDate = null;Date remindEndDate = null;if(map.get("remindstart")!=null) {Integer remindStart = Integer.parseInt(map.get("remindstart").toString());c.setTime(new Date()); c.add(Calendar.DAY_OF_MONTH,remindStart);remindStartDate = c.getTime();map.put("remindstart", sdf.format(remindStartDate));}if(map.get("remindend")!=null) {Integer remindEnd = Integer.parseInt(map.get("remindend").toString());c.setTime(new Date());c.add(Calendar.DAY_OF_MONTH,remindEnd);remindEndDate = c.getTime();map.put("remindend", sdf.format(remindEndDate));}}Wrapper<BisaixiangmuEntity> wrapper = new EntityWrapper<BisaixiangmuEntity>();if(map.get("remindstart")!=null) {wrapper.ge(columnName, map.get("remindstart"));}if(map.get("remindend")!=null) {wrapper.le(columnName, map.get("remindend"));}int count = bisaixiangmuService.selectCount(wrapper);return R.ok().put("count", count);}}