【项目实战】基于javaweb的在线点餐系统-管理员+商家+用户角色
创始人
2024-04-04 15:52:45
0

注意:该项目只展示部分功能,如需了解,评论区咨询即可。

本文目录

  • 1.开发环境
  • 2 系统设计
    • 2.1 背景意义
    • 2.2 技术路线
    • 2.3 主要研究内容
  • 3 系统页面展示
  • 4 更多推荐
  • 5 部分功能代码

1.开发环境

开发语言:Java
数据库:MySQL
编译工具:Idea、Eclipse、MyEclipse (选其一)
其他:jdk1.8、Tomcat

eclipse 下载
mysql 5.7 下载
jdk 1.8 下载
tomcat 8.0 下载
maven 3.5 下载
idea 下载

2 系统设计

2.1 背景意义

随着网络信息的时代到来,自助点餐系统中正处于发展的阶段,所以对系统功能设计的需求是在日新月异的变化之中,所以要从系统的功能和用户实际需求相结合来选择对系统制定开发方式,依靠网络技术的的快速发展和现代通讯定位等技术的结合为用户带来方便,还可以方便商家发展自己的业务,还可以通过这些技术实现订单管理、餐品管理、销量统计管理等过程,使商家用户都得到便利。在当今社会网络的发展下,我国的网络也快速发展起来。在这样的环境下开发一个方便消费者和商家可以操作、简单、便捷的基于javaweb的在线点餐系统的发展前景是非常好的。

2.2 技术路线

基于javaweb的在线点餐系统前端页面可以采CSS+HTML+JavaScript等技术,通过java web进行开发,后端程序可以采用java语言进行编写,数据库采用Mysql。通过上述方法和技术设计出一个功能完备的,稳定的,可用性强的基于javaweb的在线点餐系统。

2.3 主要研究内容

本系统的功能包括管理员、商家和用户的角色,用户登录系统之后可以选择餐品进行点餐,管理自己的收货地址以及对自己的订单进行管理。商家可以对自己的餐品进行添加,修改餐品的信息,删除餐品等,对用户下的订单进行处理,确认完成订单等,并对自己的订单数量进行可视化的统计分析。管理员可以对用户信息以及商家的信息进行管理,管理餐品的信息和订单的信息。

3 系统页面展示

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

4 更多推荐

2023年计算机毕业设计选题大全 计算机毕业设计选题推荐
基于微信小程序的在线小说阅读系统SpringBoot
基于微信小程序的大学生心理预约咨询系统
基于协同过滤算法的农特产商城微信小程序
基于SpringBoot疫苗接种反应上报系统

5 部分功能代码

//分页查询private void recommendedList(HttpServletRequest request, HttpServletResponse response) {Integer bid = 0;Object flag = request.getSession().getAttribute("flag");if(flag != null && flag.toString().equals("3")){Business bu = (Business)request.getSession().getAttribute("business");if(bu != null){bid = bu.getId();}}List businesses = bs.selectAll();String p=request.getParameter("p");//接收页码int pageSize=4;//每页显示5条int pageNum=1; //默认第一页if(p!=null && !"".equals(p)){pageNum= Integer.parseInt(p);}String name = request.getParameter("name");String bidStr = request.getParameter("shop");System.out.println("数据:"+bidStr);if(bidStr != null){bid = Integer.parseInt(bidStr);}System.out.println(pageNum+"--"+pageSize+"--"+bid+"--"+name);List recommendedListPage = r.getRecommendedListPage(pageNum, pageSize, bid, name);//携带参数到页面int nums=r.queryRecommendedCount(bid, name); //查询总数//计算总页数int totalPage=(nums%pageSize==0)? (nums/pageSize):(nums/pageSize+1);request.setAttribute("cp",pageNum); //当前页request.setAttribute("tp",totalPage); //总页数try {request.removeAttribute("msg");request.setAttribute("list" ,recommendedListPage);request.setAttribute("shop" ,bid);request.setAttribute("name" ,name);request.setAttribute("businesses" ,businesses);request.getRequestDispatcher("/WEB-INF/views/tea/recommendedList.jsp").forward(request, response);} catch (Exception e) {e.printStackTrace();}}//删除private void deleteRecommended(HttpServletRequest request, HttpServletResponse response){String id = request.getParameter("id");System.out.println("获取的id"+id);try {r.deleteRecommended(id);//返回的页面路径response.sendRedirect(request.getContextPath()+"/RecommendedServlet?action=recommendedList");} catch (Exception e) {e.printStackTrace();}}private void addRecommended(HttpServletRequest request, HttpServletResponse response) {Recommended recommended = new Recommended();recommended.setAddtime(new SimpleDateFormat("yyyy-MM-dd HH:mm").format(new Date()));String tea_Id = request.getParameter("tea_id");System.out.println("获取的id"+tea_Id);System.out.println("获取的id"+request.getParameter("shop"));recommended.setTea_id(Integer.valueOf(tea_Id));try {r.saveRecommended(recommended);//返回的途径response.sendRedirect(request.getContextPath()+"/RecommendedServlet?action=recommendedList");} catch (Exception e) {e.printStackTrace();}};//添加页面跳转private void toAddRecommended(HttpServletRequest request, HttpServletResponse response) {//获取所有店家List businesses = bs.selectAll();int bid=businesses.get(0).getId();//获取该店家所有商品List teas = ts.selectNoTeaList(null, 0);try {request.setAttribute("bid" ,bid);request.setAttribute("teas" ,teas);request.setAttribute("businesses" ,businesses);request.getRequestDispatcher("/WEB-INF/views/tea/addRecommended.jsp").forward(request,response);} catch (Exception e) {e.printStackTrace();}}//跳入二维码public  void toadd(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {System.out.println("跳入二维码");
//        String id = request.getParameter("id");
//        String mode = request.getParameter("mode");
//        request.setAttribute("id" ,id);
//        request.setAttribute("mode" ,mode);request.getRequestDispatcher("/WEB-INF/views/tea/qrcode.jsp").forward(request,response);};
/*** 购买奶茶* @param request* @param response*/private void buyTea(HttpServletRequest request, HttpServletResponse response) {String id =request.getParameter("id");int mode = Integer.parseInt(request.getParameter("mode"));String note =request.getParameter("note");Tea tea = rs.selectTea(id);// 查询最新未支付订单Customer cus = (Customer)request.getSession().getAttribute("customer");Record record = rs.selectLastRecord(mode, cus.getId(), tea.getBusiness_id());if (record == null) {Record recordEntity = new Record();String uuid = Constant.generateUID();recordEntity.setNo(uuid);recordEntity.setUserName(cus.getCustomer_name());recordEntity.setUserId(cus.getId());recordEntity.setMode(mode);recordEntity.setPrice(tea.getPrice());recordEntity.setBusiness_id(tea.getBusiness_id());recordEntity.setBusiness(tea.getBusiness_name());if (mode == 0) {recordEntity.setState("1");} else {recordEntity.setState("0");}recordEntity.setTime(new SimpleDateFormat("yyyy-MM-dd HH:mm").format(new Date()));recordEntity.setNote(note);rs.buyTea(recordEntity);RecordDetails rd = new RecordDetails();rd.setRecord_no(uuid);rd.setBusiness_name(tea.getBusiness_cp());rd.setNum(1);rd.setBusiness(tea.getBusiness_name());rd.setPrice(tea.getPrice());rd.setBusiness_id(tea.getId());rd.setNote(note);rs.addDetails(rd);} else {// 不等于空则更新订单及详情信息record.setPrice(record.getPrice().add(tea.getPrice()));record.setNote(note);rs.updateRecord(record);// 查询订单中是否存在该商品,存在则更新数据,不存在则添加RecordDetails rd = rs.selectRecordDetailsByBid(record.getNo(), tea.getId());if (rd == null || rd.getId() == null) {rd = new RecordDetails();rd.setRecord_no(record.getNo());rd.setBusiness_name(tea.getBusiness_cp());rd.setBusiness_id(tea.getId());rd.setNum(1);rd.setBusiness(tea.getBusiness_name());rd.setPrice(tea.getPrice());rd.setNote(note);rs.addDetails(rd);} else {rd.setPrice(rd.getPrice().add(tea.getPrice()));rd.setNum(rd.getNum() + 1);rs.updateDetails(rd);}}/*try {response.sendRedirect(request.getContextPath()+"/RecordServlet?action=recordList&temp=1");} catch (Exception e) {e.printStackTrace();}*/}/*** 商家接单* @param request* @param response*/private void businessJd(HttpServletRequest request, HttpServletResponse response) {String id = request.getParameter("id");try {rs.businessJd(id);response.sendRedirect(request.getContextPath()+"/RecordServlet?action=recordList");} catch (Exception e) {e.printStackTrace();}}private void recordList(HttpServletRequest request, HttpServletResponse response) {try {Integer bid = 0;Object flag = request.getSession().getAttribute("flag");String temp = request.getParameter("temp");if(temp != null && temp.equals("1")){flag = "10";//顾客订单页面展示Customer c = (Customer)request.getSession().getAttribute("customer");bid = c.getId();}if(flag != null && flag.toString().equals("3")){Business bu = (Business)request.getSession().getAttribute("business");if(bu != null){bid = bu.getId();}}if(flag != null && flag.toString().equals("4")){Psr psr = (Psr)request.getSession().getAttribute("psr");if(psr != null){bid = psr.getId();}}String name = request.getParameter("name");List list=rs.selectRecordList(name,bid,flag);request.setAttribute("list" ,list);request.getRequestDispatcher("/WEB-INF/views/record/recordList.jsp").forward(request, response);} catch (Exception e) {e.printStackTrace();}}private void details(HttpServletRequest request, HttpServletResponse response) {try {String no = request.getParameter("no");List list=rs.selectRecordDetails(no);request.setAttribute("list" ,list);request.getRequestDispatcher("/WEB-INF/views/record/recordDetails.jsp").forward(request, response);} catch (Exception e) {e.printStackTrace();}}private void toUpdateRecord(HttpServletRequest request, HttpServletResponse response) {try {String idStr = request.getParameter("id");int id = 0;if (idStr != null && !"".equals(idStr)) {id = Integer.parseInt(idStr);}Record record = rs.selectRecordById(id);request.setAttribute("record" ,record);List
addresses = as.getAddressListPage(1, 100, record.getUserId());request.setAttribute("addresses" ,addresses);request.getRequestDispatcher("/WEB-INF/views/record/updateRecord.jsp").forward(request, response);} catch (Exception e) {e.printStackTrace();}}private void updateRecord(HttpServletRequest request, HttpServletResponse response) {try {String idStr = request.getParameter("id");int id = 0;if (idStr != null && !"".equals(idStr)) {id = Integer.parseInt(idStr);}String address = request.getParameter("address");Record record = rs.selectRecordById(id);if (record != null) {record.setAddress(address);record.setState("1");rs.updateRecord(record);}request.getRequestDispatcher("RecordServlet?action=recordList").forward(request, response);} catch (Exception e) {e.printStackTrace();}}private void toUpdatePsr(HttpServletRequest request, HttpServletResponse response) {try {String idStr = request.getParameter("id");int id = 0;if (idStr != null && !"".equals(idStr)) {id = Integer.parseInt(idStr);}Record record = rs.selectRecordById(id);request.setAttribute("record" ,record);request.getRequestDispatcher("/WEB-INF/views/record/updatePsr.jsp").forward(request, response);} catch (Exception e) {e.printStackTrace();}}private void updatePsr(HttpServletRequest request, HttpServletResponse response) {try {String idStr = request.getParameter("id");int id = 0;if (idStr != null && !"".equals(idStr)) {id = Integer.parseInt(idStr);}String psrName = request.getParameter("psrName");String psrPhone = request.getParameter("psrPhone");Record record = rs.selectRecordById(id);if (record != null) {record.setPsrName(psrName);record.setPsrPhone(psrPhone);record.setState("2");rs.updateRecord(record);}request.getRequestDispatcher("RecordServlet?action=recordList").forward(request, response);} catch (Exception e) {e.printStackTrace();}}private void finishState(HttpServletRequest request, HttpServletResponse response) {try {String idStr = request.getParameter("id");int id = 0;if (idStr != null && !"".equals(idStr)) {id = Integer.parseInt(idStr);}Record record = rs.selectRecordById(id);if (record != null) {record.setState("3");rs.updateRecord(record);}request.getRequestDispatcher("RecordServlet?action=recordList").forward(request, response);} catch (Exception e) {e.printStackTrace();}} }
private void addTea(HttpServletRequest request, HttpServletResponse response) {// TODO Auto-generated method stubTea tea = new Tea();tea.setTime(new SimpleDateFormat("yyyy-MM-dd HH:mm").format(new Date()));String resultPath = "";String storePath = getServletContext().getRealPath("/static/img");try {DiskFileItemFactory factory = new DiskFileItemFactory();ServletFileUpload upload = new ServletFileUpload(factory);//解析请求List items = upload.parseRequest(request);for(FileItem item:items){if(!item.isFormField()){//处理文件上传InputStream in = item.getInputStream();String fileName = item.getName();//   c:\dsf\a.jpgfileName = UUID.randomUUID()+fileName.substring(fileName.lastIndexOf("\\")+1);//设置存取的图片文件名tea.setImg(fileName);OutputStream out = new FileOutputStream(storePath+"\\"+fileName);byte b[] = new byte[1024];int len = -1;while((len=in.read(b))!=-1){out.write(b, 0, len);}out.close();in.close();item.delete();//删除临时文件} else {String fieldName = item.getFieldName();//字段名,即javabean的属性名,除了图片String fieldValue = item.getString(request.getCharacterEncoding());BeanUtils.setProperty(tea, fieldName, fieldValue);}}} catch (Exception e) {e.printStackTrace();}try {ts.saveTea(tea);response.sendRedirect(request.getContextPath()+"/TeaServlet?action=teaList");} catch (Exception e) {e.printStackTrace();}}private void toAddTea(HttpServletRequest request, HttpServletResponse response) {try {request.getRequestDispatcher("/WEB-INF/views/tea/addTea.jsp").forward(request,response);} catch (Exception e) {e.printStackTrace();}}private void teaList(HttpServletRequest request, HttpServletResponse response) {Integer bid = 0;Object flag = request.getSession().getAttribute("flag");if(flag != null && flag.toString().equals("3")){Business bu = (Business)request.getSession().getAttribute("business");if(bu != null){bid = bu.getId();}}List businesses = bs.selectAll();if(flag != null && (flag.toString().equals("2") || flag.toString().equals("1"))){bid = businesses.get(0).getId();}String p=request.getParameter("p");//接收页码int pageSize=4;//每页显示5条int pageNum=1; //默认第一页if(p!=null && !"".equals(p)){pageNum= Integer.parseInt(p);}String name = request.getParameter("name");String bidStr = request.getParameter("shop");if(bidStr != null && (flag.toString().equals("2") || flag.toString().equals("1"))){bid = Integer.parseInt(bidStr);}//调用分页查询List list=ts.getTeaListPage(pageNum,pageSize,bid, name);//携带参数到页面int nums=ts.queryTeaCount(bid, name); //查询总数//计算总页数int totalPage=(nums%pageSize==0)? (nums/pageSize):(nums/pageSize+1);request.setAttribute("cp",pageNum); //当前页request.setAttribute("tp",totalPage); //总页数try {request.removeAttribute("msg");request.setAttribute("list" ,list);request.setAttribute("shop" ,bid);request.setAttribute("name" ,name);request.setAttribute("businesses" ,businesses);request.getRequestDispatcher("/WEB-INF/views/tea/teaList.jsp").forward(request, response);} catch (Exception e) {e.printStackTrace();}}/*** 模糊查询奶茶商品* @param request* @param response*/private void teaLike(HttpServletRequest request, HttpServletResponse response) {try {Integer bid = 0;Object flag = request.getSession().getAttribute("flag");if(flag != null && flag.toString().equals("3")){Business bu = (Business)request.getSession().getAttribute("business");if(bu != null){bid = bu.getId();}}List businesses = bs.selectAll();if(flag != null && flag.toString().equals("2")){bid = Integer.parseInt(request.getParameter("shop"));}String name = request.getParameter("name");List list=ts.selectTeaList(name,bid);request.setAttribute("list" ,list);request.setAttribute("businesses" ,businesses);request.getRequestDispatcher("/WEB-INF/views/tea/teaList.jsp").forward(request, response);} catch (Exception e) {e.printStackTrace();}}
}

源码项目、定制开发、代码讲解、答辩辅导
希望和大家多多交流!!

相关内容

热门资讯

银河麒麟V10SP1高级服务器... 银河麒麟高级服务器操作系统简介: 银河麒麟高级服务器操作系统V10是针对企业级关键业务...
【NI Multisim 14...   目录 序言 一、工具栏 🍊1.“标准”工具栏 🍊 2.视图工具...
AWSECS:访问外部网络时出... 如果您在AWS ECS中部署了应用程序,并且该应用程序需要访问外部网络,但是无法正常访问,可能是因为...
不能访问光猫的的管理页面 光猫是现代家庭宽带网络的重要组成部分,它可以提供高速稳定的网络连接。但是,有时候我们会遇到不能访问光...
AWSElasticBeans... 在Dockerfile中手动配置nginx反向代理。例如,在Dockerfile中添加以下代码:FR...
Android|无法访问或保存... 这个问题可能是由于权限设置不正确导致的。您需要在应用程序清单文件中添加以下代码来请求适当的权限:此外...
月入8000+的steam搬砖... 大家好,我是阿阳 今天要给大家介绍的是 steam 游戏搬砖项目,目前...
​ToDesk 远程工具安装及... 目录 前言 ToDesk 优势 ToDesk 下载安装 ToDesk 功能展示 文件传输 设备链接 ...
北信源内网安全管理卸载 北信源内网安全管理是一款网络安全管理软件,主要用于保护内网安全。在日常使用过程中,卸载该软件是一种常...
AWS管理控制台菜单和权限 要在AWS管理控制台中创建菜单和权限,您可以使用AWS Identity and Access Ma...