1、论文题目 基于价格和评价的外卖推优 APP 网站设计学 院 计算机学院专 业 计算机科学与技术年 级 2013 级 学 号 2013241312* 学生姓名 方*指导教师 邵平完成时间 2017 年 4 月肇庆学院教务处制毕 业 论 文学术诚信声明本人所呈交的毕业论文,是在指导教师的指导下独立完成。研究工作所取得的成果、数据、图片资料均真实可靠。除文中已注明引用的内容外,不包含任何其他人或集体已经发表或撰写过的作品或成果。对本论文的研究做出重要贡献的个人和集体,均已在文中以明确的方式标明。本毕业论文的知识产权归属于培养单位。本人完全意识到本声明的法律结果由本人承担。本人签名(手写): 日期:2
2、017 年 4 月 20 日 I目 录摘要与关键词 .11 绪论 .11.1 课题研究背景和意义 .11.2 国内外研究现状 .21.3 系统研究目标与内容 .22 系统需求分析 .32.1 需求分析描述 .32.2 技术需求 .32.3 可行性分析 .32.4 系统功能需求分析 .42.4.1 管理员功能需求分析 .42.4.2 用户功能需求分析 .52.5 本章小结 .63 系统详细设计 .63.1 系统模型结构 .63.2 数据库模型设计 .63.2.1 数据分析 .63.2.2 数据库概念设计 .73.2.3 数据库表设计 .73.3 用户详细设计 .93.3.1 用户管理实现流程 .
3、103.4 管理员详细设计 .103.4.1 管理员实现流程 .103.5 本章小结 .124 核心功能实现 .124.1 核心算法 .124.1.1 数据爬虫算法 .134.1.2 字符串比较算法 .134.1.3 集合排序算法 .144.2 管理员功能实现 .154.2.1 外卖信息管理 .15II4.2.2 商家广告入驻管理 .164.2.3 用户分享圈管理 .174.3 用户功能实现 .184.3.1 用户外卖比价设计 .184.3.2 其它相关功能 .194.4 本章小结 .195 系统测试 .195.1 测试目标 .195.2 测试环境 .205.3 测试用例 .205.3.1 数
4、据抓取测试 .205.3.2 字符串相识度测试 .215.3.3 系统安全性测试 .225.4 本章小结 .236 总结 .23参考文献: .23Abstract And Keywords.25肇庆学院毕业论文1基于价格和评价的外卖推优 APP 网站设计摘 要: 网上餐饮外卖需要量越来越大,导致外卖平台之间的竞争加剧。本文设计了一种基于价格和评价的外卖推优 APP 网站,该网站采用 B/S 架构来实现,基于浏览器和服务端处理,使用 Java 语言编程、HTML5 页面设计和 MySQL 作为数据库储存数据。最大的特点就是通过对外卖价格和评价的推优,为消费者选择餐饮服务带来方便。为消费者带来方便
5、和实惠。该系统的主要包含了外卖价格和评价的推优、商品的优惠推广和用户信息管理等功能,消费者根据该网站价格和评价推优结果进行点餐。根据该网站使用了 SSM 框架编程、网络爬虫技术收集数据和排序算法对价格和评价推优。该APP 网站可在跨平台的手机和平板系统中运行。关键词: 外卖;外卖推优;外卖价格对比1 绪论1.1 课题研究背景和意义在互联网的大时代下,网上餐饮行业订餐竞争越来越大,越来越多的实体店将重点放在了网上订餐平台的外送上。外卖,大家一般的理解就是快餐的送餐服务,其实从总的来说一切餐饮行业通过提供出外服务配送都可以说是外卖,这就加快发展了外卖 APP 订餐平台1,通过相关资料数据分析2,大
6、部分的餐饮网络销售的外卖销售额已经超过了实体店。现在的外卖平台非常多,主要有美团外卖、大众点评和饿了么 3等等。卖市场规模不停扩张,有相关数据统计显示,2016 年的外卖销售额达到接近 800亿元,2017 年的销售额将提升 10%左右。现在网上外卖平台之间的竞争加剧,越来越多的各大外卖 APP 平台,价格不同,外卖商家的入驻 APP 也不同,让用户在下单的时候难以决策。有没有一个网站可以统计各大 APP 的外卖价格,进行推优,这不是对用户体验更好了吗?这不是更加吸引用户么,更好推广外卖 APP!本系统的意义就是为消费者服务,对外卖的评价和价格推优,为消费者带来方便和实惠。基于价格和评价的外卖
7、推优 APP 网站设计21.2 国内外研究现状国外的外卖平台其实很早就起步了,早在 2001 年国外的外卖平台 4就开始发展了。国外用户的外卖通常是麦当劳等等快餐类食品。国外的外卖平台经过十几年的发展已经有了很好的规模,在技术和商业的方便都非常完善。国外的外卖主要可以分为两类,如 GrubHub 和 Just-Eat,规模比较大而且运营团队比较完善,是国内外卖平台难以对比的。中国的在线订餐业务与外国市场相比,差异很大:国内订餐都是为了方便和便宜。而国内的外卖平台近几年才起步,规模比较小,管理比较乱,并且外卖平台众多,为了占领市场,打起价格战吸引消费者。导致外卖市场比较混乱、外卖价格不统一,消费
8、者在选择外卖时更加艰难,因而对于外卖价格的推优需求迫切。根据线上的国内外外卖餐饮系统基本上都是分为 Android 客户端 5和 Web 服务器端网站 6两部分,这些系统中存在的效率低下、容易出错的特点。在 Android 客户端上基本上都是基于 ADK 的 Java 编程 7,毕竟 Android 开发是客户端开发,后台开发都是用到 Java 语言。而个别性能需求不同的部分,也有使用 NDK 开发的方式。据研究外卖的后台管理系统 8使用的框架一般分为 SSM(Spring+SpringMVC+MyBatis)和SSH(Struts+Spring+Hibernate)两大框架 9,国外使用的框
9、架以 SSH 最多,使用着个框架的优点比较多,Struts 用来显示系统的视图层,用 Spring 来架构处理系统的业务逻辑层,而最好用 Hibernate 架构处理系统的数据持久层,从而使系统的结构分明、逻辑分层方便管理和代码的复用率大大减少等等。Web 服务器端 10使用的语言比较多,有Java Web、ASP.NET 和 PHP 等语言,在界面设计方便现在国内外的页面都是基于HTM5 跨平台响应式布局 11,好处就是无论用什么浏览器和系统分辨率多大都可以自动适应屏幕,使用户体验更优。相对于国内的外卖平台因为数据量比较大都是使用Oracle 数据库系统,都使用 JavaScript、Aja
10、x、GPS 定位等技术。1.3 系统研究目标与内容根据上述研究现状,本文打算通过简洁大方的网页设计让消费者能够快速进行相关的外卖筛选,并根据各大 APP 进行价格和外卖推优排名。另外本网站也可以通过后台管理及时地更新各大 APP 的内容,让用户可以及时查看到 APP 的外卖信息变化。针对于此现状本系统主要研究的内容如下:(1) 研究 Web APP 开发外卖价格推优,统一把各大平台的 APP 信息集中在一起,并且统一分析和推优;(2) 分析网络爬虫技术把各大 APP 的价格统计设计框架和实现方法;肇庆学院毕业论文3(3) 本系统分析各大买卖的信息,运用算法推优价格;(4) 实现消费对外卖的评价
11、分享;(5) 实现用户管理的基本管理、登录注册和修改信息等等。2 系统需求分析2.1 需求分析描述开发之前首先要了解系统的需求和目的,针对不同的消费者研究一套可行的需求分析,每一个实现功能都要有它的意义和带来的价值,以下就是本系统的基本需求分析:(1) 系统最大的特点就是价格推优,把各大 APP 的外卖价格列举出来,根据算法排序推优,更加吸引消费者;(2) 系统主要技术难点网络爬虫技术 12,把各大 APP 的信息收录到数据库中,这个主要是实时收录更新数据库;(3) 提供商家入驻本 APP 网站,提供打广告的能,并且带来本 APP 网站的收益;(4) 提供用户交流圈,消费者可以对外卖来评价和分
12、享心情,实时分享给交流圈,人们可以更加关注到最新消息,亲近了人与人之间的感情;(5) 管理员管理者外卖信息和广告的入驻,并且有权限对信息进行登记管理;(6) 管理员审核用户信息,监控用户发布表的动态,对不良信息进屏蔽。2.2 技术需求本系统采用 B/S 架构来实现,根据需要分析主要使用设计分两大块实现,分别是前端页面显示和后台功能实现。前端页面显示主要是 JSP 和 HTML5,为了页面跟好看,系统也采用 CSS 对页面样式制作,使用 JQuery 对 HTML 页面操作、事件处理和 Ajax 交互,使用 Layer 对页面布局等等。后台功能实现使用的技术比较多,本系统采用 Java 语言开发
13、,开发工具为eclipse,开发平台为 Windows。MySQL 作为数据库存储相关的数据, Tomcat 为服务器。系统的功能实现用到推优算法、网络爬虫技术和字符串比较算法等等。基于价格和评价的外卖推优 APP 网站设计42.3 可行性分析为了本系统的实现,本文对系统的可行性分析评估,主要对系统的三个方面分析,分别是经济可行性、技术可行性和市场可行性分析。经济可行性:本系统为中小型网站 APP 开发,对于开发的资本不是很大,一般投资金额不会很多,对于一般的投资商家不成问题。后期网站发展更多,需要更多资金可以融资来解决经济问题,因而系统的实现在经济上是可行的;技术可行性:本系统使用的技术主要
14、是 Java、HTML、MySQL 和 JQuery 等等,没有很难技术要求,因而系统的设计在技术上也是可行的;市场可行性:网上订餐的餐饮行业平台非常多,种类不一样,而价格不统一。针对外卖价格的推优市场需求迫切,本系统的目的是为了服务消费者,因而市场上有很大的需求,相信本系统推出后即将获得很多的关注。所以系统在市场上也是可行的。2.4 系统功能需求分析2.4.1 管理员功能需求分析管理员负责对本系统的管理,对后台管理系统的操作,主要分为对外卖的管理、对商家入驻的管理和对用户的管理三大块的管理,具体实现的管理员功能如图 2-1所示。管理员用户信息管理分享圈管理关于本 A p p 信息对 A p p 推广对外卖信息收录外卖信息管理管理商家入驻图 2-1 管理员功能图(1) 对外卖信息的收录:管理员根据对不同 APP 上的信息进行抓取,把爬到的信息存储在数据库中,针对不同的外卖菜单验证,运用算法比较分类;(2) 外卖信息管理:管理员可以查看到收录的 APP 和相应的菜单详情信息,各