【源码+文档+调试教程】基于微信小程序的电子购物系统的设计与实现

摘  要

由于APP软件在开发以及运营上面所需成本较高,而用户手机需要安装各种APP软件,因此占用用户过多的手机存储空间,导致用户手机运行缓慢,体验度比较差,进而导致用户会卸载非必要的APP,倒逼管理者必须改变运营策略。随着微信小程序的出现,解决了用户非独立APP不可访问内容的痛点,所以很多APP软件都转向微信小程序。本次课题就运用了微信小程序技术开发一个基于微信小程序的电子购物系统。

基于微信小程序的电子购物系统是在MySQL中建立数据表保存信息,运用微信开发者工具开发。并按照软件设计开发流程进行设计实现。系统具备友好性且功能完善。管理员管理不同状态的订单,管理商品和用户,审核订单评价。用户收藏商品,订购商品,管理个人订单,联系客服,在线充值。

总之,基于微信小程序的电子购物系统可以更加方便用户在线查看商品,购买所需商品,管理个人购买订单。

关键词:基于微信小程序的电子购物系统;MySQL;微信开发者工具


Abstract

Due to the high cost of APP software development and operation, and the user's mobile phone needs to install various APP software, it takes up too much mobile phone storage space of the user, causing the user's mobile phone to run slowly, the experience is relatively poor, and the user will uninstall Non-essential APPs force managers to change their operating strategies. With the emergence of WeChat mini-programs, the pain point that users cannot access content from non-independent APPs has been solved, so many APP software have turned to WeChat mini-programs. This project uses WeChat applet technology to develop an electronic shopping system based on WeChat applet.

The e-shopping system based on WeChat applet is to establish a data table in MySQL to store information, and use WeChat developer tools to develop. And in accordance with the software design and development process for design and implementation. The system is friendly and fully functional. The administrator manages orders in different states, manages products and users, and reviews order evaluations. Users collect goods, order goods, manage personal orders, contact customer service, and recharge online.

In short, an electronic shopping system based on WeChat applets can make it more convenient for users to view products online, purchase required products, and manage personal purchase orders.

Key WordsElectronic shopping system based on WeChat applet; MySQL; WeChat developer tool


  

1 绪论

1.1 选题背景

1.2 选题意义

1.3 研究内容

2 系统开发技术

2.1微信开发者工具

2.2 MYSQL数据库

2.3 Java语言

2.4 SSM框架

3 系统分析

3.1可行性研究

3.1.1经济可行性

3.1.2时间可行性

3.1.3操作可行性

3.2系统性能分析

3.2.1系统易用性

3.2.2系统健壮性

3.2.3系统安全性

3.3 系统流程分析

3.4系统功能分析

4 系统设计

4.1系统目标

4.2功能模块设计

4.3数据库设计

4.3.1数据库E-R图

4.3.2 数据库表结构

5 系统实现

5.1 管理员功能实现

5.1.1 订单评价管理

5.1.2 商品信息管理

5.1.3 已完成订单

5.1.4 用户管理

5.2 用户功能实现

5.2.1 商品信息

5.2.2 购物车

5.2.3 下单支付

5.2.4 我的订单

5.2.5 在线客服

5.2.6 我的收藏管理

6系统测试

6.1 系统测试的类型

6.2 功能测试

6.3 可用性测试

6.4 测试结果分析

结  论

参考文献

  

1 绪论

1.1 选题背景

随着移动互联形式的不断发展,各行各业都在摸索移动互联对本行业的改变,不断的尝试开发出适合于本行业或者本公司的APP。但是这样一来用户的手机上就需要安装各种软件,但是APP作为一个只为某个公司服务的一个软件,是一种闭环的生态,从用户获取和保持用户的粘性都变成了一个难题,并且在维护上面也需要考虑成本,慢慢的变成了不开发APP跟不上潮流,开发APP则运营上面步履维艰。如何获取一个新的客户来源通道以及转换通道,变成了管理者都需要面对的一个问题。如何让一个用户从已经习惯的应用里跳转到希望用户访问的应用里,这是一个问题,而微信小程序就解决了这样的难题。微信拥有庞大的用户基础,可以不用更换APP直接在微信上就可以访问用户想要访问的资源。因此微信小程序相对于APP来讲更受欢迎,本次课题就运用了微信小程序技术开发一个基于微信小程序的电子购物系统。

1.2 选题意义

背靠微信庞大用户群体的微信小程序,变成了当前解决用户访问应用程序入口方案的一种选择,用户的手机里面只要有微信,不需要安装新的软件,就可以直接访问指定目标,获取指定内容,解决了管理者的痛点,并且微信作为一个聊天工具,在微信里有支持的各种各样的生活服务,也为微信的用户提供了粘性,微信小程序不管是针对用户或者管理者都是一个双赢的存在。目前,传统电商及零售行业因为小程序的出现而获得了新生。本次课题针对用户网络购物,借助于微信小程序这样的平台,可以更加方便用户在线查看商品,购买所需商品,管理个人购买订单。

1.3 研究内容

按照设计开发一个系统的常用流程来描述系统,可以把系统分成分析阶段,设计阶段,实现阶段,测试阶段。所以在编写系统的说明文档时,根据系统所处的阶段来描述系统的内容。

绪论:这是对选题的背景,意义等内容做出介绍。

系统开发技术:这是对系统即将使用的技术,包括使用的工具等做出介绍。

系统分析:这是对系统做出分析,包括投资前期必备的可行性分析,包括对用户调研获取的需求,包括系统运行具备的性能等内容做出介绍。

系统设计:这是对系统进行设计,包括运用绘图工具设计的系统功能结构,包括设计的在数据库中要创建的数据表的存储结构等内容做出介绍。

系统实现:这是对系统进行编码实现。包括实现的系统各个模块的运行效果等内容做出介绍。

系统测试:这是对编制的系统进行测试。包括功能的测试等内容做出介绍。


2 系统开发技术

这部分内容主要介绍本系统使用的技术,包括使用的工具,编程的语言等内容。

2.1微信开发者工具

微信web开发者工具是国内腾讯公司开发的专门用来开发微信小程序的一个工具。开发过程中如果是项目团队开发,可以设置多个开发和测试成员,管理员可以在小程序管理后台添加成员并且设置所需的权限。微信web开发者工具可以开发小程序项目以及微信公众号网页项目,小程序项目如果不部署到服务器上只做开发测试的话,AppID可以点击测试生成,否则需要在微信公众平台上申请微信公共号和微信小程序。用微信web开发者工具可以对程序与页面,组件和API进行调用,发布之前可以生成好几个小程序版本,并可以在后台查看运营相关数据。微信开发者工具是微信小程序开发的必备利器! 

2.2 MYSQL数据库

关系型数据库设计,对于数据库字段类型的设计以及字段长度的设计,都无时无刻的影响着后续程序开发后大量数据操作的运行效率。关系型数据库对不同的字段类型都有解释,本着课题所需的应用程序开发,寻找最适合的关系型数据库,基本上都有考虑。关系型数据库发展至今也有几十年了,优胜劣汰导致到现在还依然存在的关系型数据库其实并不多,基本上也都能满足应用程序的功能所需,所以要从其他方面来进行考虑数据库的选择。从安装维护上面考虑,SQL Server数据库有好几个G的安装包,并且安装过程中会安装很多不需要的功能,非常占用资源。Oracle数据库不比SQL Server安装包小,并且安装也会出现很多问题,对于课题所需来讲,没必要这么麻烦,并且安装还需要各种激活,只有MySQL数据库完全适合,几十兆大小的安装包,运行起来压力不大,而且完全免费,所以选择了MySQL数据库作为首选数据库。

2.3 Java语言

Java语言自公元1995年至今,已经超过25年了,依然在软件开发上面有很大的市场占有率。当年Sun公司发明Java就是为了发展一门跨平台的高级编程语言,让程序开发人员专注于程序开发过程,不需要关注服务器是属于哪个平台,因为跨平台的特性让语言发展的很迅速。Java的发展,吸收了C++这些语言的优点,因为新生事物一般就是解决老旧事物一些痛点的,虽然Java也有很多缺点,但是起码也算是一种发展方向。学习Java不需要太多的指针这些理念,也不用学习太过复杂的数据结构理论,比如什么堆栈这些概念,除非某些特殊行业对这些要求相当严谨之外,一般用Java开发程序是不用考虑各种各样的数据结构的。因为Java属于一种强类型语言,已经对各种数据定义了各种相应的类型。Java对数据类型定义分为两大种,一种是基本类型,含有8个基本属性,另一个是包装类。基本类和包装类从根本的定义上,都有很明显的区分,计算机运行也会有很明显的差别,如果用错了会编译错误还会影响运行效果的,Java的各种优点只需要按部就班的学习使用即可。

2.4 SSM框架

本课题开发的应用程序主要采用的框架技术是SSM,是Java语言的一种框架集合的简称,目前在Java语言方面,主要有两大分支,一个是主攻Java语言,学习了Java基础之后,会有很多Java进阶框架进行学习,主要是针对应用程序后台进行开发设计,另一方面是转行去学习安卓语言,主要是做安卓的前端设计方面,虽然也是Java语言,但是主要去学习安卓平台的各种架构和框架了。但是不管前端应用如何,SSM框架主要是针对服务端方面进行开发的一个主流框架集合。针对于传统的SSH框架的臃肿,配置繁琐,不管是开发还是二次开发都会造成时间上大量的浪费,并且学习上面也不能有效衔接,需要去适应框架的各种设计,而框架设计比较死板,容易出错。SSM框架是当前最流行的,告别了繁琐的配置,让配置更加灵活,让数据操作更加方便,选择SSM框架进行开发感觉是很合适的。

3 系统分析

这部分内容虽然在开发流程中处于最开始的环节,但是它对接下来的设计和实现起着重要的作用,因为系统分析结果的好坏,将直接影响后面环节的开展。

3.1可行性研究

影响系统开发的因素有很多,比如开发成本高就不适合开展,或者是开发时间超过了预期,也不适合开展等等。所以,在正式作出开发决策前,研究系统可行性问题,从经济,时间,操作等角度论证系统是否可以开展。

3.1.1经济可行性

基于微信小程序的电子购物系统可以简化工作流程,提供信息处理功能,并可以长期保存数据,在后期的数据查询与编辑中耗时少,提升信息管理效率,其带来的收益比较可观。对于本系统开发,无论是开发需要使用的设备,还是开发工具等投入的成本很低。

3.1.2时间可行性

基于微信小程序的电子购物系统是作为本人毕设项目的一个作品,学院也充分预留了制作时间,并且在每个时间段,都安排了相应的任务,所以根据这个时间安排开展工作,是可以对本系统进行设计完成的。

3.1.3操作可行性

随着手机的普及,已经有很多人可以独立操作手机了。而微信的普及与运用,让微信小程序的操作与使用变得容易,本系统功能简单,省去了很多繁琐的操作逻辑,使用者通过页面导航可以直接进入功能操作区,所以稍微懂点手机的人,都可以轻松完成系统的使用。

综上所述,本系统可以开展接下来的工作了。

3.2系统性能分析

为了降低本系统在实际使用中的出错率,就需要分析系统具备的性能。常见的可以评估系统的性能的指标有安全性,易用性,健壮性等。

3.2.1系统易用性

系统提供的信息和服务都有特定的用户群,所以,一个容易操作的系统相比一个不方便使用的系统来讲,用户还是更加青睐于使用方便的系统。所以系统具备易用性就显得非常重要。

3.2.2系统健壮性

系统在与用户进行交互过程中,面对用户的误操作行为,系统应该有相应的处理这种问题的反馈机制,而不是进入系统崩溃状态。系统中设置了很多的功能,在应对系统中某个功能出现异常情况时,系统的其它功能还是可以让用户使用。这就是系统健壮性的体现。

3.2.3系统安全性

保存在系统里面的数据,都是比较重要的系统资源,一旦这些资源泄露,不仅会有财产损失,还会丧失很多客户。所以,系统里面的数据要随时都处于安全的环境中,因此就需要采取措施保证数据安全,比如设置登录功能,使用安全验证技术引导条件用户进入指定页面,而让非条件用户停留在登录页面,不能访问系统。

3.3 系统流程分析

软件开发设计的思想始终贯穿本系统,其开发流程见下图。前期需要进行功能分析,功能设计,还有对系统后台支持数据库的设计,利用编码技术对设计的系统进行实现,然后检测和完善。

图3.1系统开发流程图

访问者之所以可以访问基于微信小程序的电子购物系统,主要是其数据库有该访问者的记录信息,这个记录是通过注册进行写入的数据。注册流程见下图。每当访问者进行基于微信小程序的电子购物系统注册时,其登记的每条记录都会在系统后台进行逐个判断。这个判断规则是提前设置的。一旦该访问者的登记信息在数据库中保存,即代表该访问者成为基于微信小程序的电子购物系统中的一份子。

图3.2 注册流程图

访问者操作系统,前提是需要验证身份,而登录功能的设置就是把本系统的用户引导进入后台操作区,把不是本系统的用户拒之门外。其流程见下图。

图3.3 登录流程图

3.4系统功能分析

在明确系统的用途,以及系统的目标用户群后,可以对本系统的功能进行设置,可以获取调研用户对功能的要求,也可以对市场上同类系统进行分析和总结,得出本系统的功能。

基于微信小程序的电子购物系统设置了管理员权限,其用例图见下图。管理员管理不同状态的订单,管理商品和用户,审核订单评价。

图3.4 管理员用例图

基于微信小程序的电子购物系统设置了用户权限,其用例图见下图。用户收藏商品,订购商品,管理个人订单,联系客服,在线充值。

 源码获取:

宫众浩         文心海资源库~

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/595120.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

本地的git仓库和远程仓库

文章目录 1. 远程创建仓库2. 关联远程和本地代码3. 推送本地分支到远程 1. 远程创建仓库 2. 关联远程和本地代码 上面创建完后会得到一个git仓库的链接,有SSH或者http的 http://gitlab.xxxxx.local:18080/xxxxx/dvr_avm.git ssh://gitgitlab.xxxxx.local:10022/xx…

COUNT(1)\COUNT(*)\COUNT(列名)到底谁更快

今天来研究一个比较有趣的话题,关于我们平常使用mysql查询数量的到底那种方式查询效率更高的问题 起因 这个问题在我以前的认知里是,按效率从高到低品排序 count(1)>count(列名)>count(*),但是我也注意到过mybatis-plus官方提供的selectCount方法和分页查询时,它的SQL在…

第五十三节 Java设计模式 - 工厂模式

Java设计模式 - 工厂模式 工厂模式是一种创建模式,因为此模式提供了更好的方法来创建对象。 在工厂模式中,我们创建对象而不将创建逻辑暴露给客户端。 例子 在以下部分中,我们将展示如何使用工厂模式创建对象。 由工厂模式创建的对象将是…

监控公司局域网电脑的软件|局域网电脑监控软件哪个好用

想要监控公司局域网电脑?没问题,市面上有一大堆选择等着你!每个软件都有它的独门绝技和适用场合,接下来就让我带你看看哪些软件既好用又功能强大吧! 🎉OpManager: 这位大佬适合中大型企业&#…

每日算法-java

题目来自蓝桥云 // 这是一个Java程序,用于解决最长不下降子序列问题。 // 问题描述:给定一个整数序列,找到最长的子序列,使得这个子序列是不下降的(即相邻的元素不严格递减)。 // 程序使用了动态规划的方法…

STM32编译前置条件配置

本文基于stm32f104系列芯片,记录编程代码前需要的操作: 添加库文件 在ST官网下载标准库STM32F10x_StdPeriph_Lib_V3.5.0,解压后,得到以下界面 启动文件 进入Libraries,然后进入CMSIS,再进入CM3&#xff…

这些接口测试工具你一定要知道

接口测试工具 接口测试工具如图: 1.Fiddler 首先,这是一个HTTP协议调试代理工具,说白了就是一个抓http包的工具。web测试和手机测试都能用到这个工具。既然是http协议,这个工具也能支持接口测试。 2.PostMan Postman一款非常流行…

视频号怎么做有收益,上传短视频怎么挣钱

比如说抖音有中视频流量收益,B站有创作激励计划流量收益,如今在微信端不仅有公众号流量主收益, 现在视频号还推出了创造分成流量收益! 对于我们普通人来说无异于又一个机会,能不能抓得住就看你能不看懂本Sir今天的这…

JDK 17有可能代替 JDK 8 吗

不好说,去 Oracle 化是很多公司逐步推进的政策。 JVM 有 OpenJ9。很多公司可能会用 IBM 的版本。 JDK 这东西,能用就不会升级。 JDK 太基础了,决定了后面的很多 jar 的版本。 https://www.ossez.com/t/jdk-17-jdk-8/14102

通过Matlab实现Hermite基函数进行信号拟合,可应用于信号降噪

利用Hermite基函数的Hermite近似,在不牺牲精度的情况下,实现对时序信号的降噪,文中图片以心电信号QRS波群滤除高频干扰为例。 1.知识背景 Hermite正交多项式是一类重要的正交多项式,它们起源于数学中的Hermite函数和特殊函数理论…

第28章-PPPoE

1. 以太网接入的典型应用 1.1. IP技术的应用与发展 1.2. 以太网接入的典型应用场景之一——大型园区接入的典型应用 2. PPPoE技术的基本原理 2.1. 技术背景 2.2. PPPoE工作原理 2.3. PPPoE的两个阶段:Discovery阶段和PPPSession阶段 2.4. PPPoE的帧结构 2.5. PPPoE…

【精品毕设推荐】搜索引擎的设计与实现

点击免费下载原文及代码 摘要 我们处在一个大数据的时代,伴随着网络信息资源的庞大,人们越来越多地注重怎样才能快速有效地从海量的网络信息中,检索出自己需要的、潜在的、有价值的信息,从而可以有效地在日常工作和生活中发挥作…

【NI 国产替代】cDAQ-9178, 8槽USB CompactDAQ机箱,国产数据采集卡控制器进口替代方案

8槽USB CompactDAQ机箱 cDAQ-9178是专为小型便携式传感器测量系统而设计的总线供电CompactDAQ USB机箱。机箱通过即插即用的USB可轻松连接传感器和电气测量。该机箱还可控制C系列I/O模块与外部主机之间的定时、同步和数据传输。机箱可以搭配不同的C系列I/O模块组合&#xff0c…

【C++】cin输入和cout输出

cin和cout简介 cin可以从键盘中读取数据,cout可以把数据打印到显示器上,cout配合endl可以打印换行符。cin、cout和endl是在iostream头文件内声明的,使用时必须#include包含iostream头文件。cin、cout和endl都在命名空间std里,参考…

区块链交易所开发

在当今数字化时代,区块链技术以其独特的去中心化、安全性和透明性,正在逐步改变我们的生活。其中,区块链交易所作为连接区块链技术与广大投资者的桥梁,其开发与发展备受关注。本文将从技术进步与市场需求两个维度,探讨…

抖音小店达人佣金应该怎么结算呢?给达人设置多少佣金合适?

大家好,我是电商小V 咱们在运营抖音小店的时候一定会遇到被达人催促结算佣金的情况,咱们给达人合作的时候都会遇到过新手达人,就是给咱们直播带货之后催促咱们赶紧结算商品的佣金, 但是咱们都需要知道一点,那就是小店的…

VTK —— 三、简单操作 - 示例2 - 计算从3D点到直线的距离(附完整源码)

代码效果 本代码编译运行均在如下链接文章生成的库执行成功,若无VTK库则请先参考如下链接编译vtk源码: VTK —— 一、Windows10下编译VTK源码,并用Vs2017代码测试(附编译流程、附编译好的库、vtk测试源码) 教程描述 本…

跟TED演讲学英文:How to govern AI — even if it‘s hard to predict by Helen Toner

How to govern AI — even if it’s hard to predict Link: https://www.ted.com/talks/helen_toner_how_to_govern_ai_even_if_it_s_hard_to_predict? Speaker: Helen Toner Date: April 2024 文章目录 How to govern AI — even if its hard to predictIntroductionVocabu…

Hadamard Product(点乘)、Matmul Product(矩阵相乘)和Concat Operation(拼接操作)在神经网络中的应用

Hadamard乘积(Hadamard Product),矩阵乘法(Matmul Product)和拼接操作(Concatenation Operation)在神经网络中的使用情况如下: Hadamard Product点乘、内积: Hadamard乘…

编程入门(六)【Linux系统基础操作一】

读者大大们好呀!!!☀️☀️☀️ 🔥 欢迎来到我的博客 👀期待大大的关注哦❗️❗️❗️ 🚀欢迎收看我的主页文章➡️寻至善的主页 文章目录 🔥前言🚀Linux操作系统介绍与环境准备Linux操作系统介…