摘要

我们做的系统是一个基于Java web与MySQL的食堂订餐系统
班级: 计科二班
小组成员:李鉴宣、袁超

我们的第一阶段主要完成以下三件事:

  1. 完成项目的需求分析
  2. 完成项目的领域逻辑(domain logic)
  3. 完成项目的E-R图、用列图、系统架构图

其中我们的需求分析中主要包含了以下类容:

GitHub仓库链接(包含需求分析文档):https://github.com/Love-LG/-

  • 1、概述

    • 1.1 课程项目设计的核心任务
             课程设计的核心任务主要是通过对Java web和MySQL两门课程的学习之后,运用Java web和MySQL技术实现一个食堂点餐系统。完成课程设计报告的编写和项目源码的实现,最后将项目部署到服务器上。
    • 1.2 课程设计的工作进程
             第一个阶段主要实现项目需求分析的编写、业务逻辑的分析、E-R图、用列图、系统架构图的设计;第二个阶段编写相应代码实现系统的各个功能;第三个阶段实现系统项目的最终测试和部署。
  • 2、需求分析
    • 2.1 用户需求

      • 2.1.1 业务需求
               (1)作为用户可以浏览商家以及商家提供的用餐种类信息,用户可以完成在线下单。(2)作为商家可以录入自己的商品信息、员工信息以及处理用户的订单。(3)作为管理员实现对食堂信息、食堂商户信息以及用户信息的管理。

      • 2.1.2 商业需求
               考虑到当下网络的发达以及智能设备的普及,很多人都更加偏爱于在网山平台点餐,浏览所有的商品之后再选择自己想要,而不需要匆忙的去排队点餐并且还没有时间看清楚所有的餐品信息。基于这样一个痛点我们打算开发一个基于Java web与MySQL的食堂点餐系统来解决这样一个痛点。
      • 2.1.3 特殊需求
               本系统是专门为食堂提供服务的系统,考虑到用户多数都是学生和食堂的商家因此我们的系统必须保证信息的准确性,以及信息的及时性;针对用户(学生)可以制定更加完善的服务。比如在点餐的前一天可以邀请用户(学生)参与投票选择自己想在哪一个食堂哪一个商户吃什么,便于食堂商家准备餐品从而可以避免不必要的浪费和不足等问题。
    • 2.2 可行性分析
      • 2.2.1 技术可行性
               本项目是一个基于Java web的食堂订餐系统,用到的主要技术是Java web与MySQL。Java EE体系作为当下最流行的Java web技术拥有完善的文档和生态环境;MySQL作为当下最流行的高性能数据库同样拥有完善的技术文档和生态环境;对此可以保证我们项目的开发质量和开发进度。在项目开发过程中使用到的主要软件与平台有,代码编写使用Eclipse、数据库的实现使用MySQL数据库、项目的打包构建使用maven、项目的本地测试部署使用glass fish、项目的开发使用Windows平台、项目的最终部署使用腾讯云服务器centos7操作系统。
      • 2.2.2 经济可行性
               本项目的开发所使用的Eclipse是免费的,使用的数据库MySQL是开源免费的,使用的构建打包工具是免费的,本地部署测试glass fish是开源免费的。最终部署的服务器时采用的腾讯云服务器以及域名的购买都是在我们现有的经济基础之上可以承受的。在项目的后期维护上面的费用一级开发阶段的经济都是可行的。
    • 2.3 系统功能
             本系统主要是基于Java web与MySQL的食堂订餐系统,系统的主要功能包括食堂商家可以实现菜品信息的录入员工信息的管理以及处理用户的订单,用户可以浏览食堂商家的信息以及商家提供的菜品信息并且能够完成订单操作,系统的管理员能够实现对食堂信息、商户信息、用户信息的管理。
    • 2.4 领域逻辑
             商家每天在点餐系统上提供的餐品数量是有限的,如果用户选择了一样菜品那么相应的菜品数量就会从当天售卖的总数中减少一份,如果由用户点了餐并且付了款但又想退款,那么这个事务就会回滚到他最初始的状态,商品减少的数量会重新加一。
  • 3 概要设计图
    • 3.1 系统E-R图
    • 3.2 系统用列图
    • 3.3 系统架构图

以下是三个设计图的展示

系统E-R图

系统用列图

统架构图

Java web期末项目第一阶段成果发表的更多相关文章

  1. JAVA WEB期末项目第二阶段成果

    我们做的系统是一个基于Java web与MySQL的食堂订餐系统 班级: 计科二班 小组成员:李鉴宣.袁超 1.开发环境 开发编辑器使用:Visual Studio Code 数据库使用:MySQL8 ...

  2. JAVA Web期末项目第三阶段成果

    我们做的系统是一个基于Java web与MySQL的食堂点餐系统 班级: 计科二班 小组成员:李鉴宣.袁超 项目的测试 在系统部署到云服务器之前,已经在本机上进行了部署测试,通过mvn打包生成war文 ...

  3. IDEA Java Web(Spring)项目从创建到打包(war)

    创建Maven管理的Java Web应用 创建新项目,"create new project",左侧类型选择"maven",右侧上方选择自己的SDK,点击&qu ...

  4. 【转】IntelliJ IDEA 创建 hello world Java web Maven项目

    学Java的大部分吧都是要整Java web开发项目的,那么最好用的编辑器估计就是这个 IntelliJ IDEA,然后现在maven管理项目是很流行的.然后我就示范一下,如何使用这个IntelliJ ...

  5. IntelliJ IDEA 创建 hello world Java web Maven项目从头到尾都有图有真相2017版本

    学Java的大部分吧都是要整Java web开发项目的,那么最好用的编辑器估计就是这个 IntelliJ IDEA,然后现在maven管理项目是很流行的.然后我就示范一下,如何使用这个IntelliJ ...

  6. docker简单入门之使用docker容器部署简单的java web开源项目jpress博客程序

    一.在centos7.3上安装docker 前置条件 x86_64-bit 系统 kernel 3.10+ .检查内核版本,返回的值大于3.10即可 [root@node1 ~]# uname -r ...

  7. 学生信息的添加 Java web简单项目初试(修改)

    错误原因: 1.Java web 的Servlet类没有配置好,并且缺少一个 Dao类(Date Access Object通常用于操作数据库的). 2.代码的某些名称错误,导致数据库数据存储错误. ...

  8. 第一次正式java web开发项目的总结

    去年下半年到现在,因为公司人员流动,也有好几个新进的员工分给我来带领,也有刚从学校出来的,在和他们交流的过程中,不由的想起自己刚刚进入这行的一些感想. 记得自己当初写过一篇总结的,我想这些对于刚出校门 ...

  9. 电子商务系统+java+web+完整项目+包含源码和数据库Java实用源码

    鸿鹄云商大型企业分布式互联网电子商务平台,推出PC+微信+APP+云服务的云商平台系统,其中包括B2B.B2C.C2C.O2O.新零售.直播电商等子平台. 分布式.微服务.云架构电子商务平台 java ...

随机推荐

  1. 求素数的一个快速算法 Python 快速输出素数算法

    思想 以100以内为例. 生成一个全是True的101大小的数组 2开始,遇到2的倍数(4,6,8,10...)都赋值为False 因为这些数字都有因子 2 3开始,遇到3的倍数(6,9,12...) ...

  2. Python操作redis总结

    安装模块及配置 首先安装redis,在Ubuntu下输入指令pip install redis即可.下载完成后,cd到指定目录下,打开指定文件,如下图所示: 输入密码打开后,修改指定地方的内容,与上篇 ...

  3. Linux-进程状态和system函数

    1.进程的5种状态 (1).就绪态. 这个进程当前所有运行条件就绪,只要得到CPU时间就能直接运行. (2).运行态 就绪态时得到了CPU就进入运行态开始运行. (3).僵尸态 进程已经结束但是父进程 ...

  4. python-day8爬虫基础之数据存储

    数据存储,在爬虫中也是十分的重要,因为我们要把我们想要的数据保存到本地,其中最简单直接的就是保存为文件文本,比如:TXT.JSON.CSV等等,除此之外,我们还可以将其保存到数据库中,常见的数据库类型 ...

  5. Graph & Trees3 - 二分图

    \[二分图略解\] \[By\;TYQ\] 二分图定义: \(f(i,L) = [a \in L\;\text{&}\;\forall b \in a.to \;\text{,}\; b \n ...

  6. Python笔记_第三篇_面向对象_2.构造函数和析构函数(含self说明)

    1. 构造函数: 为什么要有构造函数? 打一个比方:类的创建就是好比你创建了好了一种格式的房间,你租给上一个住户的后,里面会对方很多“垃圾”和不规则的物品摆放.构造函数就是下一个住户再使用的时候进行物 ...

  7. 吴裕雄--天生自然 JAVA开发学习:多态

    Parent p = new Child(); public class Test { public static void main(String[] args) { show(new Cat()) ...

  8. dubbo通信协议对比

    对dubbo的协议的学习,可以知道目前主流RPC通信大概是什么情况,本文参考dubbo官方文档 http://dubbo.io/User+Guide-zh.htm dubbo共支持如下几种通信协议: ...

  9. ubuntu下切换默认的python版本

    Ubuntu系统自带python2.7(默认)和python3.5,所以不需要自己安装python.我们可以使用命令python -V或python3 -V来查看默认的python版本. 现在越来越多 ...

  10. zabbix监控Linux服务器CPU使用率大于40%的时候报警(实践版)

    zabbix自带的模板里面有监控项,所以监控项就不用创建了,直接创建触发器就可以了,触发器细节如下: 名称:CPU使用率大于40% 严重性:严重 表达式:{121.201.54.50:system.c ...