摘 要
近年来,科技飞速发展,在经济全球化的背景之下,互联网技术将进一步提高社会综合发展的效率和速度,互联网技术也会涉及到各个领域,而餐厅信息管理系统在网络背景下有着无法忽视的作用。信息管理系统的开发是一个不断优化的过程,随着网络数据时代的到来,信息管理系统与计算机的集成成为必然。
本次将以餐厅信息管理方面为切入点,论述了餐厅信息管理的意义和内容,以此展开对餐厅信息的开发与建设的详细分析。从数据挖掘的角度出发,了解信息管理系统的作用,对餐厅信息的过程以及用处进行更深一步的研究,数据的处理效率,以及具体的应用方向。对于餐厅信息管理系统所带来的影响,将从传统管理方式进行对比分析,从硬件优化、软件开发,这几个方面来论述餐厅信息管理系统的优势所在,分析餐厅信息管理在计算机时代发展的变化趋势。
关键词:餐厅信息管理系统;
Abstract
In recent years, with the rapid development of science and technology, in the context of economic globalization, Internet technology will further improve the efficiency and speed of the comprehensive development of society. Internet technology will also be involved in various fields, and the restaurant information management system has a role that cannot be ignored in the context of the network. The development of information management system is a process of continuous optimization. With the advent of the era of network data, the integration of information management system and computer becomes inevitable.
This time, the significance and content of restaurant information management will be discussed based on the restaurant information management, so as to carry out a detailed analysis of the development and construction of restaurant information. From the perspective of data mining, understand the role of information management system, further study the process and use of restaurant information, data processing efficiency, and specific application direction. For the impact of the restaurant information management system, we will make a comparative analysis from the traditional management methods, discuss the advantages of the restaurant information management system from the aspects of hardware optimization and software development, and analyze the changing trend of the restaurant information management in the computer era.
Key words: restaurant information management system;
目 录
5 系统实现 16
6 系统测试 20
6.1 系统测试目的 21
6.3 系统测试结论 27
结论 30
1 绪 论
随着当代社会科技的迅速发展,计算机网络时代正式拉来帷幕,它颠覆性的影响着社会发展的各个方面。餐厅信息管理系统更是与数据密不可分,不仅在互联网中起着重要作用,更是充斥着我们日常工作和生活之中。在这个信息化的时代背景之下,互联网的来临,无论是对人类社会,还是对政治、经济等多方面领域影响深远,也给新时代的信息管理和信息系统带来新的机遇和挑战。网络电脑化越深入,影响越大,社会就越进入互联网时代。生活的各个领域都需要巨大的信息资源,需要妥善处理。因此,在计算机技术快速发展环境下,信息管理和信息系统尤为重要。对于餐厅信息管理系统的未来进行分析和展望,并提出研究意见[1]。
1.1论文背景
近年来互联网技术飞速发展,给人们的生活带来了极大便利,也改变人们的生活生产方式,拥有存储量大、可靠性高、使用方便等不可替代的优点,正在逐步取代传统的信息管理模式。由代码编程实现的各种管理工具和系统替代传统的人工操作,不但提升了可靠性还降低了人力成本,节省了时间,提升了工作效率。全球视域下信息技术逐步渗透到各个领域,多样化的数据信息为餐厅信息管理带来了深刻变革,打破了传统的餐厅信息的方式与载体,管理者的事务性工作面临新形势和新挑战[2]。
餐厅信息管理作为信息化建设的重要一环,餐厅信息管理系统的开发与实现,能够使管理者的工作开展得更加有序。
餐厅信息管理系统分析基本内容:本设计主要是实现一个餐厅信息管理系统,实现自动化、信息化、管理。系统的主要的设计原则是:以实际应用为核心,重点突出“实用、易用、简洁、稳定”的优点。既能够注重到实效,满足现实用户的实际需要,也能够为系统以后的升级和扩展留有一定的余地。在技术设计的实现上,突出“实现合理、结构清晰、简单易懂”的特点[3]。
本系统的主要目的在于加速数据可视化与信息化进程,充分利用计算机技术和现代通讯的手段面向餐厅或个人的服务。建立一个方便管理的餐厅信息管理系统的平台,方便信息资源的共享,提高管理的效率,为管理员和用户提供了餐厅信息管理系统的辅助服务。本系统将最大程度地提高管理者整体的工作效率和工作质量,降低管理和工作的成本,改善工作的环境和条件,提高管理者的管理和决策的自动化和科学化水平。帮助各行业节省费用,减少中间环节,优化业务流程,提高整体工作效率,促进管理的进步[4]。
1.3 研究方法
该餐厅信息管理系统在windows平台下完成开发,采用Spring boot框架,java语言开发,将应用程序部署于tomcat上,加之servlet接口来实现交互式响应服务器上的数据,将最终效果呈现于服务器上。运用mysql数据库,使用navicat premium连接数据库,从而实现数据库各个功能以友好的图形化界面展示。使用mvc三层架构,来降低各个层间解耦合,从而便捷高效完成开发[5]。
2系统相关技术
2.1 Java语言简介
Java,目前Internet中最流行的编程语言之一。它吸取了C++编程语言的长处的同时还摒弃了许多复杂抽象,不易掌握的问题,使得Java编程语言不但功能强大而且使用方便。
Java技术在使用过程中有优势也有劣势。其优势在于,因为Java本身相对严格的语法,所以可以强化程序员在编程时的规范性问题,不容易出现明显结构错乱的问题。因此,规范将是Java的巨大优势。但是它也有劣势,就是不太适应互联网模式下的不断修改,总是修改容易破坏架构。
面向对象的三种特征:封装,继承和多态。
密封:主要是指对数据信息的隐藏,通过把数据信息类别与通过数据信息的功能密封在一块,让数据信息被保存在数据信息类别的里面,只留下一部分可以对外的接口,以便于尽可能的地隐蔽里面的数据信息。因此好处也就十分的明显就是实现了专业的分工,同时也隐藏了信息,保证了安全。
继承:这就像是实际人生中的父子关系一样,孩子要承袭父母的特点。类似的,一个种类同时也继承了另一个种类的某些特性,其父属之间有一种特别的一般性的联系,是is-a的关系,从根本上来说都属于同一个实体。
多态:多态系统是以封装和继承为基础的。由于所传输的父类对象能够引入各种各样的子类对象,因而能够显示出各种各样的现象,给多态的编程带来了良好的扩展。
2.2 MySQL数据库
MySQL是一种关系型的数据库管理系统,属于Oracle旗下的产品。
MySQL的语言是非结构化的,使用的用户可以在数据上进行工作。这个数据库管理系统一经问世就受到了社会的广泛关注。在各个方面,与同等的数据库相比,MySQL的优点极为突出,它的运行速度快,适用的范围广泛,而且数据库的安全性这一方面独树一帜。在语言结构方面,MySQL的语言简单,其他数据库需要一大段代码来实现的操作,MySQL仅需要一小部分代码甚至几行。综上所述,MySQL这种关系型数据库管理系统,已经成为了开发者进行项目的数据开发、存储的不二之选。MySQL的功能也多种多样,如数据操纵和数据库的建立维护等。而且该数据库的数据共享性高、冗余度低而且容易扩充。MySQL在安全性这一方面也具有自身的特点,它应用了用户的标识和鉴别技术,对试图和数据进行加密,确保资料信息的可靠性。介于数据库系统的功能与强大等性质之间,本数据库系统的设计中主要使用了MySQL实现对数据的处理。餐厅信息管理系统运用MySQL数据库,在Web应用这一块,MySQL是最好的选择。对于该系统整个的开发、搭建、运行和维护具有极其重要的作用。
2.3 B/S架构
B/S结构就是指系统客户端与服务器分离,客户端通过浏览器访问服务端进行操作。
B/S结构目前广泛应用于绝大部分系统搭建中,这种结构摒弃C/S结构客户端服务端不分离的缺点,具有更多的优势:
(1)跨平台性:B/S的标准由标准化组织确立,适用于绝大多数的系统搭建,通用于应用之间。
(2)低维护成本:客户端和服务器端分离,减轻了两端的压力,尤其是客户端,对客户端设备,硬件、软件要求都比较低,并且系统需要升级或维护时,只需要在服务器端升级或维护就可以,使相应的费用减少。
2.4 Spring boot框架
Spring Boot的开发团队来自美国的Pivotal公司,是2013年研发的免费、轻量级、开源的系统框架。它集合、默认了许多框架的使用方法,是基于原有的框架的功能的又一次进化,所以从这个角度看,它就又是一个旧的框架。
Spring boot有以下几个特点:低嵌入式设计,代码污染性低;不是只局限于Spring,开发者可以随意的选择Spring框架的任意几个部分;使程序的测试变得更加简单与方便;没有独立的Web服务器需要,所以不再需要启动Tomcat,Glass Fish。
在对一个软件进行设计与开发之前,需要对该系统进行深层次的调查、分析、研究[6]。良好的需求分析不仅能使开发人员快速、准确地理解开发任务,还能提高开发效率,能好地完成工作。对系统进行需求分析是必不可少的,这是软件生存周期上一个很重要的部分,在这个阶段需要确定该系统需要实现什么功能,然后做成一个数据规范、图表清晰的文档,为接下来的系统设计工作提供一定的基础。
3.1.1系统总体分析
本系统采取了一系列的设计原则,主要目的是为了系统的功能设计,还有管理人员在后期对系统维护时的方便,以及使用户能够简易的操作。最重要的设计原则包括:简单性、针对性、实用性、一致性、先进性[7]。
(1)简单性:在该系统中功能模块实现的同时,让用户操作起来简单明了,很快找到所需资源是最直接的目的。
(2)针对性:该系统是根据设计需求为导向来开发餐厅信息管理系统的设计,所以针对性较强。
(3)实用性:该设计能够满足餐厅信息管理系统的实际的功能需求,能够在实际中让用户真正使用到,具有实际的应用价值。
(4)一致性:网站整体的页面布局,在不同的界面之间,img里的图片的放置位置以及大小都应该有严格的一致性。变量命名规则应该具有统一性。
(5)先进性:本系统采用java作为开发语言、Spring boot框架、MySQL作为系统数据库,它们被软件设计者们广泛使用[8]。
3.2 可行性分析
可行性分析是每开发一个项目必不可少的一部分,可行性分析可以直接影响一个系统的存活问题,针对开发意义进行分析,还有就是是否可以通过所开发的系统来弥补传统纸质手工统计模式的不足,是否能够更好的解决其中问题等,通过对该餐厅信息管理系统的开发设计,不仅能够逐步减少工作人员的工作量,而且还可以进行高效工作和管理[9]。所以该系统的开发实现了最大的意义和价值,在系统完成后,利益是否大过于成本,是否能够达到预期效果,这些方面都要进行可行性分析,再通过分析之后,就可以决定是否开发此系统。该餐厅信息管理系统的开发设计中,以下几点进行了可行性分析:经济、技术、运行可行性:通过java的采用,由于该技术不断成熟,所以使用该技术设计餐厅信息管理系统是具有可行性的。经济可行性:在开发过程中,系统完成后的利益是否大过于开发成本。操作可行性:餐厅信息管理系统的开发设计中,方便用户的可操作性和实用性[10]。
3.2.1 经济可行性
由于本系统是作为毕业设计系统,且系统本身存在一些技术层面的缺陷,并不能直接用于商业用途,只想要通过该系统的开发提高自身学术水平,不需要特定服务器等额外花费。所有创造及工作过程仅需在个人电脑上就能实现,使用到的软件大多为开源软件,所以经济成本并不高,可以轻易实现[11]。
3.2.2 技术可行性
本系统的开发使用java作为系统开发的开发语言,开发工具选择 Eclipse,而 B/S架构决定了本系统的兼容性和多用户可操作性,此外选择MySql作为数据库不仅提高了数据安全性更保障了数据的可操作性[12]。
3.2.3 运行可行性
本系统作为以java作为开发技术的系统,而且选用 B/S架构则决定了要操作本系统仅需要占用很小的资源,并没有过多地硬件配置要求,目前市面上只要能正常运行浏览器的个人电脑都可以正常运行使用该系统。
综上所述,本系统的设计与开发在经济上、技术上、运行上的条件都是满足的,因此,系统开发具备可行性条件[13]。
3.3 系统结构和流程设计
开发该系统主要选用了Spring boot的架构设计,将主要表现层、业务逻辑层和数据访问层分离出来。表现层将请求的回应信息展现在java网页页面上便于客户访问,业务逻辑层负责获得并正确处理请求逻辑,确保SQL语句读取时取得成功或失败,数据访问层关键将数据信息拼写成SQL语句。由于分层次构造开展开发,可以使开发系统软件的耦合性减少,随后重用率提升,只在数据层对数据开展处理就可以了。随后由接口封装对象,业务层完成对系统的逻辑操作,在显示层展现和接受数据信息,用接口完成每个层间的数据信息的传送。实际操作的方法简洁明了,使体系能更快的运作。
操作流程需要进行设计,一个完整的系统可以流畅的操作下来是至关重要的,本系统的完整操作流程如图3-1所示:
- 系统操作流程图
本系统主要有管理员和用户二种角色,进行登录时需要确保输入的内容与已经保存的账号信息一致,通过账户密码等方式来校验用户信息,输入正确则登入系统,输入错误则登入失败。系统登录流程,如图3-2所示:
- 系统登录流程图
在添加信息的时候,会判断是哪类用户,并根据用户类型判断执行是否合法,合法者可以进行添加,不合法者则不能进行此操作。管理员登录账号后可以对内容进行添加,拥有着最高的权限,用户权限仅次于管理员。添加信息流程图如图3-3所示:
- 系统添加流程图
删除数据时与添加数据功能类似,删除数据具体流程如图3-4所示:
4 系统设计
4.1系统通用功能用例分析
系统的通用功能包括用户登录和密码修改,是二个角色共同需要使用的功能,用例分析如图4-1所示。
图4-1系统通用功能用例分析图
4.2 系统设计主要功能
本系统采用自上往下的方法开发与实现,本课题要求实现一套餐厅信息管理系统,系统主要包括管理员模块和用户模块的功能模块;
(1)管理员用例图如下所示:
图4-2管理员用例图
(2)用户用例图如下所示:
图4-3用户用例图
通过市场调研及咨询研究,可以按照用户的角色权限使不同用户角色看到不一样的信息界面。现根据需求阶段的分析,我们可以大致确定系统需要包含的功能如下图4-4所示:
图4-4餐厅信息管理系统结构功能图
4.3 数据库设计
4.3.1 数据库设计规范
数据可设计要遵循职责分离原则,即在设计时应该要考虑系统独立性,即每个系统之间互不干预不能混乱数据表和系统关系。
数据库命名也要遵循一定规范,否则容易混淆,数据库字段名要尽量做到与表名类似。
4.3.2 E-R图
用户信息E-R图,如图4-5所示:
图4-5用户信息E-R图
购物车E-R图,如图4-6所示:
图4-6购物车E-R图
餐厅美食E-R图如图4-7所示。
图4-7餐厅美食E-R图
订单信息E-R图如图4-8所示。
图4-8订单信息E-R图
4.3.3 数据表
本系统采用的是MySQL数据库存储数据,系统中使用到的主要数据表的具体展示部分如下所示。
表4-1:餐厅美食评论表
字段名称 | 类型 | 长度 | 字段说明 | 主键 | 默认值 |
id | bigint | 主键 | 主键 | ||
addtime | timestamp | 创建时间 | CURRENT_TIMESTAMP | ||
refid | bigint | 关联表id | |||
userid | bigint | 用户id | |||
avatarurl | longtext | 4294967295 | 头像 | ||
nickname | varchar | 200 | 用户名 | ||
content | longtext | 4294967295 | 评论内容 | ||
reply | longtext | 4294967295 | 回复内容 |
表4-2:配置文件
字段名称 | 类型 | 长度 | 字段说明 | 主键 | 默认值 |
id | bigint | 主键 | 主键 | ||
name | varchar | 100 | 配置参数名称 | ||
value | varchar | 100 | 配置参数值 |
表4-3:在线咨询
字段名称 | 类型 | 长度 | 字段说明 | 主键 | 默认值 |
id | bigint | 主键 | 主键 | ||
addtime | timestamp | 创建时间 | CURRENT_TIMESTAMP | ||
userid | bigint | 用户id | |||
adminid | bigint | 管理员id | |||
ask | longtext | 4294967295 | 提问 | ||
reply | longtext | 4294967295 | 回复 | ||
isreply | int | 是否回复 |
表4-4:购物车表
字段名称 | 类型 | 长度 | 字段说明 | 主键 | 默认值 |
id | bigint | 主键 | 主键 | ||
addtime | timestamp | 创建时间 | CURRENT_TIMESTAMP | ||
tablename | varchar | 200 | 商品表名 | cantingmeishi | |
userid | bigint | 用户id | |||
goodid | bigint | 商品id | |||
goodname | varchar | 200 | 商品名称 | ||
picture | longtext | 4294967295 | 图片 | ||
buynumber | int | 购买数量 | |||
price | float | 单价 | |||
discountprice | float | 会员价 | |||
goodtype | varchar | 200 | 商品类型 |
表4-5:用户
字段名称 | 类型 | 长度 | 字段说明 | 主键 | 默认值 |
id | bigint | 主键 | 主键 | ||
addtime | timestamp | 创建时间 | CURRENT_TIMESTAMP | ||
zhanghao | varchar | 200 | 账号 | ||
xingming | varchar | 200 | 姓名 | ||
mima | varchar | 200 | 密码 | ||
xingbie | varchar | 200 | 性别 | ||
nianling | varchar | 200 | 年龄 | ||
shouji | varchar | 200 | 手机 | ||
shenfenzheng | varchar | 200 | 身份证 | ||
touxiang | longtext | 4294967295 | 头像 | ||
money | float | 余额 | 0 |
表4-6:餐厅美食
字段名称 | 类型 | 长度 | 字段说明 | 主键 | 默认值 |
id | bigint | 主键 | 主键 | ||
addtime | timestamp | 创建时间 | CURRENT_TIMESTAMP | ||
caipinmingcheng | varchar | 200 | 菜品名称 | ||
meishileixing | varchar | 200 | 美食类型 | ||
fengmian | longtext | 4294967295 | 封面 | ||
hunsu | varchar | 200 | 荤素 | ||
fenliang | varchar | 200 | 分量 | ||
cantingmingcheng | varchar | 200 | 餐厅名称 | ||
xiangqing | longtext | 4294967295 | 详情 | ||
onelimittimes | int | 单限 | |||
alllimittimes | int | 库存 | |||
clicktime | datetime | 最近点击时间 | |||
clicknum | int | 点击次数 | 0 | ||
price | float | 价格 |
表4-7:用户表
字段名称 | 类型 | 长度 | 字段说明 | 主键 | 默认值 |
id | bigint | 主键 | 主键 | ||
username | varchar | 100 | 用户名 | ||
password | varchar | 100 | 密码 | ||
role | varchar | 100 | 角色 | 管理员 | |
addtime | timestamp | 新增时间 | CURRENT_TIMESTAMP |
表4-8:地址
字段名称 | 类型 | 长度 | 字段说明 | 主键 | 默认值 |
id | bigint | 主键 | 主键 | ||
addtime | timestamp | 创建时间 | CURRENT_TIMESTAMP | ||
userid | bigint | 用户id | |||
address | varchar | 200 | 地址 | ||
name | varchar | 200 | 收货人 | ||
phone | varchar | 200 | 电话 | ||
isdefault | varchar | 200 | 是否默认地址[是/否] |
表4-9:token表
字段名称 | 类型 | 长度 | 字段说明 | 主键 | 默认值 |
id | bigint | 主键 | 主键 | ||
userid | bigint | 用户id | |||
username | varchar | 100 | 用户名 | ||
tablename | varchar | 100 | 表名 | ||
role | varchar | 100 | 角色 | ||
token | varchar | 200 | 密码 | ||
addtime | timestamp | 新增时间 | CURRENT_TIMESTAMP | ||
expiratedtime | timestamp | 过期时间 | CURRENT_TIMESTAMP |
表4-10:收藏表
字段名称 | 类型 | 长度 | 字段说明 | 主键 | 默认值 |
id | bigint | 主键 | 主键 | ||
addtime | timestamp | 创建时间 | CURRENT_TIMESTAMP | ||
userid | bigint | 用户id | |||
refid | bigint | 商品id | |||
tablename | varchar | 200 | 表名 | ||
name | varchar | 200 | 名称 | ||
picture | longtext | 4294967295 | 图片 | ||
type | varchar | 200 | 类型(1:收藏,21:赞,22:踩,31:竞拍参与,41:关注) | 1 | |
inteltype | varchar | 200 | 推荐类型 | ||
remark | varchar | 200 | 备注 |
表4-11:订单
字段名称 | 类型 | 长度 | 字段说明 | 主键 | 默认值 |
id | bigint | 主键 | 主键 | ||
addtime | timestamp | 创建时间 | CURRENT_TIMESTAMP | ||
orderid | varchar | 200 | 订单编号 | ||
tablename | varchar | 200 | 商品表名 | cantingmeishi | |
userid | bigint | 用户id | |||
goodid | bigint | 商品id | |||
goodname | varchar | 200 | 商品名称 | ||
picture | longtext | 4294967295 | 商品图片 | ||
buynumber | int | 购买数量 | |||
price | float | 价格 | 0 | ||
discountprice | float | 折扣价格 | 0 | ||
total | float | 总价格 | 0 | ||
discounttotal | float | 折扣总价格 | 0 | ||
type | int | 支付类型 | 1 | ||
status | varchar | 200 | 状态 | ||
address | varchar | 200 | 地址 | ||
tel | varchar | 200 | 电话 | ||
consignee | varchar | 200 | 收货人 | ||
remark | varchar | 200 | 备注 | ||
logistics | longtext | 4294967295 | 物流 | ||
goodtype | varchar | 200 | 商品类型 |
表4-12:餐厅公告
字段名称 | 类型 | 长度 | 字段说明 | 主键 | 默认值 |
id | bigint | 主键 | 主键 | ||
addtime | timestamp | 创建时间 | CURRENT_TIMESTAMP | ||
title | varchar | 200 | 标题 | ||
introduction | longtext | 4294967295 | 简介 | ||
picture | longtext | 4294967295 | 图片 | ||
content | longtext | 4294967295 | 内容 |
表4-13:美食类型
字段名称 | 类型 | 长度 | 字段说明 | 主键 | 默认值 |
id | bigint | 主键 | 主键 | ||
addtime | timestamp | 创建时间 | CURRENT_TIMESTAMP | ||
meishileixing | varchar | 200 | 美食类型 |
5 系统实现
5.1 前台用户功能模块
当游客打开系统的网址后,首先看到的就是首页界面。在这里,游客能够看到餐厅信息管理系统的导航条显示首页、餐厅美食、餐厅公告、在线咨询、购物车。系统首页界面如图5-1所示:
图5-1 系统首页界面
在系统首页点击右侧的注册/登录按钮,然后页面跳转到注册登录界面,后来输入信息完成后,单击注册或者登录操作,如图5-2所示:
图5-2 用户注册、用户登录界面
用户点击餐厅美食,在餐厅美食页面的搜索栏输入菜品名称、餐厅名称、价格等信息,进行查询,然后还可以查看菜品名称、美食类型、封面、荤素、分量、餐厅名称、单限、库存、价格等信息,然后可以进行添加到购物车、立即购买或者收藏等操作;如图5-3所示:
图5-3餐厅美食页面
点击在线咨询,用户可以输入内容进行咨询,管理员可以在后台进行查看并回复,达到用户和管理员交流的效果;如图5-4所示:
图5-4在线咨询页面
购物车:用户将想要购买的商品加入购物车,加入购物车后可以增减数量、删除、点击购买,可一键清除失效商品,如图5-5所示:
或:源码\ /
文心海资源库