当前位置:   article > 正文

基于协同过滤算法的智能推荐点餐系统小程序/基于微信小程序的点餐系统_基于协同过滤的微信点餐推荐系统的设计与实现

基于协同过滤的微信点餐推荐系统的设计与实现

摘  要

社会的发展和科学技术的进步现在我们所生活的世纪是一个集信息高度数字化,网络化,信息化的,以网络为核心的社会。随着移动互联网的飞速发展,微信客户端的应用也逐渐广泛起来。与此同时,我国每个人经济方面的收入不断提高我们大家的生活质里和生活水品都有了很大的改善,仅在就餐方面,去餐馆排队点餐的方式已经无法满足用户需求,越来越多用户开始网上下单,本人结合移动互联网的发展以及微信客户端的广泛使用的优势,开发了智能推荐点餐系统,即实现了用户在线查看美食信息进行下单订购的功能,又提高了餐馆的营业额。

随着智能化的手机逐渐走向我们每个人的生活,手机已经渐渐地加入到了人们高频率的生活当中去。在信息技术迅速发展的今天,计算机技术已经遍及全球,使社会发生了巨大的变革,现今各种智能手机层出不穷,各类基于手机平台的软件应运而生,其中,在众多交流软件中,微信备受人们青睐,近年来,微信发展规模越来越大,越来越多的人开始使用微信,目前智能手机系统的普及,人们手机上基本都有了微信,据调查发现,中国约90%的人选择使用微信。据调查,目前人们对小程序点餐的需求越来越大,用户的需求增大,越来越多饮食方面的资本商家,开始建设以微信基础的用户下单交易平台,餐饮企业间竞争激烈,如何更好的进行餐饮宣传,满足用户点餐需求,成了餐饮商家关注的热点。微信公众号的成熟,其信息推送便利、快速的特点,让越来越多企业、个人重视,都纷纷开始建立公众号,针对这一现状, 餐饮企业有必要开发一个智能推荐点餐系统

关键字:智能推荐点餐系统; Java语言;MySQL数据库;Spring Boot框架


                                  Abstracts

With the development of society and the progress of science and technology, the century we live in now is a highly digital, networked and information-based society with network as the core. With the rapid development of mobile Internet, the application of wechat client is becoming more and more widely. At the same time, the economic income of everyone in China has been continuously improved, and our quality of life and water products have been greatly improved. Only in terms of dining, the way of queuing up to order in restaurants has been unable to meet the needs of users. More and more users have begun to place orders online. Combined with the development of mobile Internet and the wide use of wechat clients, I have developed an intelligent recommended ordering system, It not only realizes the function that users can view food information online and place orders, but also improves the turnover of restaurants.

With the intelligent mobile phone gradually moving towards everyone's life, mobile phones have gradually joined people's high-frequency life. Today, with the rapid development of information technology, computer technology has spread all over the world, making great changes in society. Nowadays, all kinds of smart phones emerge in endlessly, and all kinds of software based on mobile phone platform emerge as the times require. Among many communication software, wechat is favored by people. In recent years, the development scale of wechat has become larger and larger, and more and more people begin to use wechat. At present, the popularity of smart phone system, People basically have wechat on their mobile phones. According to the survey, about 90% of people in China choose to use wechat. According to the survey, at present, people's demand for ordering small programs is increasing, and the demand of users is increasing. More and more capital businesses in catering have begun to build a user order trading platform based on wechat. The competition among catering enterprises is fierce. How to better carry out catering publicity and meet users' ordering needs has become the focus of catering businesses. With the maturity of WeChat official account, its information push convenience and fast characteristics, more and more enterprises and individuals have taken note of the official account. In view of this situation, catering enterprises need to develop an intelligent recommendation system.

Key words: intelligent recommended ordering system; Java language; Mysql database; Spring boot framework

  录

摘  要

Abstracts II

目  录 III

第1章 绪论 1

1.1课题背景 2

1.2研究意义 3

1.3研究内容 4

第2章 技术介绍 5

2.1 微信开发者工具 6

2.2 小程序框架以及目录结构介绍 7

2.3 JAVA语言 8

2.4 Mysql数据库 9

2.5 Springboot框架 10

2.6 协同过滤算法简介 11

第3章 需求分析 12

3.1需求分析概述 13

3.2可行性分析 14

3.2.1经济可行性 15

3.2.2技术可行性 16

4章 系统设计 1

4.1系统结构设计 18

4.2数据库设计 19

4.2.1实体ER图 20

4.2.2数据表 21

5章 系统实现 22

5.1管理员服务端 23

5.2用户微信端 24

6章 系统测试 25

6.1测试定义及目的 26

6.2测试方法 27

6.3测试模块 28

6.4测试结果 29

结  论 30

致  谢 31

参考文献 32

第1章 绪论

1.1课题背景

随着现代科学技术以及信息技术的飞跃式前进,智能化的手机越来越普遍,微信公众平台在微信应用软件中的应用日益广泛和深入,特别是Internet与智能手机的接轨,为微信的发展提供了丰富有力的条件。目前,微信主要分为个人微信以及微信公众号,微信公众号的开发为餐饮行业等带来了极大的方便。据我们互联网行业发布的最新报道显示,随着手机的不断更新,和手机价格的降低,智能手机呈快速增长趋势,使用微信的人不断增加,这使得智能推荐点餐系统的使用成为必然。本智能推荐点餐系统的研究目标如下:

(1)操作简便、界面良好:简单明了的页面布局。用户通过本系统可快速查询美食信息,并可实现下单订购功能;

(2)即时可见:对管理员在后台发布的美食信息立马在系统前台展现出来,实现了“即时发布、即时见效“的功能。

(3)功能的完善性:管理员通过后台可对系统相关信息进行全面的管理,用户通过本系统可快速进行下单订购操作。

1.2研究意义

越来越多的互联网爱好者开始在互联网上满足他们的基本需求,同时逐渐进入各个用户生活的起居。互联网具有许多优点,例如便利性,速度,高效率和低成本。因此,类似于智能推荐点餐系统,满足用户工作繁忙的需求,不仅是方便用户随时查看美食信息进行下单订购,而且还能提高管理员的工作效率。

本文首先以智能推荐点餐系统过程的基本问题作为研究对象。在开发系统之前,我们对现有状况进行了详细的调查和分析。最后,我们利用计算机技术开发了一套完整合适的智能推荐点餐系统 。该系统的实现主要优势是:该系统主要采用计算机技术开发,它方便快捷;系统可以通过管理员界面查看系统所涉及的智能推荐点餐系统所有信息管理。

智能推荐点餐系统软件是一款方便、快捷、实用的信息服务查询软件。随着智能网络在全球市场的不断普及以及各种智能平台的使用,作为中国主流智能的技术开发系统,自然需要这样的软件来满足更多用户的需求和体验。系统的开发与用户的日常需求相关,如通过管理系统获取到美食信息等详细信息还能查看公告信息等。

1.3研究内容

根据智能推荐点餐系统编写的论文主要阐述了智能推荐点餐系统的开发过程中使用的技术,首先进行系统需求分析,进而进行系统设计,最后才是系统功能实现以及测试几个部分,在开始编写论文之前亲自到图书馆借阅JAVA书籍,MYSQI数据库书籍等编程书籍,然后针对开发的智能推荐点餐系统,去网上查找了很多别人做好的系统,根据他们的功能设计进行自己的系统的系统功能结构设计,出具需求报告,最后才是进行程序编码,系统完成后才能进行测试和最后的验收工作,程序开发流程大致如此。

详细内容介绍,将在以下五章中详细阐述:

第一章、绪论,介绍了研究课题选择的背景及意义、研究现状,简要介绍了本文的章节内容。

第二章、引入技术知识,通过引入关键技术进行开发,向系统中涉及直观表达的技术知识。

第三章、重点分析了系统的分析,从系统强大的供需市场出发,对系统开发的可行性,系统流程以及系统性能和功能进行了探讨。

第四章、介绍了系统的详细设计方案,包括系统结构设计和数据库设计。

第五章、系统设计的实现,通过对系统功能设计的详细说明,论证了系统的结构。

第六章、系统的整体测试,评判系统是否可以上线运行。

第2章 技术介绍

2.1微信开发者工具

微信开发者工具现在已经被小程序开发团队开发运行,目前微信开发者工具任然在不断的完善中,在开发小程序时经常要不断的更新。可以使用微信扫码登陆开发者工具,开发者工具将使用这个微信帐号的信息进行小程序的开发和调试。

机型选择:小程序以智能手机的屏幕尺寸为设计标准,进行切图。

预览界面:写好视图布局后点击编译,用来刷新视图界面

控制台:方便调试打印输出信息

上传代码:上传到腾讯服务器,提交审核必经步骤。上传代码时可以填写版本号和备注信息

资源文件:一般可以在资源文件进行对应项目的文件目录断点调试

显示远程调试:手机端和PC端开发工具联调对用户而言是非常实用

本地数据存储:显示的是本地存储的数据

视图调试:标组件以子父层级结构呈现,方便调试。

微信限制2M 以内代码体积开发中一般不校验合法域名信息小程序后台要做配置服务器域名

以上就是在开发过程中微信开发者工具常用到的功能,微信开发者工具也在不断的完善

2.2小程序框架以及目录结构介绍

整个小程序框架系统分为两部分:逻辑层视图层。小程序开发框架的目标是通过尽可能简单、高效的方式让开发者可以在微信中开发具有原生 小程序 体验的服务。小程序在视图层与逻辑层间提供了数据传输和事件系统,提供了自己的视图层以及逻辑层框架,让开发者能够专注于数据与逻辑。框架的核心是一个响应的数据绑定系统,可以让数据与视图非常简单地保持同步。在逻辑层做数据修改,在视图层就会做相应的更新。框架提供了一套基础的组件,这些组件自带微信风格的样式以及特殊的逻辑,开发者可以通过组合基础组件,创建出强大的微信小程序 。

2.3 JAVA语言

Java主要采用CORBA技术和安全模型,可以在互联网应用的数据保护。它还提供了对EJB(Enterprise JavaBeans)的全面支持,java servlet API,java (java server pages),和XML技术。

JAVA语言功能:

面向对象:面向对象是Java编程语言的标志之一,是一种软件开发方法。最重要的是将所有东西变成对象,然后以某种方式编程。编程时,代码和数据写在每个对象上。 面向对象编程方法的出现使得人们在编程过程中的设计思考和操作变得非常简单,同时也提高了程序的安全性。

跨平台:Java流行的一个关键特性是它的跨平台特性,这使得用Java编程变得容易。您可以用Java编写程序并在其他地方运行它,而无需在编译后更改它。

垃圾回收机制:用来将那些在程序不操作时无用的对象所占用的内存空间释放掉,C ++最被人厌恶的就是因为其不能将在编程的过程中所占用的内存空间进行及时的释放,导致随着编程时间的变长所占用的内存空间越来越多。对于一些编程高手而言,他们会在刚开始编程的时候配置一块内存地址放在堆栈上,然后在不需要的时候会对其进行释放,而一些新手和菜鸟在很多的时候会忘记删除这个内存地址,从而导致程序在运行的过程中会变得十分的不稳定,最终有可能会导致程序崩溃。所以很多C ++的高手在编写程序时往往都会将删除后的指针的值设置为NULL,然后在删除之前确定一个指针的值是否为NULL。

2.4  Mysql数据库

数据库是系统开发过程中不可或缺的一部分。 在WEB应用方面,MySQL AB开发了一个具有很大优势的MySQL关系数据库管理系统。 MySQL可以将数据存储在不同的表中,这非常灵活,并且还可以提高系统在实际应用中的速度。 数据库访问最常用于标准SQL语言,MySQL用于SQL语言,因此它具有高度兼容性。数据库的操作是必不可少的,包括对数据库表的增加、删除、修改、查询等功能。现如今,数据库可以分为关系型数据库和非关系型数据库,Mysql属于关系性数据库,Mysql数据库是一款小型的关系型数据库,它以其自身特点:体积小、速度快、成本低等,Mysql数据库是目前最受欢迎的开源数据库。

在WEB应用技术中, Mysql数据库支持不同的操作系统平台,虽然在不同平台下的安装和配置都不相同,但是差别也不是很大,Mysql在Windows平台下两种安装方式,二进制版和免安装版。安装完Mysql数据库之后,需要启动服务进程,相应的客户端就可以连接数据库,客户端可通过命令行或者图形界面工具登录数据库。

2.5 Springboot框架

本技术是Java平台的开源应用框架,其目的是简化Sping的初始搭建和开发过程。默认配置了很多框架的使用方式,自动加载Jar包,为了让用户尽可能快的跑起来spring应用程序。

SpinrgBoot的主要优点有:

  1. 为所有spring开发提供了一个更快、更广泛的入门体验;
  2. 零配置;
  3. 集成了大量常用的第三方库的配置;
  4. 提供准备好的特性。当今,Java领域的开发者机会都在使用SpinrgBoot,在开发领域逐渐成为领导者。

2.6 协同过滤算法简介

基于项目的协同过滤,它使用所有用户对物品或者信息的偏好,发现物品和物品之间的相似度,然后根据用户的历史偏好信息,将类似的物品推荐给用户。                  
   基于项目的协同过滤推荐机制的基本原理假设用户A喜欢物品A和物品C,用户B喜欢物品A,物品B和物品C,用户 C喜欢物品A,从这些用户的历史喜好可以分析出物品A和物品C时比较类似的,喜欢物品A的人都喜欢物品C,基于这个数据可以推断用户C很有可能也喜欢物品 C,所以系统会将物品C推荐给用户C。如图2-1所

                 

                         图2-1  协同过滤算法

第3章 需求分析

3.1需求分析概述

任何一个项目在开发研究前,都需要对研发系统本身的需求做一个认真的分析,市场的调研是不可忽视的,从实际场景中确定使用人员的功能需求,从而明确目标,对整个系统的开发有一个更加准确的定位,在这个章节,需要对系统的性能分析,业务流程分析,和数据等进行分析,智能推荐点餐系统的整体界面简单,功能完善。

需求的可行性是分析和讨论发达的系统能达到什么样的要求。开发的系统平台是否符合之前的要求。只有在预先评估系统的开发中,才能在系统开发和实施之前完成需求。如果您不具备开发一个功能不合格的系统的可行性,那就是开发失败。开发系统是否有用,可以完成之前讨论过的需求,以下分析了智能推荐点餐系统的实际需求。

系统设计需要从管理员与用户的实际需求开始,以了解他们需要实施哪些功能以及他们可以包括哪些管理工作。

考虑到智能推荐点餐系统设计的特点,应满足几个要求:

(1)它可以通过网络开展智能推荐点餐系统信息管理工作,促进对智能推荐点餐系统的统一管理。

(2)学习方法变得更加多样化,管理更加标准化;

(3)它提供了一个免费的渠道,以确保数据的实时有效沟通。

3.2可行性分析

可行性分析目的是根据所开发系统的用户需求,明确研究方向和目标,通过可行性分析确定系统的框架和功能模块。

可行性分析是对任何管理系统的需求、技术和经济的分析。其中最重要的技术方面的可行性,技术可行性是分析软件开发技术的应用开发系统是可行的。其次,分析软件系统的需求,分析软件需求能否满足预先设计的功能需求。最后讨论了系统的操作可行性和经济可行性。

3.2.1经济可行性

在开发任何软件系统之前,它将考虑其后来的经济可行性,即开发和设计软件所需的成本及其在以后运行中可带来的经济效益是否可以匹配,以及软件是否能带来经济效益给用户。在本交互式用户管理软件的设计中,本文的主要目的是为用户提供一个方便与快捷智能推荐点餐系统,这在经济上是完全可行的。

3.2.2技术可行性

系统比较重要的一个分析就是技术可行分析,没有好的技术,再好的设计也是达不到系统的要求,并且对于技术的设计,使用的技术,如何更好的利用技术将所要实现的功能模块进行详细的分析,需要对技术进行详细的了解及自己的所学知识的一个综合使用。技术可行性主要取决于系统设计和开发中使用的各种硬件设施和软件设置,是否可以更好的结合,发挥他们的优势避开他们的弊端进行完美结合,确保技术的安全使用及正常的操作。

智能推荐点餐系统主要是基于JAVA语言开发,到目前为止JAVA语言的发展已经非常成熟。同时,它也受到许多开发人员的青睐。而且,在技术层面,Windows平台决定可以完成开发智能推荐点餐系统的任务。因此,系统开发在技术上是可行的。

3.3系统功能设计

软件的用户界面是最直接接触的对象,包括是否允许用户使用简单方便,请求的响应时间,主图像的整体质量,整体布局的质量。

智能推荐点餐系统的设计基于现有的网络平台,可以实现用户管理及数据信息管理方便管理员对信息进行管理有详细的了解及统计分析,随时查看信息状态。 

系统功能设计是在系统开发和设计思想的总体任务的基础上完成的。该系统的主要任务是实现智能推荐点餐系统管理,使用户可以通过指令完成整个智能推荐点餐系统的操作。

从上面的描述中可以基本可以实现软件的功能:

1、开发实现智能推荐点餐系统的整个系统程序; 

2、管理员服务端;首页、个人中心、用户管理、美食信息管理、类型管理、系统管理、订单管理等。

3、用户微信端:首页、美食信息、公告信息、购物车、我的相应操作;

4、基础数据管理:实现系统基本信息的添加、修改及删除等操作,

4章 系统设计

4.1系统结构设计

智能推荐点餐系统的设计主要是为了满足用户的实际需求。 因此,它需要通过Internet实现,因此它必须具备硬件和软件基础。该平台最终可以通过科学技术和各种方式达到支持智能化的信息管理的目的。因此,它必须具备网络智能推荐点餐系统管理所需的环境和各种资料,并保证实现开放性,模块性和实用性三个原则。

智能推荐点餐系统,主要包括管理员与用户二个权限角色,对于用户角色不同,所使用的功能模块相应不同。

智能推荐点餐系统结构,如下图4-1所示。

 

 

 

 

 

 

 

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/小小林熬夜学编程/article/detail/391642
推荐阅读
相关标签
  

闽ICP备14008679号