基于Spring Boot技术微信平台的校园食堂智能点餐系统
2018-08-07辽宁科技学院薛晶晶王彦明
辽宁科技学院 薛晶晶 王彦明
1.研究背景
SpringBoot的出现让Spring变得更易于开发和维护,Spring Boot提供了一种新的编程范式,能在最小的阻力下开发Spring应用程序。有了它,你可以更加敏捷地开发Spring应用程序,专注于应用程序的功能,不用在Spring的配置上多花功夫,甚至完全不用配置。本项目以SpringBoot框架为核心设计开发一套微信点餐系统。
2.设计思路及创新点
2.1 设计思路
我们是准备通过一个移动的端口与PC端口相结合,并且配合了一下饿了么和美团的方式,不过我们的不只是送餐服务,因为我们这里的重点是通过与学校食堂来与同学建立连接,犹如我们到银行去取票排队一样,我们的就餐前在网上就已经取票排队了,并且同学们点好自己需要的餐食下课后去取就可以,食堂也先一步准备好了。
2.2 设计
本项目运用最前沿的Spring Boot技术和生活中应用最广泛微信平台的打造一款智能点餐系统,SpringBoot作为一个微框架有诸多好处,它继承了原有Spring框架的优秀基因,不用自己做配置,改进了Spring配置繁琐麻烦的缺点基于上述优点SpringBoot特别适合本项目的研发。
2.3 功能
(1)统一混乱的点餐方式和支付方式,随时随地下单点餐,不用在下课后拥挤在档口前集中刷卡付费,轻松,自由。在线支付,省去了携带饭卡给饭卡的累赘,食堂工作人员也不用一边配餐一边挨个确认,避免的出错,提高了效率避免食堂档口的拥挤摩擦
(2)订单直接下达后厨,食堂按订单备餐高效,准确,减轻工作压力,提高服务质量。降低中间流程的出错率,更节省沟通成本。增加了评价和推送功能,使得菜品信息更好更快的在学生之间流通,不但督促商家提高服务质量,也为学生提高就餐体验,推送功能也为商家提供最方便最高效的宣传方式,学生也能第一时间获取新品信息。
(3)由于有预约订餐功能,食堂和档口可以根据订单情况提前安排备餐,灵活高效,当订单过多的时候提前加大供应,避免利润损失,当订单减少时,减少工艺,避免浪费。不用再集中短时间配餐也降低了食堂工作人员的工作强度和出错概率。
3.各个模块介绍
3.1 前端介绍
买家端是一个非常重要的端口,需要设计的新颖和有特点,并且功能需要相对的齐全以及后期可以添加许多经过市场的论证的功能以及减少冗余的部分舍得APP更加的简单化和智能化,并且可以通过大数据的计算来相应的推荐大家适合的以及喜欢的食物。
3.2 后端介绍
本项目着力研究后端设计方案,主要是数据库的设计和缓存设计,主要应用使用Spring boot 技术,Spring boot可以轻松的创建独立运行的程序,非常容易构建独立的服务组件,是实现分布式架构、微服务架构利器。Spring boot简化了第三方包的引用,通过提供的starter,简化了依赖包的配置。Boot及其CLI可以通过GVM的命令行gvm install springboot进行安装。要进行打包和分发的工程会依赖于像Maven或Gradle这样的构建系统。为了简化依赖图,Boot的功能是模块化的,通过导入Boot所谓的“starter”模块,可以将许多的依赖添加到工程之中。为了更容易地管理依赖版本和使用默认配置,框架提供了一个parent POM,工程可以继承它。数据库主要采用 SpringBoot+MyBatis,缓存方面主要是使用SpringBoot+Redis, Redis支持主从同步,Redis有着更为复杂的数据结构并且提供对他们的原子性操作,这是一个不同于其他数据库的进化路径。Redis的数据类型都是基于基本数据结构的同时对程序员透明,无需进行额外的抽象。Redis运行在内存中但是可以持久化到磁盘,所以在对不同数据集进行高速读写时需要权衡内存,因为数据量不能大于硬件内存。在内存数据库方面的另一个优点是,相比在磁盘上相同的复杂的数据结构,在内存中操作起来非常简单,这样Redis可以做很多内部复杂性很强的事情。数据可以从主服务器向任意数量的从服务器上同步,从服务器可以是关联其他从服务器的主服务器, redis负责 session 数据的存储,消息推送方面项目使用了WebSocket,WebSocket协议支持远程主机之间进行全双工通信, 该技术的目标是为基于浏览器的、需要和服务器进行双向通信的应用程序提供一种通信机制。研究方案如图1所示:
图1
3.3 前后端连接
前端和和后端的技术应用,本项目的拟流行Spring Boot技术开发后端,Spring Boot是一种全新框架,其设计目的是用来简化新Spring应用的初始搭建以及开发过程。该框架使用了特定的方式来进行配置,从而使开发人员不再需要定义样板化的配置,从最根本上来讲,Spring Boot就是一些库的集合,它能够被任意项目的构建系统所使用。本文后端主要使用Spring Boot技术,前端主要使用Vue,前后端依靠RESTful链接起来(见图2)。
图2
功能的划分和设计:本部分包括买家端和卖家端的商品模块,订单模块和类目设计。针对需求本项目功能分析和划分(见图3):
图3
4.结语
目前我们的软件还有着许多需要改进的地方,我们也会和它一起变得更好,现在其运行后提高了大家点餐的效率,统一了支付,反响也比较好,其中有着许多好的建议我们也会积极的采纳,希望可以和大家一起变得越来越好。