高校网上订餐系统的设计与实现论文.docx
- 文档编号:24301767
- 上传时间:2023-05-26
- 格式:DOCX
- 页数:28
- 大小:177.79KB
高校网上订餐系统的设计与实现论文.docx
《高校网上订餐系统的设计与实现论文.docx》由会员分享,可在线阅读,更多相关《高校网上订餐系统的设计与实现论文.docx(28页珍藏版)》请在冰豆网上搜索。
高校网上订餐系统的设计与实现论文
题目高校网上订餐系统的设计与实现
TheDesignandImplementationofthe
Olinereservationsystem
摘要
近几年,随着社会科技的快速发展,网络技术已经广泛进入人们的生活。
尤其在学校的教育教学设施上表现的尤为突出,多媒体教学已经成功替代了旧的教学方式,还有大多数学校的图书馆也已经应用网络管理系统进行管理。
但是学校的餐饮基本上还没有广泛的使用网络化的科技技术。
在就餐高峰期大量的学生同时进入餐厅排队就餐,以至于浪费很多时间。
高校网上点餐系统可以使许多学生同时在网上点餐,不仅节省时间而且可以大大减少就餐拥堵现象。
本论文详细介绍了高校网上订餐系统的主要功能。
主要运用jsp技术,数据库采用mysql,该系统实现了用户从登录到浏览菜单再到订餐的过程,接着管理员再通过后台对订单进行处理,根据订单制作菜品再送餐。
该论文先对系统功能进行需求分析,再根据需求分析进行系统的设计与实现,最后通过测试对系统功能进行完善。
关键词:
网上订餐;JSP;MySQL
Abstract
Inrecentyears,withtherapiddevelopmentofsocialscienceandtechnology,networktechnologyhasbeenwidelyintothelifeofpeople.Especiallyintheschooleducationteachingfacilitiesinparticular,multimediateachinghassuccessfullyreplacedtheoldwayofteaching,hasbeenappliedinmostoftheschoollibraryalsomanagenetworkmanagementsystem.Buttheschoolfoodbasicallyhasnotbeenwidelyuseofnetworktechnology.Intheperiodsofpeakdiningplentyofstudentsentertherestaurantlunchlineatthesametime,thattheywastealotoftime.Onlineorderingsystemincollegesanduniversitiescanmakemanystudentsonlineorderatthesametime,notonlysavestimebutalsocangreatlyreducethecongestionphenomenon.
ThispaperintroducesindetailthemainfunctionsoftheonlinereservationsystemincollegesandusingtheJSPtechnology,databaseuseThesystemrealizedtheuserfromtheprocessoflogintobrowsethemenutoorderameal,thentheadministratorofordersthroughthebackgroundprocessing,makedishesaccordingtotheordertodelivery.Thepaperfirsttodemandanalysis,systemfunctionandsystemaccordingtodemandanalysis,thedesignandimplementationofthefinalteststoimprovethesystemfunction.
Keywords:
OnlineMealBooking;JSP;MySQL
第一章绪论
课题研究的背景
科技发展的同时也带动了经济腾飞,而经济的腾飞也势必改变我们人类现有的生活方式,当然变化最大的还是属于我们的餐饮行业,从以前的小餐馆到现在的快餐店,再到现在的连锁店,每天都在发生着日新月异的变化,然而这一切都离不开当下人们高效的生活方式和生活节奏,加上网络信息化的飞速发展,生活网络化也慢慢的步入正轨,而购物网站正是这种活动的具体表现形式。
随着时代的进步,上网的人数越来越多,网上订餐是人们的一大生活方式之一,网上订餐系统的完善合便捷将是现代社会必然的需求。
本系统的设计目的是为了满足消费者只要通过互联网就可以足不出户的订购自己喜欢的菜品。
改变传统商业交易,在互联网上进行交易,实现网上购买菜品,从而提高生活品质,追求便捷生活方式。
课题研究的意义
社会的发展带动了经济的变革,然而科技的发展永远是走在最前沿的,他是社会发展的领头羊,也是社会进步的推动者,它让我们的生活变得越来越多样化和便捷化,在这个风口浪尖的时代,互联网的以它迅雷不及掩耳之势锐不可当,现实生活中的各种问题都可以在互联网上进行解决,包括衣食住行,当然跟人们最息息相关的要属饮食行业了,因此网上订餐的发展早就像雨后春笋般蓬勃发展了,在这个干什么都追求效率和质量的社会背景下,网上订餐也受到了大家的欢迎和依赖,因为现在年轻人的生活工作节奏是特别快的,所以在生活这一块,他们追求更高效的生活方式,而网上订餐的出现恰恰满足了他们这一需求,从时间成本上来说,这是最重要的一点,当然还有便捷和廉价,当然只要有人喜欢,那么说明这个东西做的是值得的。
课题研究的目的
近几年类似于淘宝网这种大型的网上购物网站的飞速发展,网上购物已成为一种时尚。
为了方便在校那些学习工作紧张的学生、老师饮食方便,网商们提供新的一种便捷快速的订餐方式,来改变人们的生活习惯。
高校网上订餐管理系统是为了满足在校大学生只要通过互联网就可以不用在吃饭的高峰期去餐馆等待就餐,而是直接可以再网上购买,节约了时间成本。
本论文主要涉及软件,数据库与网络技术等。
可有效地提高我们综合运用所学知识分析解决问题的能力,是自己的认知又到达一个新的高度,增强自己的综合能力,正确的设计思想,独立思考,勇于进取,探索创新,为进入社会工作奠定一些基础,同样也大大节省了学生们的就餐时间,提高了学习效率。
主要研究内容
此论文主要研究的内容包括一下几个方面:
1.从开始的研究背景,需求分析和研究的技术等方面。
2.结合自己所学的知识,采用我大学期间学习的软件工程,对各个模块进行一定的设计。
3.考虑市场用户的出发点,本系统采用从实际出发的点来研究此项目。
4.对系统的整体把握和守卫工作的进行。
论文结构
本文按照软件工程思想设计开发系统,共分为六章。
第一章是绪论,叙述了系统开发的背景,目的,意义,国内外现状及论文工作内容。
第二章是系统开发环境及相关技术介绍,叙述了开发本系统所需环境和其相关技术。
第三章是系统需求分析。
对将要实施的项目进行分析,来确定项目是否值得进行。
第四章是系统总体设计。
将系统的各个模块进行系统的概要设计。
第五章是详细设计,叙述了各功能模块设计实现过程。
第六章是测试,叙述了系统测试过程。
第二章系统的开发环境及技术简介
系统开发环境
操作系统:
Windows7操作系统
开发平台:
数据库:
第三方框架:
Struts2,
运行服务器:
系统开发技术
MyEclipse
在本系统开发本平台中所用到的开发工具就是咱们大学期间常用的的java项目开发工具MyEclipse[1]。
MyEclipse是现代企业常用的开发软件之一,它的各个功能性能在目前来说还是比较完善的,而且做为各大高校使用率最高的开发软件之一,也间接说明了用户对它的接受程度也是相当满意的,当然我也不列外,选择最熟悉的一款编程软件来开发本系统[2]。
MySQL数据库
本系统采用MySQL数据库管理系统。
根据以前的使用经验和结果,自己觉得MySQL是一个出色的数据库,相对来说简单易懂,易操作。
MySQL无论从安装还是使用亦或是性能上来讲,它都是一款性价比较高的数据库,现在的学生都喜欢最求完美的东西,在软件工程学习的过程中MySQL恰恰满足的广大用户的需求[3]。
MVC设计模式
MVC是当代很流行的一种设计模式,早在很早之前,IBM就开始了MVC设计模式的研究,它的全名是Model-View-Controller,也就是把一个应用程序划分为视图层,模式层,控制层,而且这几个层分别担任了不同的任务和各自的关系[4]。
Struts2MVC框架
从我自身的使用经验情况来看,Struts2是所有MVC框架中不容辩驳的强者,在市场占有率和开发人群这两点上,因此它就获得了较为广泛的粉丝[5]。
在struts请求经过图中的几个过滤器,送达到FilterDispatcher过滤器,而且过滤器FilterDispatcherStruts2的框架的心脏,通常在处理用户请求时,他和请求一起相互配合访问Struts2的底层框架结构,其基本构成如图所示:
图框架结构图
框架
Spring框架由以下7个部分组成。
Spring包括了分层的体系结构,我们可以根据自己的使用情况任意选择其中的一个独立部分,但是它的架构又是内部一致的,它不会让我们对自己的工程有框架上的依赖,而且它可以一站式解决方案,提供了大部分的基础框架,当然也智能的考虑了其它的框架,它设计的主要目的还是为了帮助开发者编写易于测试的代码[6]。
框架
Hibernate是一个开源的对象关系映射框架,它对JDBC访问数据库进行了封装,使得Java程序员可以使用面向对象的编程思想来操作数据库。
Hibernate框架既可以在C/S架构的Java应用程序中使用,也可以在B/S架构的JavaWeb应用程序中使用[7]。
而且Hibernate能够很好对数据的进行持久化,把java程序言从繁琐的数据访问中解脱出来,大大缩短开发周期,节省人力[8]。
第三章系统分析
可行性分析
经济可行性分析
一个系统的好坏是可以用经济手段来衡量的,从一开始新系统开发和运行所需的费用,以及新系统预期能达到的收益和实际收益可以进行一个全面的比较,将投资和效益进行比较,如果能算出是盈利的话,或者是在将来摸一个阶段能实现盈利目的,那么研究它就是值得的。
当然,从实际的角度来考虑本系统研究的成本相对来说是比较低的,只需配置一台电脑及相关的学习软件,另外本系统有高效的数据处理的能力;从而降低了人体力劳动,提高了劳动效率;使用信息将更加方便;取得了其他经济和社会效益,还包括那些隐藏的潜在的效益,是大家共同达到双赢的目的[9]。
其中详细的各类开支如下:
1.支出
现在高校电脑的应用已经得到了普及,在大学校园使用计算机进行软件开发,网络环境和基础设施能满足本系统的实施要求,因此无须另外的资金投入[10]。
其它一次性支出如下:
作为在校大学生研发系统,往往它的开发成本是不会太大,但是也是我们自己研究和付出辛勤汗水的。
经常性支出如下:
使用者在使用的同时还需要对它有所付出,因为没有付出就没有收获。
2.效益
一个好的软件或系统步入市场的时候都有一个预热期和高潮期,我觉得前期投入,中后期见效回本是本系统未来在市场的潜在价值[11]。
综上所述可见系统在经济上是可行的。
技术能力分析
根据本系统的功能需求及各方面的考虑,我的系统采用了Java与开源的MySQL数据库进行了开发。
选择的是Java基于通用语言的编译运行的程序,它包括强大性和适应性两大优点,通用语言的基础库,消息机制,数据接口这方面的处理都能完整的整合到Java的web应用中。
Java同时还是语言独立化的,这也是我比较熟悉的编程语言,当然还可以用很多种语言来编写程序,Java,Jscript等[12]。
综上所述,系统在技术上是可行的。
运行可行性分析
本系统的客户端采用的是图形界面方式处理的,由于高校大学生日常所使用的操作系统都是Windows7系统,所以经过简单的学习和了解就可以胜任新系统的操作。
新系统的目标就是帮助普通用户实现资料的管理,并且新系统的运行不会对组织和管理方式产生一些其他的的影响,不会受到其他因素的干扰。
法律可行性分析
在法律可行性上主要是指开发的软件有没有存在知识产权等与法律有关的问题,因为现在的各类软件层出不穷,盗版模式时代的到来使得版权的意义显得格外重要,如果本软件面向社会中进行使用,必须要走一定的法律程序,这也是必不可少的。
因此,开发本系统在法律上是可行的。
功能需求分析
本系统主要由前台功能和后台功能组成。
前台功能
1)用户注册登录模块;包括用户注册、用户登录模块;通过注册成为普通用户。
注册后的用户可登录进行其他操作。
2)菜品查询模块;包括浏览菜品、搜索菜品;用户登陆后可在主页查看所有菜品。
在主页使用搜索功能查找想要的菜品。
3)购物车模块;包括查看已下单、结算,删除。
用户打开我的购物车可查看自己已预订的菜单;删除菜单,结算菜单。
4)用户留言模块;包括用户发表留言,查看留言。
后台功能
1)订单管理模块;查看订单、确认订单;管理员进入后台对菜单进行查看、确认操作。
2)菜单管理模块;包括查看菜单、更新菜单、添加菜单、删除菜单。
管理员进入后台可对菜单进行、删、改、查功能。
3)用户管理模块;包括查看当前用户,删除、更新用户。
管理员进入后台对用户进行删、改、查的操作
4)留言管理模块;包括查看用户发表的留言,删除留言。
管理员进入后台对留言进行查看和删除的操作。
系统功能模块图如图所示。
图系统功能模块图
系统安全性分析
安全问题在信息管理中一直扮演着重要的角色,因此在系统开发中把安全问题考虑进去是十分必要的。
系统用户信息的安全也是不可忽视的,用户信息的安全保证了系统的健壮性及系统的可用性。
用户数据的安全轻则导致系统错误,重则导致系统崩溃瘫痪,这将对书店及用户造成严重的经济损失。
用户的权限管理也是不可忽视的,它保障了使用系统的不同用户在自己的权限范围内操作系统,使用户在系统的不同权限下进行指责内操作,从另一方面保证了系统的安全性。
因此,在安全问题方面提供保障是十分必要的,该系统采用MD5算法加密用户密码和权限管理保证系统的健壮性。
第四章总体设计
系统总体设计的主要目标是一个前期铺垫工作,将一些问题转换为计算机问题,并且能将这些问题转化为计算机能处理的的各种方案,这也反映了信息在需求过程中系统逻辑方案转换成可以实施的基于计算机运行环境的转变,然后进行系统的概要设计,为下一阶段系统详细设计打下了坚实的基础。
系统的概要设计
前台功能结构
用户进入订餐系统首页后,注册成为普通用户后可登陆,可在主页内查看菜品,下单,搜索菜品,查看购物车,发表留言。
1)注册登录。
系统提供注册登录功能,参与订餐操作的用户需先注册后再登录。
?
2)查看菜品。
用户登陆后在主页可对所有站内菜品进行查看。
?
3)下单。
用户登陆后可对某一菜品进行下单操作。
4)搜索菜品。
用户登陆后在主页搜索框中进行菜品。
5)查看购物车。
用户登录并下单后,进入购物车页面查看自己的购物信息。
6)发表留言。
用户在首页中点击“留言”可对本站进行留言。
前台功能结构图如图所示。
图系统前台用户功能结构图
后台功能结构
只有管理员有权限进入后台界面,有管理订单、管理菜单和管理用户的权限,也可对用户留言进行操作。
1)管理订单。
管理员可以用户已下的订单进行查看,确认等操作。
2)管理菜单。
管理员可对菜品进行增、删、改、查等操作。
3)管理用户。
管理员可对用户进行删除,更改等操作。
4)管理留言。
管理员可用户发表的留言进行查看,删除等操作。
后台功能结构图如图所示。
图后台管理员功能结构图
数据库概要设计
E-R模型是对现实世界的一种抽象。
它的主要成分是实体、联系和属性。
使用这三种成分,我们可以建立许多应用环境的E-R模型。
本系统所使用的数据库实体如下。
1.普通用户实体
普通用户实体的属性包括ID、姓名、性别、登录密码、联系电话、权限。
其中权限用来表示用户,用1表示“管理员”,用0表示“普通用户”。
普通用户实体的E-R图如图所示。
图普通用户实体E-R图
2.订单实体
订单实体的属性包括ID、订餐者ID、订餐者姓名、菜名、份额、单价、总价、联系电话、送餐地址。
订单实体的E-R图如图所示。
图订单实体E-R图
3.菜单实体
菜单实体的属性包括ID、菜名、单价、简介。
菜单实体的E-R图如图所示。
图菜单实体E-R图
数据库逻辑结构设计
由需求分析阶段的系统实体联系图具体得到关系数据模型。
(1)用户信息表:
(用户ID、姓名、登录密码、性别、联系电话、权限)。
(2)订单信息表:
(订单编号、订餐者编号、订餐者姓名、菜名、份额、单价、总价、订餐者电话、送餐地址)。
(3)菜单信息表:
(菜单编号、菜名、单价、简介)。
数据库表的设计
本网上订餐系统采用MySQL数据库,数据库名称为onlineorderdb。
数据库包含以下3个表:
(1)用户信息表(tb_user)
该表用来保存用户信息,主键是用户ID,表的结构见表。
表用户信息表
字段名称
数据类型
字段长度
是否主键
是否为空
描述
User_id
int
11
是
否
用户ID
User_name
Varchar
20
否
是
姓名
User_pass
Varchar
20
否
是
登录密码
User_sex
Varchar
2
否
是
性别
User_able
Varchar
1
否
是
权限
User_phone
Varchar
12
否
是
联系电话
(2)订单信息表(tb_orders)
该表用来保存订单的信息,主键是订单编号,表的结构见表。
表订单信息表
字段名称
数据类型
字段长度
是否主键
是否为空
描述
Order_id
int
11
是
否
订单编号
User_id
int
11
否
是
订餐者编号
User_name
Varchar
20
否
是
订餐者名称
Order_name
Varchar
30
否
是
菜品名称
Order_num
Varchar
11
否
是
菜品编号
Order_price
Float
10
否
是
菜品单价
续表
字段名称
数据类型
字段长度
是否主键
是否为空
描述
Order_sum
Float
10
否
是
菜品总价
User_phone
Varchar
12
否
是
订餐者电话
User_address
Varchar
30
否
是
送餐地址
(3)菜单信息表(tb_menu)
该表用来保存菜单信息,主键是菜单编号,表的结构见表
表菜单信息表
字段名称
数据类型
字段长度
是否主键
是否为空
描述
Menu_id
int
11
是
否
菜单编号
Menu_name
Varchar
30
否
是
菜品名称
Order_price
Float
11
否
是
菜品价格
Menu_message
Varchar
40
否
是
菜品简介
第五章详细设计
用户注册功能设计
用户进入首页,点击“注册”标签,打开页面,此页面用注册用户。
在页面中填写注册信息后点击“确定”按钮,此时调用类中的regist方法,在此方法中调用类中的juegeUser方法,判断输入信息是否合法,若不合法,则提示错误并重新输入信息,若合法则将该用户添加到数据库中,并跳转至页面,提示用户登录。
完成注册操作。
用户注册流程如图所示。
图用户注册流程图
加入购物车功能设计
会员登陆到系统,进入主界面,当会员点击加入购物车链接,将会发送请求请求,Strust2核心拦截器会拦截用户的请求,调用(“cart”),查找用户添加的菜品信息,返回页面显示用户菜品信息。
用户可以修改菜品信息,通过便利菜品列表,修改菜品数量,计算价格。
当从session取出cart对象为空时,则会创建购物车对象,将选择的菜品信息保存到cart对象的集合属性中。
加入购物车流程如图所示。
图加入购物车流程图
管理员登陆设计
管理员要登陆到后台系统,需输入合法的用户账号和密码,当管理员访问登陆界面输入账号和密码,点击提交时,根据HTTP协议浏览器会将表单里面的数据发送到服务器,服务器端使用Struts2MVC框架的控制器ActionServlet拦截的用户登陆请求,会根将请求转发LoginAction,从而调用login方法,该方法会根据用户输入的orderName和password查询admin数据表,如果查询返回数据记录,则说明此管理员是合法的用户。
将返回后台管理主页面,否则返回,提示用户输入的用户名或密码错误。
管理员登录流程如图所示。
图管理员登录流程图
菜单管理模块设计
添加菜单功能设计
管理员登录后进入菜单管理,在菜单管理中点击“添加菜单”类中的addMenu方法,打开页面,该页面为添加菜单页面,然后填写菜单信息后点击“提交”按钮,此时系统调用类的addMenu方法,判断输入的菜单信息是否为空。
若输入信息为空,则提示要求重新输入;若不为空将输入的菜单信息添加至菜单表中并更新数据库,同时返回菜单页面。
完成添加菜单操作。
添加菜单流程如图所示。
图添加菜单流程图
删除菜单功能设计
管理员查看菜品列表,选择要删除的菜品,将会触发JavaScript事件弹框提示用户“确定要删除该菜品”,当用户选择确定将会发送Http请求请求,服务器端Struts2拦截用户请求,根据文件的配置,将改请求转发给ProudctAction调用execute()方法,该方法获取到菜品id,调用ProductDAO的delete()方法删除指定的菜品信息。
操作数据库时调用hibernate提供的()方法删除数据库product表指定id数据记录,操作成功,提示用户“删除成功”。
操作失败,提示用户“请稍后重试”。
修改菜单功能设计
用户查看菜品列表,选择要修改的菜品,当用户选择确定修改,将会发送Http请求请求,服务器端Struts2拦截用户请求,根据文件的配置,将改请求转发给ProudctAction调用toUpdate()方法,该方法获取到菜品id,调用ProductDAO的findById()方法查询指定的菜品信息。
返回显示要修改菜品信息,当用户填写相应的修改信息,点击修改,将会向将会发送Http请求请求,服务器端Struts2拦截用户请求,根据文件的配置,将改请求转发给ProudctAction调用update()方法,调用ProductDAO的modify()方法修改指定的菜品信息。
操作数据库是调用hibernate提供的()方法修改数据库product表指定id数据记录,操作成功,提示用户“修改成功”。
操作失败,提示用户“请稍后重试
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 高校 网上 系统 设计 实现 论文
![提示](https://static.bdocx.com/images/bang_tan.gif)