怎么用ps做网站首页图片,泰安网签查询系统,怎么给自己的网站做seo,济南市建设工程招标网摘 要 本论文主要论述了如何使用SSM框架开发一个大学食堂订餐系统APP#xff0c;将严格按照软件开发流程进行各个阶段的工作#xff0c;面向对象编程思想进行项目开发。在引言中#xff0c;作者将论述大学食堂订餐系统APP的当前背景以及系统开发的目的#xff0c;后续章节将… 摘 要 本论文主要论述了如何使用SSM框架开发一个大学食堂订餐系统APP将严格按照软件开发流程进行各个阶段的工作面向对象编程思想进行项目开发。在引言中作者将论述大学食堂订餐系统APP的当前背景以及系统开发的目的后续章节将严格按照软件开发流程对系统进行各个阶段分析设计。 大学食堂订餐系统APP的主要使用者分为管理员和订餐用户实现功能包括首页轮播图管理系统公告管理系统用户管理员订餐用户模块管理菜品展示菜品类型菜品订单发货通知评价反馈等功能。由于本网站的功能模块设计比较全面所以使得整个大学食堂订餐系统APP信息管理的过程得以实现。 本系统的使用可以实现食堂订餐的电子化可以方便管理员更加方便快捷进行信息管理可以提高订餐用户的订餐效率。 关键词大学食堂订餐系统APPMYSQL数据库SSM框架 Abstract This paper mainly discusses how to develop a university cafeteria ordering system APP using the SSM framework, strictly following the software development process for each stage of work, and using object-oriented programming ideas for project development. In the introduction, the author will discuss the current background of the university cafeteria ordering system APP and the purpose of system development. Subsequent chapters will strictly follow the software development process to analyze and design the system at each stage. The main users of the university cafeteria ordering system APP are divided into administrators and ordering users. The implementation functions include: homepage, rotation chart management, system announcement management, system users (administrators, ordering users), module management (dish display, dish type, dish order, delivery notification, evaluation feedback), and other functions. Due to the comprehensive design of the functional modules on this website, the entire process of information management in the university cafeteria ordering system APP has been achieved. The use of this system can achieve electronic ordering in the cafeteria, facilitate administrators to manage information more conveniently and quickly, and improve the efficiency of ordering users. Key words: University cafeteria ordering system APP; MYSQL database; SSM Framework 目 录 摘 要 Abstract 1 绪论 1.1研究背景 1.2研究现状 1.3研究内容 2 系统开发环境 2.1 Android开发工具 2.2 Mysql数据库 2.3 SSM框架 2.4 Java开发语言 3 系统分析 3.1 可行性分析 3.1.1 技术可行性 3.1.2操作可行性 3.1.3 经济可行性 3.1.4 法律可行性 3.2 系统性能分析 3.3 系统功能分析 3.4系统流程分析 3.2.1系统开发流程 3.2.2 用户登录流程 3.2.3 系统操作流程 3.2.4 添加信息流程 3.2.5 修改信息流程 3.2.6 删除信息流程 4 系统设计 4.1系统概要设计 4.2系统结构设计 4.3系统顺序图设计 4.3.1登录模块顺序图 4.3.2添加信息模块顺序图 4.4数据库设计 4.4.1数据库E-R图设计 4.4.2数据库表设计 第5章 系统详细设计 5.1订餐用户功能模块 5.2管理员功能模块 6 系统测试 6.1 测试定义 6.2 测试目的 6.3测试方案 6.4系统分析 7 结论 参考文献 谢辞 1 绪论 1.1研究背景 随着市场经济化GDP的飞速增长人们的生活水平也日益增高。高速的生活节奏使人们变得越来越匆忙不论是学生还是上班族传统的吃完饭去上班上课下班放学吃饭的节奏已经不能适应这高速奔跑的社会。随着餐饮行业以及信息产业的迅猛增长社会竞争的日益激烈化优质的服务高效经济的管理成为餐饮业的竞争保障。在巨大市场和客观利润的刺激下餐饮业突飞猛进。在校园里食堂作为人流量巨大所处环境复杂的一个场所为了更好的服务师生满足大家的需求面临的诸多管理问题需要得到解决。食堂的转型是必然趋势易于管理具有可扩展性的食堂订餐系统APP的开发是非常有必要的。 1.2研究现状 国际互联网的出现使市场竞争愈加激烈人们感叹世界日益变小的同时也体会到要想在各行各业中立于不败之地企业高效的管理和计算机信息系统建设至关重要。餐饮业作为我国第三产业中的一个传统服务性行业始终保持着旺盛的增长势头取得了突飞猛进的发展展现出繁荣兴旺的新局面。 我国餐饮业总体仍处于小、散、弱的状态90%以上的餐饮企业为小企业。此外餐饮企业特色和个性化经营更加明显管理更趋于信息化而且加上名优企业品牌扩展力度加大、餐饮企业集团化步伐加快等特点均显示着传统餐饮正逐步向现代餐饮方向转化而现代餐饮最显著一个特征就是使用计算机信息化管理系统这也是餐饮企业经营者们的共识。计算机信息化管理系统以信息量大、数据准确、速度快、管理效能高特点已获得了广大餐饮企业管理者认可它克服了人为因素、人情因素造成企业管理上的不便明显提高了工作效率。例如它能够帮助管理者解决在经营中常遇到各种现实问题如何杜绝内部管理漏洞和避免人为错误给企业造成损失如何为顾客提供全方位满意服务如何了解每个员工的具体工作情况。餐饮行业体现着各国的餐饮文化并且在席卷全球的都市化潮流中表现出强劲的成长与盈利能力。我国餐饮行业很有发展潜力空间还很大所以适合餐饮发展的软件如食堂订餐系统APP开发很有价值与前景。 1.3研究内容 该大学食堂订餐系统APP的开发和设计根据系统用户的实际情况出发对系统的需求进行了详细的分析然后进行系统的整体设计最后通过测试使得系统设计的更加完整可以实现系统中所有的功能在开始编写论文之前亲自到图书馆借阅SSM框架、APP开发书籍MYSQL数据库书籍等编程书籍然后针对开发的大学食堂订餐系统APP去网上查找了很多别人做好的类似系统参照他们的设计结果来对自己的系统进行更加详细的系统的设计将系统中所有的功能结果一一列举出来然后进行需求分析最后对所有的功能模块进行编码最后完成系统的整体测试实现系统的正常运行。 这次编写的论文包含了6个部分的内容具体内容如下 第一部分绪论文章主要从课题背景以及研究现状综合阐述了开发此系统的必要性。 第二部分相关技术系统开发用到的各种技术都大致做出了简介。 第三部分系统分析对系统的可行性分析以及对所有功能需求进行详细的分析来查看该系统是否具有开发的可能。 第四部分系统设计功能模块设计和数据库设计这两部分内容都有专门的表格和图片表示。 第五部分系统实现进行系统主要功能模块的界面展示。 第六部分系统测试测试系统的每一个功能是否能够正常运行是否可以满足人们的需求。 2 系统开发环境 2.1 Android开发工具 Android是基于Linux内核的操作系统早期由Google开发后由开放手机联盟开发。它采用了软件堆的架构主要分为三部分。底层以Linux内核工作为基础只提供基本功能其他的应用软件则由各公司自行开发以Java作为编写程序的一部分。另外为了推广此技术Google和其它几十个手机公司建立了开放手机联盟。Android在未公开之前常被传闻为GPhone。 它采用了软件堆层software stack又名软件叠层的架构主要分为三部分底层以Linux核心为基础由c语言开发只提供基本功能。中间层包括函数库Library和虚拟机Virtual Machine由C开发。最上层是各种应用软件包括通话程序短信程序等应用软件则由各公司自行开发以Java编写。 2.2 Mysql数据库 Mysql是一个多系统用户、多线程的服务器采用SQL的数据库数据库管理系统是基于SQL的客户以及服务器模式的关系它的优点有强大的功能、操作简单、管理方便、可靠安全、运行较快、多线程、跨平台性、完全网络化、稳定性等非常适合Web站点或者其他应用软件在数据库后端的开发。此外利用许多语言会员可以编写和访问Mysql数据库的程序。Mysql数据库也是开放源代码的开发者越来越喜欢使用Mysql关系数据库应用范围也被推而广之。这是由于速度快和易用性 Web站点或应用软件的数据库后端的开发也都在使用它。 mysql 数据库它有很多的优点例如它在操作上能够让人通俗易懂、功能强大、信息储存量高等优点。所以被人们广泛应用对于mysql数据库来说它一般主要是对数据进行编码和查询而且在很多的设计当中都应用到了该数据库在此过程当中我们可以对常规的数据进行查询和组合所以我们在进行使用mysql数据库的时候只要对编写一小段的数据就能实现相应的功能。数据库就是数据存储的储藏室只不过数据是存储在计算机上的而不是现实中的储藏室数据的存放是按固定格式而不是无序的则定义就是 长期有固定格式可以共享的存储在计算机存储器上。数据库管理主要包括数据表的建立数据存储、修改和增加数据为了使数据库系统能够正常运行相关人员进行的管理工作。数据表的建立可以对数据表中的数据进行调整数据的重新组合及重新构造保证数据的安全性。 2.3 SSM框架 当今流行的“SSM组合框架”是Spring SpringMVC MyBatis的缩写受到很多的追捧“组合SSM框架”是强强联手、各司其职、协调互补的团队精神。web项目的框架通常更简单的数据源。Spring属于一个轻量级的反转控制框架(IoC)但它也是一个面向表面的容器(AOP)。SpringMVC常常用于控制器的分类工作模式与模型对象分开程序对象的作用与自动取款机进行处理。这种解耦治疗使整个系统的个性化变得更加容易。MyBatis是一个良好的可持续性框架支持普通SQL查询同时允许对存储过程的高级映射进行数据的优化处理。大型Java Web应用程序的由于开发成本太高开发后难以维护和开发过程中一些难以解决的问题而采用“SSM组合框架”它允许建立业务层次结构并为这个问题提供良好的解决方案。 2.4 Java开发语言 Java主要采用CORBA技术和安全模型可以在互联网应用的数据保护。它还提供了对EJBEnterprise JavaBeans的全面支持Java servlet APIJSPJava server pages和XML技术。Java语言是一种面向对象的语言它通过提供最基本的方法来完成指定的任务开发者只需要知道一些概念就能够编写出一些应用程序。Java程序相对较小其代码能够在小机器上运行。Java是一种计算机编程语言具有封装、继承和多态性三个主要特性广泛应用于企业Web应用程序开发和移动应用程序开发。 Java语言和一般编译器以及直译的区别在于Java首先将源代码转换为字节码然后将其转换为JVM的可执行文件JVM可以在各种不同的JVM上运行。因此实现了它的跨平台特性。虽然这使得Java在早期非常缓慢但是随着Java的开发它已经得到了改进。 3 系统分析 所谓系统分析就是需求人员通过与系统用户的沟通所获取的信息然后把这些信息通过需求说明书的方式展示给系统用户和开发人员。在软件功能发展的历史长河中很长时间特别是最开始的时候需求分析的重要性并不被人们所认同例如当时美国IBM公司为英国电信公司开发一套信息管理系统在需求不明确的情况下开始开发最初的工期为一年由于需求获取不清晰导致工期推迟了半年多造成巨大损失。我们很多软件公司也存在这种情况边需求边开发甚至与系统用户没有沟通清楚的情况下直接照搬同类型的项目进行更改导致到系统验收的时候重新更改造成了人力、物力的极大浪费。而导致这一切后果的原因就是需求获取不及时、不清楚、不全面。 3.1 可行性分析 大学食堂订餐系统APP主要目标是方便管理员更加方便快捷管理菜品、订单等信息方便用户线上订购菜品可以提高系统用户的订餐效率。在确定了目标后我们从以下四方面对能否实现本系统目标进行可行性分析。 3.1.1 技术可行性 大学食堂订餐系统APP主要采用SSM框架Mysql数据库对于应用程序的开发要求具备完整功能使用简单的特点并建立一个数据完整安全稳定的数据库。大学食堂订餐系统APP的开发技术具有很高可行性且开发人员掌握了一定的开发技术所以系统的开发具有可行性。 3.1.2操作可行性 大学食堂订餐系统APP的登录界面简单易于操作采用常见的界面窗口来登录界面通过电脑进行访问操作会员只要平时使用过电脑都能进行访问操作。此系统的开发采用SSM框架Mysql数据库这些开发环境使系统更加完善。本系统具有易操作、易管理、交互性好的特点在操作上是非常简单的。因此本系统可以进行开发。 3.1.3 经济可行性 大学食堂订餐系统APP采用Mysql数据库储存数据所要求的硬件和软件环境市场上都很容易购买程序开发主要是管理系统的开发和维护。所以程序在开发人力、财力上要求不高而且此系统不是很复杂开发周期短在经济方面具有较高的可行性。 3.1.4 法律可行性 此大学食堂订餐系统APP是自己设计的管理系统具有很大的实际意义。因为无论是软件还是数据库采用的都是开源代码因此这个系统的开发和设计并不存在侵权等问题在法律上完全具有可行性。 综上所述大学食堂订餐系统APP在技术、经济、操作和法律上都具有很高的可行性开发此程序是可行的。 3.2 系统性能分析 1系统响应效率页面响应时问应该在3秒以内最长不能超过4秒并支持至少10000人同时在线所有系统。 2界面简洁清晰系统界面要求简单明了容易操作符合系统用户操作习惯。 3储存性高因为大学食堂订餐系统APP中有很多的信息需要存储因此对于系统的存储量有很大的要求需要有一个强大的数据库的支持才能确保所有的信息都能安全稳定的进行存储。 4易学性该系统在操作上必须简单好上手没有很多复杂的操作只需要简单的进行学习就能操作该系统。 5稳定性开发的大学食堂订餐系统APP要求运行稳定运行过程中无界面不清楚、字体模糊等现象。 3.3 系统功能分析 本大学食堂订餐系统APP主要包括两大功能模块即管理员功能模块和订餐用户模块。 1管理员模块系统中的核心系统用户是系统管理员管理员登录后通过管理员菜单来管理后台系统。主要功能有后台首页轮播图管理系统公告管理系统用户管理员订餐用户模块管理菜品展示菜品类型菜品订单发货通知评价反馈等。管理员用例图如图3-1所示。 图3-1 管理员用例图 2订餐用户主要功能有首页菜品展示系统公告我的基本信息收藏菜品订单发货通知评价反馈等如图3-2所示。 图3-2 系统用户用例图 3.4系统流程分析 3.2.1系统开发流程 大学食堂订餐系统APP开发时首先进行需求分析进而对系统进行总体的设计规划设计系统功能模块数据库的选择等本系统的开发流程如图3-3所示 图3-3系统开发流程图 3.2.2 用户登录流程 为了保证系统的安全性要使用本系统对系统信息进行管理必须先登陆到系统中。如图3-43-5所示。 图3-4 登录流程图 图3-5 添加信息流程图 3.2.3 系统操作流程 用户打开并进入系统后会先显示登录界面输入正确的用户名和密码系统自动检测信息若信息无误则用户会进入系统功能界面进行操作否则会提示错误无法登录操作流程如图3-6所示。 图3-6 系统操作流程图 3.2.4 添加信息流程 管理员可以对菜品信息等进行添加系统用户可以对自己权限内的信息进行添加输入信息后系统会自行验证输入的信息和数据若信息正确会将其添加到数据库内若信息有误则会提示重新输入信息添加信息流程如图3-7所示。 图3-7 添加信息流程图 3.2.5 修改信息流程 管理员可以对菜品信息等进行的修改系统用户可以对自己权限内的信息进行修改首先进入修改信息界面输入修改信息数据系统进行数据的判断验证修改信息合法则修改成功信息更新至数据库信息不合法则修改失败重新输入。修改信息流程图如图3-8所示。 图3-8 修改信息流程图 3.2.6 删除信息流程 管理员可以对菜品信息等进行信息的删除对要删除的信息进行选中后点击删除按钮系统会询问是否确定若点击确定则系统会删除掉选中的信息并在数据库内对信息进行删除删除信息流程图如图3-9所示。 图3-9 删除信息流程图 4 系统设计 4.1系统概要设计 本大学食堂订餐系统APP选择B/S结构(Browser/Server,浏览器/服务器结构)和基于APP的两种模式。适合在互联网上进行操作只要系统用户能连网任何时间、任何地点都可以进行系统的操作使用。系统工作原理图如图4-1所示 图4-1 系统工作原理图 4.2系统结构设计 整个系统是由多个功能模块组合而成的要将所有的功能模块都一一列举出来然后进行逐个的功能设计使得每一个模块都有相对应的功能设计然后进行系统整体的设计。 本大学食堂订餐系统APP结构图如图4-2所示。 图4-2 系统功能结构图 4.3系统顺序图设计 4.3.1登录模块顺序图 登录模块主要满足了订餐用户的权限登录登录模块顺序图如图4-3所示。 图4-3 登录顺序图 4.3.2添加信息模块顺序图 管理员以及订餐用户登录后均可进行添加信息操作添加信息模块顺序图如图4-4所示。 图4-4 添加信息顺序图 4.4数据库设计 一个好的数据库可以关系到程序开发的优劣数据库设计离不开表结构的设计还有表与表之间的联系以及系统开发需要设计的数据表内容等信息。在进行数据库设计期间要结合实际情况来对数据库进行针对性的开发设计。 4.4.1数据库E-R图设计 本大学食堂订餐系统APP采用的是MYSQL数据库数据存储快因为大学食堂订餐系统APP主要的就是对信息的管理信息内容比较多这就需要好好的设计一个好的数据库分类要清楚不能添加信息的时候造成信息太过混乱设计好的数据库首先就需要先把各个实体之间的关系表达明确系统的E-R图如下图所示 图4-5系统ER图 4.4.2数据库表设计 将数据库概念设计的E-R图转换为关系数据库。在关系数据库中数据关系由数据表组成但是表的结构表现在表的字段上。 表access_token (登陆访问时长) 编号 名称 数据类型 长度 小数位 允许空值 主键 默认值 说明 1 token_id int 10 0 N Y 临时访问牌ID 2 token varchar 64 0 Y N 临时访问牌 3 info text 65535 0 Y N 4 maxage int 10 0 N N 2 最大寿命默认2小时 5 create_time timestamp 19 0 N N CURRENT_TIMESTAMP 创建时间 6 update_time timestamp 19 0 N N CURRENT_TIMESTAMP 更新时间 7 user_id int 10 0 N N 0 用户编号: 表auth (用户权限管理) 编号 名称 数据类型 长度 小数位 允许空值 主键 默认值 说明 1 auth_id int 10 0 N Y 授权ID 2 user_group varchar 64 0 Y N 用户组 3 mod_name varchar 64 0 Y N 模块名 4 table_name varchar 64 0 Y N 表名 5 page_title varchar 255 0 Y N 页面标题 6 path varchar 255 0 Y N 路由路径 7 position varchar 32 0 Y N 位置 8 mode varchar 32 0 N N _blank 跳转方式 9 add tinyint 3 0 N N 1 是否可增加 10 del tinyint 3 0 N N 1 是否可删除 11 set tinyint 3 0 N N 1 是否可修改 12 get tinyint 3 0 N N 1 是否可查看 13 field_add text 65535 0 Y N 添加字段 14 field_set text 65535 0 Y N 修改字段 15 field_get text 65535 0 Y N 查询字段 16 table_nav_name varchar 500 0 Y N 跨表导航名称 17 table_nav varchar 500 0 Y N 跨表导航 18 option text 65535 0 Y N 配置 19 create_time timestamp 19 0 N N CURRENT_TIMESTAMP 创建时间 20 update_time timestamp 19 0 N N CURRENT_TIMESTAMP 更新时间 表booking_users (订餐用户) 编号 名称 数据类型 长度 小数位 允许空值 主键 默认值 说明 1 booking_users_id int 10 0 N Y 订餐用户ID 2 user_name varchar 64 0 Y N 用户姓名 3 gender varchar 64 0 Y N 性别 4 examine_state varchar 16 0 N N 已通过 审核状态 5 recommend int 10 0 N N 0 智能推荐 6 user_id int 10 0 N N 0 用户ID 7 create_time datetime 19 0 N N CURRENT_TIMESTAMP 创建时间 8 update_time timestamp 19 0 N N CURRENT_TIMESTAMP 更新时间 表collect (收藏) 编号 名称 数据类型 长度 小数位 允许空值 主键 默认值 说明 1 collect_id int 10 0 N Y 收藏ID 2 user_id int 10 0 N N 0 收藏人ID 3 source_table varchar 255 0 Y N 来源表 4 source_field varchar 255 0 Y N 来源字段 5 source_id int 10 0 N N 0 来源ID 6 title varchar 255 0 Y N 标题 7 img varchar 255 0 Y N 封面 8 create_time timestamp 19 0 N N CURRENT_TIMESTAMP 创建时间 9 update_time timestamp 19 0 N N CURRENT_TIMESTAMP 更新时间 表comment (评论) 编号 名称 数据类型 长度 小数位 允许空值 主键 默认值 说明 1 comment_id int 10 0 N Y 评论ID 2 user_id int 10 0 N N 0 评论人ID 3 reply_to_id int 10 0 N N 0 回复评论ID空为0 4 content longtext 2147483647 0 Y N 内容 5 nickname varchar 255 0 Y N 昵称 6 avatar varchar 255 0 Y N 头像地址[0,255] 7 create_time timestamp 19 0 N N CURRENT_TIMESTAMP 创建时间 8 update_time timestamp 19 0 N N CURRENT_TIMESTAMP 更新时间 9 source_table varchar 255 0 Y N 来源表 10 source_field varchar 255 0 Y N 来源字段 11 source_id int 10 0 N N 0 来源ID 表dish_display (菜品展示) 编号 名称 数据类型 长度 小数位 允许空值 主键 默认值 说明 1 dish_display_id int 10 0 N Y 菜品展示ID 2 name_of_dish varchar 64 0 Y N 菜品名称 3 dish_type varchar 64 0 Y N 菜品类型 4 cover varchar 255 0 Y N 封面 5 unit_price_of_dishes int 10 0 Y N 0 菜品单价 6 dish_specifications varchar 64 0 Y N 菜品规格 7 dish_materials text 65535 0 Y N 菜品材料 8 details_of_dishes longtext 2147483647 0 Y N 菜品详情 9 recommend int 10 0 N N 0 智能推荐 10 create_time datetime 19 0 N N CURRENT_TIMESTAMP 创建时间 11 update_time timestamp 19 0 N N CURRENT_TIMESTAMP 更新时间 表dish_orders (菜品订单) 编号 名称 数据类型 长度 小数位 允许空值 主键 默认值 说明 1 dish_orders_id int 10 0 N Y 菜品订单ID 2 order_number varchar 64 0 Y N 订单号 3 name_of_dish varchar 64 0 Y N 菜品名称 4 dish_type varchar 64 0 Y N 菜品类型 5 cover varchar 255 0 Y N 封面 6 unit_price_of_dishes int 10 0 Y N 0 菜品单价 7 dish_specifications varchar 64 0 Y N 菜品规格 8 booking_users int 10 0 Y N 0 订餐用户 9 purchase_quantity int 10 0 Y N 0 购买数量 10 order_amount varchar 64 0 Y N 订餐金额 11 delivery_time datetime 19 0 Y N 送货时间 12 shipping_address varchar 64 0 Y N 收货地址 13 receiving_phone_number varchar 64 0 Y N 收货电话 14 order_status varchar 64 0 Y N 订单状态 15 pay_state varchar 16 0 N N 未支付 支付状态 16 pay_type varchar 16 0 Y N 支付类型: 微信、支付宝、网银 17 recommend int 10 0 N N 0 智能推荐 18 create_time datetime 19 0 N N CURRENT_TIMESTAMP 创建时间 19 update_time timestamp 19 0 N N CURRENT_TIMESTAMP 更新时间 表dish_type (菜品类型) 编号 名称 数据类型 长度 小数位 允许空值 主键 默认值 说明 1 dish_type_id int 10 0 N Y 菜品类型ID 2 dish_type varchar 64 0 Y N 菜品类型 3 recommend int 10 0 N N 0 智能推荐 4 create_time datetime 19 0 N N CURRENT_TIMESTAMP 创建时间 5 update_time timestamp 19 0 N N CURRENT_TIMESTAMP 更新时间 表evaluation_feedback (评价反馈) 编号 名称 数据类型 长度 小数位 允许空值 主键 默认值 说明 1 evaluation_feedback_id int 10 0 N Y 评价反馈ID 2 order_number varchar 64 0 N N 订单号 3 name_of_dish varchar 64 0 Y N 菜品名称 4 dish_type varchar 64 0 Y N 菜品类型 5 cover varchar 255 0 Y N 封面 6 unit_price_of_dishes int 10 0 Y N 0 菜品单价 7 dish_specifications varchar 64 0 Y N 菜品规格 8 booking_users int 10 0 Y N 0 订餐用户 9 purchase_quantity int 10 0 Y N 0 购买数量 10 order_amount varchar 64 0 Y N 订餐金额 11 delivery_time datetime 19 0 Y N 送货时间 12 shipping_address varchar 64 0 Y N 收货地址 13 receiving_phone_number varchar 64 0 Y N 收货电话 14 evaluation_content text 65535 0 Y N 评价内容 15 examine_state varchar 16 0 N N 未审核 审核状态 16 examine_reply varchar 16 0 Y N 审核回复 17 recommend int 10 0 N N 0 智能推荐 18 create_time datetime 19 0 N N CURRENT_TIMESTAMP 创建时间 19 update_time timestamp 19 0 N N CURRENT_TIMESTAMP 更新时间 表hits (用户点击) 编号 名称 数据类型 长度 小数位 允许空值 主键 默认值 说明 1 hits_id int 10 0 N Y 点赞ID 2 user_id int 10 0 N N 0 点赞人 3 create_time timestamp 19 0 N N CURRENT_TIMESTAMP 创建时间 4 update_time timestamp 19 0 N N CURRENT_TIMESTAMP 更新时间 5 source_table varchar 255 0 Y N 来源表 6 source_field varchar 255 0 Y N 来源字段 7 source_id int 10 0 N N 0 来源ID 表notice (公告) 编号 名称 数据类型 长度 小数位 允许空值 主键 默认值 说明 1 notice_id mediumint 8 0 N Y 公告id 2 title varchar 125 0 N N 标题 3 content longtext 2147483647 0 Y N 正文 4 create_time timestamp 19 0 N N CURRENT_TIMESTAMP 创建时间 5 update_time timestamp 19 0 N N CURRENT_TIMESTAMP 更新时间 表praise (点赞) 编号 名称 数据类型 长度 小数位 允许空值 主键 默认值 说明 1 praise_id int 10 0 N Y 点赞ID 2 user_id int 10 0 N N 0 点赞人 3 create_time timestamp 19 0 N N CURRENT_TIMESTAMP 创建时间 4 update_time timestamp 19 0 N N CURRENT_TIMESTAMP 更新时间 5 source_table varchar 255 0 Y N 来源表 6 source_field varchar 255 0 Y N 来源字段 7 source_id int 10 0 N N 0 来源ID 8 status bit 1 0 N N 1 点赞状态:1为点赞0已取消 表shipping_notice (发货通知) 编号 名称 数据类型 长度 小数位 允许空值 主键 默认值 说明 1 shipping_notice_id int 10 0 N Y 发货通知ID 2 order_number varchar 64 0 N N 订单号 3 name_of_dish varchar 64 0 Y N 菜品名称 4 dish_type varchar 64 0 Y N 菜品类型 5 cover varchar 255 0 Y N 封面 6 unit_price_of_dishes int 10 0 Y N 0 菜品单价 7 dish_specifications varchar 64 0 Y N 菜品规格 8 booking_users int 10 0 Y N 0 订餐用户 9 purchase_quantity int 10 0 Y N 0 购买数量 10 order_amount varchar 64 0 Y N 订餐金额 11 delivery_time datetime 19 0 Y N 送货时间 12 shipping_address varchar 64 0 Y N 收货地址 13 receiving_phone_number varchar 64 0 Y N 收货电话 14 shipping_remarks varchar 64 0 Y N 发货备注 15 recommend int 10 0 N N 0 智能推荐 16 create_time datetime 19 0 N N CURRENT_TIMESTAMP 创建时间 17 update_time timestamp 19 0 N N CURRENT_TIMESTAMP 更新时间 表slides (轮播图) 编号 名称 数据类型 长度 小数位 允许空值 主键 默认值 说明 1 slides_id int 10 0 N Y 轮播图ID 2 title varchar 64 0 Y N 标题 3 content varchar 255 0 Y N 内容 4 url varchar 255 0 Y N 链接 5 img varchar 255 0 Y N 轮播图 6 hits int 10 0 N N 0 点击量 7 create_time timestamp 19 0 N N CURRENT_TIMESTAMP 创建时间 8 update_time timestamp 19 0 N N CURRENT_TIMESTAMP 更新时间 表upload (文件上传) 编号 名称 数据类型 长度 小数位 允许空值 主键 默认值 说明 1 upload_id int 10 0 N Y 上传ID 2 name varchar 64 0 Y N 文件名 3 path varchar 255 0 Y N 访问路径 4 file varchar 255 0 Y N 文件路径 5 display varchar 255 0 Y N 显示顺序 6 father_id int 10 0 Y N 0 父级ID 7 dir varchar 255 0 Y N 文件夹 8 type varchar 32 0 Y N 文件类型 表user (用户账户用于保存用户登录信息) 编号 名称 数据类型 长度 小数位 允许空值 主键 默认值 说明 1 user_id mediumint 8 0 N Y 用户ID[0,8388607]用户获取其他与用户相关的数据 2 state smallint 5 0 N N 1 账户状态[0,10](1可用|2异常|3已冻结|4已注销) 3 user_group varchar 32 0 Y N 所在用户组[0,32767]决定用户身份和权限 4 login_time timestamp 19 0 N N CURRENT_TIMESTAMP 上次登录时间 5 phone varchar 11 0 Y N 手机号码[0,11]用户的手机号码用于找回密码时或登录时 6 phone_state smallint 5 0 N N 0 手机认证[0,1](0未认证|1审核中|2已认证) 7 username varchar 16 0 N N 用户名[0,16]用户登录时所用的账户名称 8 nickname varchar 16 0 Y N 昵称[0,16] 9 password varchar 64 0 N N 密码[0,32]用户登录所需的密码由6-16位数字或英文组成 10 email varchar 64 0 Y N 邮箱[0,64]用户的邮箱用于找回密码时或登录时 11 email_state smallint 5 0 N N 0 邮箱认证[0,1](0未认证|1审核中|2已认证) 12 avatar varchar 255 0 Y N 头像地址[0,255] 13 create_time timestamp 19 0 N N CURRENT_TIMESTAMP 创建时间 表user_group (用户组用于用户前端身份和鉴权) 编号 名称 数据类型 长度 小数位 允许空值 主键 默认值 说明 1 group_id mediumint 8 0 N Y 用户组ID[0,8388607] 2 display smallint 5 0 N N 100 显示顺序[0,1000] 3 name varchar 16 0 N N 名称[0,16] 4 description varchar 255 0 Y N 描述[0,255]描述该用户组的特点或权限范围 5 source_table varchar 255 0 Y N 来源表 6 source_field varchar 255 0 Y N 来源字段 7 source_id int 10 0 N N 0 来源ID 8 register smallint 5 0 Y N 0 注册位置: 9 create_time timestamp 19 0 N N CURRENT_TIMESTAMP 创建时间 10 update_time timestamp 19 0 N N CURRENT_TIMESTAMP 更新时间 第5章 系统详细设计 5.1订餐用户功能模块 订餐用户登录大学食堂订餐系统APP在系统首页可以查页菜品展示系统公告我的基本信息收藏菜品订单发货通知评价反馈等功能如图5-1所示。 图5-1系统首页界面图 订餐用户注册在注册页面通过填写账户、密码、确认密码、昵称、邮箱、手机、身份等信息完成用户注册如图5-2所示。 图5-2用户注册界面图 图5-3用户登录界面图 注册代码如下 /** * 注册 * return */ PostMapping(register) public MapString, Object signUp(HttpServletRequest request) throws IOException { // 查询用户 MapString, String query new HashMap(); MapString,Object map service.readBody(request.getReader()); query.put(username,String.valueOf(map.get(username))); List list service.selectBaseList(service.select(query, new HashMap())); if (list.size()0){ return error(30000, 用户已存在); } map.put(password,service.encryption(String.valueOf(map.get(password)))); service.insert(map); return success(1); } public MapString,Object readBody(BufferedReader reader){ BufferedReader br null; StringBuilder sb new StringBuilder(); try{ br reader; String str; while ((str br.readLine()) ! null){ sb.append(str); } br.close(); String json sb.toString(); return JSONObject.parseObject(json, Map.class); }catch (IOException e){ e.printStackTrace(); }finally{ if (null ! br){ try{ br.close(); }catch (IOException e){ e.printStackTrace(); } } } return null; } public void insert(MapString,Object body){ E entity JSON.parseObject(JSON.toJSONString(body),eClass); baseMapper.insert(entity); log.info([{}] - 插入操作{},entity); } 登陆代码如下 /** * 登录 * param data * param httpServletRequest * return */ PostMapping(login) public MapString, Object login(RequestBody MapString, String data, HttpServletRequest httpServletRequest) { log.info([执行登录接口]); String username data.get(username); String email data.get(email); String phone data.get(phone); String password data.get(password); List resultList null; QueryWrapper wrapper new QueryWrapperUser(); MapString, String map new HashMap(); if(username ! null .equals(username) false){ map.put(username, username); resultList service.selectBaseList(service.select(map, new HashMap())); } else if(email ! null .equals(email) false){ map.put(email, email); resultList service.selectBaseList(service.select(map, new HashMap())); } else if(phone ! null .equals(phone) false){ map.put(phone, phone); resultList service.selectBaseList(service.select(map, new HashMap())); }else{ return error(30000, 账号或密码不能为空); } if (resultList null || password null) { return error(30000, 账号或密码不能为空); } //判断是否有这个用户 if (resultList.size()0){ return error(30000,用户不存在); } User byUsername (User) resultList.get(0); MapString, String groupMap new HashMap(); groupMap.put(name,byUsername.getUserGroup()); List groupList userGroupService.selectBaseList(userGroupService.select(groupMap, new HashMap())); if (groupList.size()1){ return error(30000,用户组不存在); } UserGroup userGroup (UserGroup) groupList.get(0); //查询用户审核状态 if (!StringUtils.isEmpty(userGroup.getSourceTable())){ String res service.selectExamineState(userGroup.getSourceTable(),byUsername.getUserId()); if (resnull){ return error(30000,用户不存在); } if (!res.equals(已通过)){ return error(30000,该用户审核未通过); } } //查询用户状态 if (byUsername.getState()!1){ return error(30000,用户非可用状态不能登录); } String md5password service.encryption(password); if (byUsername.getPassword().equals(md5password)) { // 存储Token到数据库 AccessToken accessToken new AccessToken(); accessToken.setToken(UUID.randomUUID().toString().replaceAll(-, )); accessToken.setUser_id(byUsername.getUserId()); tokenService.save(accessToken); // 返回用户信息 JSONObject user JSONObject.parseObject(JSONObject.toJSONString(byUsername)); user.put(token, accessToken.getToken()); JSONObject ret new JSONObject(); ret.put(obj,user); return success(ret); } else { return error(30000, 账号或密码不正确); } } public String select(MapString,String query,MapString,String config){ StringBuffer sql new StringBuffer(select ); sql.append(config.get(FindConfig.FIELD) null || .equals(config.get(FindConfig.FIELD)) ? * : config.get(FindConfig.FIELD)).append( ); sql.append(from ).append().append(table).append().append(toWhereSql(query, 0.equals(config.get(FindConfig.LIKE)))); if (config.get(FindConfig.GROUP_BY) ! null !.equals(config.get(FindConfig.GROUP_BY))){ sql.append(group by ).append(config.get(FindConfig.GROUP_BY)).append( ); } if (config.get(FindConfig.ORDER_BY) ! null !.equals(config.get(FindConfig.ORDER_BY))){ sql.append(order by ).append(config.get(FindConfig.ORDER_BY)).append( ); } if (config.get(FindConfig.PAGE) ! null !.equals(config.get(FindConfig.PAGE))){ int page config.get(FindConfig.PAGE) ! null !.equals(config.get(FindConfig.PAGE)) ? Integer.parseInt(config.get(FindConfig.PAGE)) : 1; int limit config.get(FindConfig.SIZE) ! null !.equals(config.get(FindConfig.SIZE)) ? Integer.parseInt(config.get(FindConfig.SIZE)) : 10; sql.append( limit ).append( (page-1)*limit ).append( , ).append(limit); } log.info([{}] - 查询操作sql: {},table,sql); return sql.toString(); } public List selectBaseList(String select) { ListMapString,Object mapList baseMapper.selectBaseList(select); ListE list new ArrayList(); for (MapString,Object map:mapList) { list.add(JSON.parseObject(JSON.toJSONString(map),eClass)); } return list; } 菜品展示在此页面可以查看推荐的菜品列表可以通过搜索菜品名称选择菜品类型等方式查找菜品还可以进行详情查看收藏评论下单购买等操作如图下图所示。 图5-4菜品展示列表界面图 图5-5详情界面图 菜品订单订餐用户在菜品展示页面输入购买数量订餐金额送货时间收货地址收货电话等信息下单购买菜品在菜品订单界面可以查看订单状态等详情信息也可进行支付如图下图所示。 图5-6下单购买界面图 图5-7菜品订单界面图 5.2管理员功能模块 管理员登录通过填写注册时输入的账号、密码进行登录如下图所示。 图5-8管理员登录界面图 管理员登录进入大学食堂订餐系统APP可以查看后台首页轮播图管理系统公告管理系统用户管理员订餐用户模块管理菜品展示菜品类型菜品订单发货通知评价反馈等功能信息进行相应操作如下图所示。 图5-9管理员功能界面图 系统用户管理在此页面中可以查看用户的详细信息包括昵称用户名用户姓名性别等信息还可在此页面进行添加、删除或重置等操作如下图所示。 图5-10用户管理界面图 菜品展示管理在此页面中可以查看菜品的详细信息包括菜品名称菜品类型封图菜品单价菜品规格菜品材料菜品详情等信息还可在此页面进行添加、删除或重置等操作如下图所示。 图5-11菜品展示管理界面图 图5-12添加菜品界面图 菜品订单在此页面中可以查看用户提交的订单的详细信息包括订单号菜品名称菜品类型封图菜品单价菜品规格订餐用户购买数量订餐金额送货时间收货地址收货电话订单状态等信息还可在此页面进行添加、删除、重置、发货等操作如下图所示。 图5-13菜品订单管理界面图 图5-14菜品发货界面图 评价反馈在此页面中可以查看用户提交的评价反馈的详细信息包括菜品信息订单信息评价内容等信息还可在此页面进行添加、删除、重置、审核等操作如下图所示。 图5-15评价反馈管理界面图 图5-16评价反馈审核界面图 6 系统测试 一个系统设计好后就会进入测试阶段测试的目标是检验设计好的网站是否可以正常无误的运行尽可能的发现网站的问题已使后期网站投入使用后网站尽少出错[12]。 6.1 测试定义 系统测试主要是判断系统是否可以正常运行功能模块是否可以实现操作。程序代码中是否有错误出现。测试程序是开发过程中的一个主要问题。就算系统完成的再好再进行程序测试时也会也会发现一个重来没有被发现的错误信息。 测试不仅是系统开发的开始而且应该贯穿整个系统的整个生命周期。评估系统质量的方法不局限于系统编码和过程应该与软件设计工作和历史需求分析密切相关。系统错误不一定是代码错误可能是阶段的设计摘要和设计细节存在问题问题也可能出现在需求分析阶段。从实际情况来看最初的问题很可能是一个小错误根据按钮的原理按钮后的按钮位错将是所有位错。该系统的原因也同样适用随着后续的开发工作误差将越来越严重。因此就应该对系统进行测试在一开始就发现系统中存在的问题就能保证以后系统能够正常稳定的运行。在测试系统中开发人员应该站在客户的角度来处理测试工作而现在主要的测试方法是黑盒测试。测试的目的可以概括为以下几点:首先系统用户界面和客户需求是一致的设置界面和设计风格统一;第二创新设计接口规范设计标准具有独特的审美特征;最后人类传统的接口以满足审美需求不能盲目地追求一种独特的合理的规划布局符合审美标准。 6.2 测试目的 测试的目的在于要对系统的稳定和可操作性能进行对照检查。对于软件的开发利用最终的目的在最后的测试和试用这是一个不可缺少的重要环节。对于软件开发者而言在对每一个单独的功能进行编排时候都要有单独的测试并通过测试阶段才可以研发多个功能性软件这样既缩短了研发时间也可以在的单个的早期测试中发现问题以免融合后的软件在查找问题时就很难快速解决或者急速定位问题。 大学食堂订餐系统APP开发设计完成后需要对其进行系统测试测试的主要目的就是发现并找出系统中存在的问题并及时的进行解决确保系统可以正常稳定的运行下去在进行系统测试的时候在一定要非常的认真、仔细切记不能粗心不能放过一个漏洞测试时候一定不要着急要按照之前指定好的测试步骤一步一步进行并且将测试的结果进行详细的记录我们在进行测试的时候做好选择自动化的测试这样既可以节省时间而且也能确保测试的准确性如果采用人工测试的方法就不会这么的方便由于人工测试有很多不确定的因素在测试过程中很可能会出现一些问题用机器测试就不会出现任何的问题而且机器不会疲惫会一直工作下去。在测试的时候一定要非常专注时刻关注着测试的结果一旦发现异常及时进行修改最后测试完之后的文档应该保存下来方便以后测试时用到。系统测试的方法有很多对于本大学食堂订餐系统APP的测试我们使用了测试用得最多的黑盒测试方法来对该系统进行测试。 6.3测试方案 对测试计划的把握是测试方案的重中之重。所有的技术难点应该都被包含在这个测试计划之中。而且我们要保证能与目标形成一致性以至于能够测试出一些主要存在的错误和一些错误的漏洞。可以完美解决这些问题就只有白盒测试或者黑盒测试。 构造测试是白盒测试的另一个名字了解与分析程序的结构以及性能功用的从而我们可以得到最终想要的结果并且观察出是不是每一条程序都能得到。 性能测试是黑盒测试别称程序本身的运作通过程序的进程来观察主要是看一下程序是不是能够像我们预期的目标那样发展看一看我们的程序最终能不能完整的得到我们最后想要的功能和储存想得到的数据到最后看一下我们的这个程序完整性能不能达到要求。 1模块测试 单元测试就是模块测试顾名思义就是测试每个模块所承担的功能是否能够实现这个测试就是为了找出代码在实际的设计运转中某一些小的程序所出现的偏差很好地改正这些错误就说明我们模块测试进行很成功过。 2集成测试 集成测试就是对系统的测试以及对他子系统的一些性能测试他检查的事系统的包装程序信息。找出其中的问题。他的优势主要有以下这几点 软件耗费较少。 可以提前发现端口的错误。 更好的地位系统中错误的位置。 从底部往上面进行的方案针对于偏下层的结构而中间的结构就采用折中的方法。 3验收测试 终于到了结尾性的工作了。就是为了给系统用户看一下我们的系统功能是否达到了预期的效果。我采用了性能测试也就是黑盒测试对系统进行测试。 其结果是分别是 有一定的差异在系统用户的需求。 再者就是结果与之差不了多少。 到了最后了我们发现的问题都是与系统用户的需求存在一定的关联。 1、登录测试 测试点登录 测试的目标输入账号密码以及验证码后系统会自动进行验证是否正确。 所用的环境Windows10和IE浏览器。 输入信息系统用户名、密码。 步骤 1首先我们打来浏览器进入该系统的登录界面。 2在进入页面登录部分以后可以进行对系统用户名、密码进行测试具体测试输入情况如下表6.1所示。 表6.1 登录测试 情况 系统用户名输入 密码输入 期望结果 (1) 15546219225 1244566 提示“系统用户名或者密码错误或账号未经审核” (2) aaaaa 123456 提示“系统用户名或密码错误或者账号未经审核” (3) 22 22 登陆成功 6.4系统分析 本大学食堂订餐系统APP设计要求基本都可以达到此系统具有完整的软件功能良好的系统用户界面能够正确的处理错误信息而且能够准确的提出错误的种类。但是系统测试时也出现了一些系统的不足和缺陷所以在今后的日子里我会对其视觉上的不足作出修改其次系统的代码和数据库出现了非常多的冗余现象都是因为对编程技术的应用不够熟练在日后我会加强自己的自身学习和能力减少这样的冗余现象。 经过对上述的测试结果分析本大学食堂订餐系统APP无论是在技术方面还是操作方面还是经济方面都是完全可以实行的并且经过测试该系统操作简单所有的功能都可以实现因此该系统可以满足人们的使用需求值得被推广。 总体说来软件通过测试。 7 结论 本文研究了大学食堂订餐系统APP的设计与实现在文章开端首先对个研究背景、研究现状和研究内容作了简单的介绍然后通过系统分析引申出本系统研究的主要内容。 通过本次大学食堂订餐系统APP的设计与实现的研究与实现我感触到学习一门新技术最重要的是实践只有多动手才能尽快掌握它一个系统的开发经验是最重要的经验不足就难免会有许多考虑不周之处。要想吸引更多的系统用户系统的界面必须要美观、有特色、友好功能要健全。 由于在此之前对于SSM框架知识并不了解所以从一开始就碰到许多困难例如一开始的页面显示不规范、数据库连接有问题已经无法实现参数的传递等等不过通过我不断的查阅相关的资料以及向老师同学请教最后出现的所有的问题都得到了解决通过这次的系统开发我学到了很多的知识也明白了自己在哪些方面有不足的地方尤其是学会如何从大量的信息中筛选出所需有用的信息同时我更加深刻的体会到了虽然书本上的大部分知识都是有价值正确的但实际上每个人编程的思路和对数据处理的方法、思想都是不同的这就要求我们一定要通过实践才能找到解决问题的方案。在此次毕业设计活动中我不断的提高了自己也得到了宝贵的经验我相信这些对我以后的发展都会有很大帮助。 通过这次大学食堂订餐系统APP的开发让我学到了更多的知识同时通过这次系统的设计也让我明白了自己在哪方面有不足以后加以学习争取可以开发住更多有用的适用的系统软件本次系统的设计提高了我的编程水平为了我今后系统的开发打下了结实的基础。 参考文献
[1]张静,胡宁玉,冯丽萍.基于Java的超市进销存管理系统的设计与实现[J].信息与电脑(理论版),2022,34(18):124-127131.
[2]黎洁霞,甘渐宽,王方会,白玉.基于SSM框架的新型可视化食堂管理系统[J].网络安全技术与应用,2022(08):40-41.
[3]Zheng Hongying. A Study on the Design of English Speaking Examination System Based on SSM Framework[J]. Journal of Sensors,2022,2022.
[4]刘源昭,陈伟,曹俊杰,李鹏宇,李英杰,许一靖,孙浩铭.基于SSM架构的图书管理系统[J].山西电子技术,2022(03):61-6376.
[5]彭婷.基于SSM框架的客户关系管理系统的设计与实现[J].信息与电脑(理论版),2022,34(08):137-139.
[6]陈恒,陈淑丽.基于SSM框架的学生档案管理系统的设计与实现[J].电脑知识与技术,2022,18(10):42-4347.DOI:10.14004/j.cnki.ckt.2022.0747.
[7]冯子充,秘伟,郭晓利.基于SSM架构的物流公司信息管理系统的设计[J].电脑知识与技术,2022,18(04):24-26.DOI:10.14004/j.cnki.ckt.2022.0253.
[8]李春生,李朝霞,刘涛,胡亚楠.基于SSM的科研室管理系统的研究与设计[J].计算机技术与发展,2021,31(12):148-154.
[9]王宇,夏丽丽,何颖刚.基于SSM框架的高校毕业论文管理系统的设计与实现[J].电子技术与软件工程,2021(22):26-29.
[10]徐伟峰,黄诗雯,陈旭辉.基于O2O模式的校园外卖订餐APP的设计研究[J].电子元器件与信息技术,2021,5(09):171-172175.DOI:10.19772/j.cnki.2096-4455.2021.9.079.
[11]强力,李灶娥,魏丹丹,林虎,廖莎.SSM框架下的果蔬信息管理系统设计[J].福建电脑,2021,37(09):99-101.DOI:10.16707/j.cnki.fjpc.2021.09.027.
[12]覃志宏. 移动订餐APP系统的设计与实现[D].广西大学,2021.DOI:10.27034/d.cnki.ggxiu.2021.000013.
[13]王岩. 基于SSM的保险公司营销管理系统的设计与实现[D].大连海事大学,2020.DOI:10.26989/d.cnki.gdlhu.2020.002037.
[14]. Design and Implementation of ERP System Based on SSM Framework[J]. ,2020,440(5).
[15]Hou Y. The design and implementation of the framework for SpringSpringMVCMyBatis in the development of Web application[C]//Institute of Management Science and Industrial Engineering.Proceedings of 2019 4th International Industrial Informatics and Computer Engineering Conference(IIICEC 2019).Proceedings of 2019 4th International Industrial Informatics and Computer Engineering Conference(IIICEC 2019),2019:369-374.DOI:10.26914/c.cnkihy.2019.039191.
[16]Ping Wanxin,Chen Yuankun,Hou Xiaoyan. Design of Campus Bicycle Rental Management System Based on SSM Framework[J]. Journal of Physics: Conference Series,2019,1314.
[17]Di Lu,Yuping Qiu,Chun Qian,Xi Wang,Wei Tan. Design of Campus Resource Sharing Platform based on SSM Framework[J]. IOP Conference Series: Materials Science and Engineering,2019,490(6).
[18]汪发强,熊聪聪,赵丛.基于订餐APP的食堂运营模式改革研究[J].无线互联科技,2018,15(16):128-129.
[19]杨福康,严冬梅.校园O2O订餐平台APP的设计与实现[J].电脑知识与技术,2018,14(17):127-128.DOI:10.14004/j.cnki.ckt.2018.1832.
[20]刘丙为. 基于Spring MVC的公司订餐系统的研究与开发[D].新疆大学,2018. 谢辞
本次毕业设计圆满的结束了通过这次毕业设计我学到了很多的知识也提高了我软件开发的能力在系统开发设计的过程中出现了很多的问题但是通过老师和同学们的帮助最后所有的问题都得到了解决因此我要感谢在此过程中对我帮助的老师和同学们感谢指导老师帮助我选课题给我做详细的讲解给我提供设计所需要的各种设备也经常询问我进度与成果再有难点的时候给我解决思路帮助我顺利完成。没有他的指导也不会有我今天所展现出的成果。
首先我要感谢我的指导老师指导老师在教学任务繁忙的情况下抽出时间帮助我纠正我在设计当中出现的问题并耐性地为我的论文作校正是他的定期检查和指导使得我们的毕业设计高质量完成。他在我整个课题开发和设计的过程中为程序的设计、框架的设计、代码的撰写方面以及论文框架的设计提供了很多宝贵的意见并且为我推荐了许多有用的资料和文献他的指导和建议使我受益匪浅有了指导老师的辅导和指点我论文才能够顺利完成。老师的认真负责的工作态度和治学严谨之道使我们这些即将踏入社会的毕业生受益匪浅。
然后要感谢我的同学们感谢大家对我这次毕业设计的帮助 也感谢大家在大学生活中对我的陪伴使得我的大学生活过的很快乐。
另外我还要感谢父母感谢一直以来对我的支持让我能够顺利的完成我的学业没有你们也就没有我的今天感谢你们无私的付出未来我一定会报答你们的。最后感谢在座的所有参加我论文答辩的老师们感谢大家的聆听你们辛苦了。 关注点赞收藏私信博主免费领取项目源码