摘要
计算机发展快速的如今,已经运用到各个领域,以往传统的水果购买都是通过市场或者水果店进行挨家选购,有时候因为找某个品种的水果要跑好几个地方,既费时又费力,用户的体验急剧下降,本文研究设计的“智果商城购物系统”可以实现线上购买水果操作,浏览各品类的水果信息,选购自己喜欢的水果进行下单以及在线支付,还可以在线办理会员卡以及进行会员续费操作。此智果商城购物系统的开发项目以Springboot框架为基础,采用JavaWeb的开发方法,使用MySQL数据库,是一个功能全面、易于使用的在线水果购物平台,不仅提升了用户的购物体验,还为商家拓宽了更多的销售渠道。
关键词:智果商城购物系统;Springboot框架;MySQL数据库
Abstract
With the rapid development of computers, they have been applied to various fields. In the past, traditional fruit purchases were made door-to-door through markets or fruit stores. Sometimes, because searching for a certain variety of fruit requires traveling to several places, it is time-consuming and laborious, and the user experience has sharply declined. The "Smart Fruit Mall Shopping System" designed in this article can realize online fruit purchase operations, browse fruit information of various categories, select fruits of one's own liking for ordering and online payment, and can also apply for membership cards and renew membership online. The development project of this Zhiguo Shopping Mall shopping system is based on the Springboot framework, using JavaWeb development methods and MySQL database. It is a comprehensive and easy-to-use online fruit shopping platform, which not only enhances users' shopping experience, but also broadens more sales channels for merchants.
Keywords:Zhiguo Mall Shopping System; Springboot framework; MySQL database
第一章 引 言
1.1选题背景
近年来,随着计算机技术的快速发展和互联网时代的到来,使Internet技术持续迅猛的发展,也给传统的交易方式提出了新的模式。首先,按以往,人们只能通过水果店或电话来预定水果,去水果店即浪费时间又繁琐,电话订购虽然方便,但是不能获得水果的具体信息,而且还要受时间和空间的限制[1]。智果商城购物系统可以很好的解决这个问题,拉近了消费者与商家间的距离。与传统的销售交易方式相比,通过线上购买水果可以让消费者在任何地方(只要拥有一台和网络连接的计算机)都可以轻松的购买到自己中意的水果[2]。
1.2课题意义
随着电子商务的迅速发展,消费者对在线购物的需求日益增强,尤其是在水果等生鲜产品的购买上,用户希望能够便捷地获取新鲜的水果。构建智果商城购物系统能够为用户提供一个集成化的平台,满足他们多样化的购物需求,从而提升购物体验和满意度。通过引入会员管理和积分系统,智果商城不仅增强了用户的粘性,还激励了消费行为,促进了良好的消费习惯的形成,这对商家维护客户关系、提升二次消费具有积极作用。此外,系统的设计与实现为水果供应链的管理提供了有效的工具[3]。后台管理功能使商家能够实时管理订单以及分析销售数据,从而优化运营效率,减少资源浪费。这种数据驱动的决策方式有助于商家在竞争激烈的市场中保持优势。springboot技术选型和系统架构设计的研究为类似项目提供了宝贵的参考,推动了电商系统开发技术的进步。通过全面的测试与评估,确保了系统的安全性和稳定性,为用户提供了可靠的购物环境[4]。
智果商城购物系统的成功实施不仅推动了水果行业的数字化转型,也为其他行业的在线购物系统设计提供了启示,促进了整个电商生态的健康发展。这一研究在理论和实践层面均具有重要意义,为未来的研究与应用奠定了坚实的基础。。
1.3研究现状
随着商品经济的发展和信息技术的高度发达,商务行为电子化已经成方一种越来越流行的趋势,而电子商务则是这一趋势下的必然产物,越来越多的企业和个人的购物方式和以前有了实质的改变,以前的实体店已经不能足客户的需求,网上商店越来越多,交易的方式也从以前的网上发布,然网下交易购买,发展到了现在直接在网上进行在线支付[5]。随着物流的发展交易的物品也从以前的大件物品,发展到现在基本所有商品都能在网上购买。
近几年农产品电商的兴起,一些专注于农产品销售的电商平台如“每日优鲜”、“苏宁易购”等也提供了水果购物服务,推动了水果电商的发展。随着移动互联网的发展,许多国外水果购物平台注重移动应用的开发,提供便捷的移动购物体验[6]。欧美国家的电商平台如Amazon Fresh、Instacart等提供水果在线购买和配送服务,提供丰富的水果品种选择。
1.4论文具体的章节安排
论文主要架构、章节安排如下所示:
第一章:引言,介绍研究背景和研究意义,阐述出研究智果商城购物系统的实际价值,并提供论文结构概述。
第二张:系统开发工具的选择。
第三章:系统需求分析,通过用户需求分析、功能需求分析、业务流程分析,明确用户对智果商城购物系统的需求和系统应具备的功能。
第四章:系统设计,设计系统架构,包括选择合适的架构模式和数据库设计,以及各个模块的详细设计。
第五章:系统实现,选择合适的技术工具和框架,逐一实现各个模块,建立数据库连接并实现前端界面开发。
第六章:系统测试,进行系统功能测试,确保系统功能的正确性、协调性和稳定性。
第七章,结论。
第二章 开发工具介绍
2.1 Springboot框架
Spring Boot采用约定比配置更重要的思想,并通过默认配置来降低开发者所需完成的配置任务。这能够更快开始工程,降低配置出错的概率。Spring Boot内置了常用的Web容器(如Tomcat、Jetty等),无需外部部署,可通过内嵌容器轻松运行应用。这样就可以简化工程的调配与维修。Spring Boot借助自动化配置机制实现了基于项目依赖与环境的自动化应用配置。这样可以减少配置工作量和开发效率。Spring Boot在安全性,事务管理和数据访问方面提供很多开箱即用功能。这样开发者就可以更加注重实现业务逻辑,无需过多地注重基础设施建设。Spring Boot成功地整合了Spring框架中的多个功能模块,例如Spring MVC、Spring Data、Spring Security等,这使得开发人员能够轻松地利用这些功能来创建全方位的企业级应用程序[7]。
2.2 Mysql数据库
Mysql 经过多次的更新,功能层面已经非常的丰富和完善了,从Mysql4版本到5版本进行了比较大的更新,在商业的实际使用中取得了很好的实际应用效果。最新版本的Mysql支持对信息的压缩,同时还能进行加密能更好的满足对信息安全性的需求。同时经过系统的多次更新,数据库自身的镜像功能也得到了很大的增强,运行的流畅度和易用性方面有了不小的进步,驱动的使用和创建也更加的高效快捷。最大的变动还是进行了空间信息的显示优化,能更加方便的在应用地图上进行坐标的标注和运算[8]。
2.3 MVVM模式
视图(View)代表用户交互界面,一个 Web 应用就可能有很多的界面,在 MVVM 模式中,视图仅仅处理的只有数据采集、处理,还有用户的请求, 并不包括业务流程的处理,业务流程由模型(Model)来处理。
模型(Model)就是业务流程/状态的处理及业务规则的制定。模型处理业务流程的过程其它层是无法看见了的,它就像黑箱子,在接受视图请求的数据之后,然后返回最终的处理结果。MVVM 最主要的核心就是业务模型的设计,一个典型的应用例子就是目前流行的 EJB 模型,它从应用技术实现的角度对模型做了进一步的划分,以便充分利用现有的组件,但是它不能作为应用设计模型的框架。
控制器(Controller)可以理解为接收用户的请求,然后视图和模型匹配在一起,一起再完成用户请求。它有非常明显的作用在划分控制层上,可以很清晰地告诉你,它就是一个分发器,选择什么样的模型、视图,可以完成用户的什么样的请求。控制层不做所有的数据处理,比如说:用户点击一个连接,控制层接受到请求之后,并不处理业务信息,它只是向模型传递用户的信息,同时告诉模型做什么,然后选择符合需求的视图返回给用户。
2.4 JavaScript脚本语言
此作品中,其中包含了页面的搭建,以及前后台数据接口的连接等,而对于实现用户页面交互以及一些页面逻辑性判断等功能都是用JavaScript完成的,而JavaScript是已经被广泛用于Web应用开发,是一种属于网络的脚本语言,常用来为网页添加各式各样的动态功能,为用户提供更流畅美观的浏览效果。通常JavaScript脚本是通过嵌入在HTML中来实现自身的功能。JavaScript作为一种描述语言,作用于web前端,它基于对象(object)和事件驱动(Event Driven)并且安全性也较好。它可以有效的在客户端运行并为服务器减轻负担。
JavaScript具有的特点:
(1)脚本语言。JavaScript是一种脚本语言并具有解释性,在程序运行过程中,它就可以进行解释。
(2)基于对象。JavaScript可以创建对象,而且还可以使用现在存在的对象,它是基于对象的脚本语言。
(3)简单。JavaScript不对使用的数据类型有着严格的要求,应用的是弱类型的变量类型,设计是十分紧凑简单。
(4)动态性。JavaScript是可以不经过Web服务器对用户的操作做出相应,是可以采用事件驱动的脚本语言。
(5)跨平台性。JavaScript可以不依赖操作系统,但需要浏览器的支持。所以在编写JavaScript脚本后可以在任意机器上使用,但要注意的一点,使用的浏览器是支持JavaScript脚本语言,现在大多浏览器也支持JavaScript。
第三章 系统需求分析
3.1 系统可行性分析
3.1.1 技术可行性分析
Springboot框架作为一种成熟、稳定的Web开发框架,已经得到了广泛应用和验证。它拥有强大的ORM(对象关系映射)功能,可以方便地处理数据库操作,非常适合开发智果商城购物系统这类涉及大量数据处理和交互的应用。使用Springboot框架开发智果商城购物系统在技术上是完全可行的。通过合理的设计和实现,可以构建出一个功能强大、性能稳定、安全可靠的系统,为用户提供便捷的服务。
3.1.2 经济可行性分析
经济可行性分析中,开发智果商城购物系统需评估成本与收益。成本包括软件开发、硬件购置、人员培训等,但长期可降低运营和人力成本。收益方面,系统可以拓宽水果销售渠道同时给消费者便捷的购买方式,能增加订单和收益。因此,该系统经济上可行,投资回报率高。
3.1.3 社会可行性分析
在当今社会,随着互联网的普及和电商行业的蓬勃发展,智果商城购物系统的开发不仅符合市场趋势,也得到了广大消费者的认可和支持。该系统的实施将有助于提高订单处理的透明度和公正性,增强消费者对电商平台的信任度。该系统还将促进水果销售行业的健康发展,为社会创造更多的就业机会和经济效益。
3.2 系统需求分析
智果商城购物系统在用户角色上分别划分用户以及管理员部分。
用户端:
- 注册登录:用户可以通过填写必要的信息进行注册,创建个人账户。登录功能允许用户使用用户名和密码登录到自己的账户中,以便访问个性化的服务和管理个人信息;
- 通知公告:用户点击“公告信息”可以对管理员发布的最新公告内容进行查看;
- 新闻资讯:用户可以在这里阅读到最新的水果资讯,用户还可以对感兴趣的文章进行点赞、收藏和评论,与他人分享自己的观点和经验;
- 水果商场:用户可以在这里浏览各类水果商品,并进行购买或加入购物车操作。立即购买需要先添加地址,水果商场详情页提供了全面的产品信息,帮助用户做出明智的购买决策;
- 商城管理:在商城管理页面,用户可以查看和管理自己的购物车,方便随时添加或删除商品。同时,用户还可以查看和管理自己的订单记录,以及编辑和更新收货地址,确保购物过程的便捷和顺畅,还可以通过订单配送查看配送情况,对于有问题的商品可以进行售后申请;
- 会员卡信息:用户可以查看具体的会员卡列表,进行会员卡办理;
- 会员续费:可以实现会员在线进行会员续费操作;
- 订单配送:订单配送页面会显示所有订单的配送状态,方便用户跟踪和管理;
- 收藏:用户可以将自己喜爱的水果或者感兴趣的资讯等进行添加收藏。
管理员端:
- 登录:管理员通过输入用户名和密码登录系统,登录后可进入后台管理界面,进行各项管理操作;
- 系统用户:管理员可以管理系统中的不同用户类型,包括其他管理员和注册用户,进行添加、编辑、删除和权限分配等操作;
- 会员卡类型管理:管理员有权限对会员类型进行增删改查;
- 会员卡信息管理:管理员会员卡信息进行管理;
- 会员办理管理:负责对用户提交的办理会员手续进行审核操作;
- 会员续费管理:管理员处理会员的续费要求;
- 会员信息管理:可以查看入会的会员列表以及对会员信息进行增删改查;
- 系统管理:轮播图的更换和设置;
- 通知公告管理:对公告信息的添加、修改、删除;
- 资源管理:分为新闻资讯以及资讯分类的增删改查;
- 商城管理:分为水果商场中的产品上架下架、分类列表、订单处理、订单配送安排、会员等级设置、处理订单售后等。
3.3 系统用例分析
智果商城购物系统中用户角色用例图如图3-1所示:

图3-1 用户角色用例图
智果商城购物系统中管理员角色用例图如图3-2所示:

图3-2 管理员角色用例图
3.4 系统流程分析
3.4.1 数据流程
智果商城购物系统主要的目的就是实现对水果的在线选购,图3-3就是系统的数据流图。
图3-3水果购买操作展开图
3.4.2 业务流程
分析完系统的数据流,接下来我们来看系统的业务流程,图3-4就是业务流程图:
图3-4业务流程图
第四章 系统总体设计
在分析了项目开发的背景、意义以及其开发的可行性后,接下来就是探讨项目的功能划分,以及具体实现的时候对项目数据库各种表的设计,在本章会做一个系统的介绍。
4.1 系统架构设计
在系统架构设计中,我们将确定系统的整体结构和组件之间的关系。这包括选择适当的架构风格,划分系统的层次结构,并定义各个模块的职责和交互方式。架构图如下图4-1所示。

图4-1智果商城购物系统架构设计图
表现层(Presentation Layer):负责与用户进行交互,将系统的功能和数据以易于理解和操作的方式展示给用户。通常包括用户界面、页面设计和用户输入验证等。
业务逻辑层(Business Logic Layer):处理系统的核心业务逻辑,包括对用户请求的处理、业务规则的执行以及数据的处理和转换。它独立于表现层和数据层,实现了业务逻辑的封装和复用。
数据层(Data Layer):负责数据的存储、访问和管理,包括数据库和持久化机制。数据层提供了对数据的增删改查操作,并与业务逻辑层进行交互,使系统能够有效地存储和检索数据。
这三个层次相互独立,通过明确的接口和协议进行通信,实现了系统的模块化和可扩展性。表现层负责将用户的请求传递给业务逻辑层,业务逻辑层处理请求并返回结果,最后数据层负责与数据库交互并提供数据支持。这种分层架构有助于实现系统的可维护性、灵活性和可测试性。
4.2 系统功能模块设计
系功能模块的设计就是把系统具体要实现哪些功能,功能如何划分做一个系统的架构,以模块图的方式展示出来,方便我们进行功能得罗列以及涉及。在系统的功能方面,项目分成了管理员+用户两个模块,每个模块登录进去对应相应的功能,具体的功能模块图如图4-2所示。
图4-2智果商城购物系统功能模块图
4.3 数据库设计
数据库的设计承载者系统的各种数据,在一个系统中各种数据都需要一个专门的容器,数据库就是这个容器,在建立数据库的时候,主要是数据库模型的设计以及各个数据库表的设计两部分。
4.3.1数据库概念结构设计
下面是整个智果商城购物系统中主要的数据库表总E-R实体关系图。
图4-3智果商城购物系统总E-R关系图
4.3.2数据库逻辑结构设计
通过前面E-R关系图可以看到项目需要创建很多个数据表。以下是项目中的主要数据库表的关系模型:
| 编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
| 1 | cart_id | int | 10 | 0 | N | Y | 购物车ID: | |
| 2 | title | varchar | 64 | 0 | Y | N | 标题: | |
| 3 | img | varchar | 255 | 0 | N | N | 0 | 图片: |
| 4 | user_id | int | 10 | 0 | N | N | 0 | 用户ID: |
| 5 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
| 6 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间: |
| 7 | state | int | 10 | 0 | N | N | 0 | 状态:使用中,已失效 |
| 8 | price | double | 9 | 2 | N | N | 0.00 | 单价: |
| 9 | price_ago | double | 9 | 2 | N | N | 0.00 | 原价: |
| 10 | price_count | double | 11 | 2 | N | N | 0.00 | 总价: |
| 11 | num | int | 10 | 0 | N | N | 1 | 数量: |
| 12 | goods_id | mediumint | 8 | 0 | N | N | 商品id:[0,8388607] | |
| 13 | type | varchar | 64 | 0 | N | N | 未分类 | 商品分类: |
| 14 | description | varchar | 255 | 0 | Y | N | 描述:[0,255]用于产品规格描述 |
表fruit_market (水果商场)
| 编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
| 1 | fruit_market_id | int | 10 | 0 | N | Y | 水果商场ID | |
| 2 | fruit_origin | varchar | 64 | 0 | Y | N | 水果产地 | |
| 3 | cart_title | varchar | 125 | 0 | Y | N | 标题:[0,125]用于产品html的标签中 | |
| 4 | cart_img | text | 65535 | 0 | Y | N | 封面图:用于显示于产品列表页 | |
| 5 | cart_description | varchar | 255 | 0 | Y | N | 描述:[0,255]用于产品规格描述 | |
| 6 | cart_price_ago | double | 8 | 2 | N | N | 0.00 | 原价:[1] |
| 7 | cart_price | double | 8 | 2 | N | N | 0.00 | 卖价:[1] |
| 8 | cart_inventory | int | 10 | 0 | N | N | 0 | 商品库存 |
| 9 | cart_type | varchar | 64 | 0 | N | N | 未分类 | 商品分类: |
| 10 | cart_content | longtext | 2147483647 | 0 | Y | N | 正文:产品的主体内容 | |
| 11 | cart_img_1 | text | 65535 | 0 | Y | N | 主图1: | |
| 12 | cart_img_2 | text | 65535 | 0 | Y | N | 主图2: | |
| 13 | cart_img_3 | text | 65535 | 0 | Y | N | 主图3: | |
| 14 | cart_img_4 | text | 65535 | 0 | Y | N | 主图4: | |
| 15 | cart_img_5 | text | 65535 | 0 | Y | N | 主图5: | |
| 16 | cart_integral | int | 10 | 0 | Y | N | 0 | 积分 |
| 17 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
| 18 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
| 编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
| 1 | goods_id | mediumint | 8 | 0 | N | Y | 产品id:[0,8388607] | |
| 2 | title | varchar | 125 | 0 | Y | N | 标题:[0,125]用于产品和html的<title>标签中 | |
| 3 | img | text | 65535 | 0 | Y | N | 封面图:用于显示于产品列表页 | |
| 4 | description | varchar | 255 | 0 | Y | N | 描述:[0,255]用于产品规格描述 | |
| 5 | price_ago | double | 8 | 2 | N | N | 0.00 | 原价:[1] |
| 6 | price | double | 8 | 2 | N | N | 0.00 | 卖价:[1] |
| 7 | sales | int | 10 | 0 | N | N | 0 | 销量:[0,1000000000] |
| 8 | inventory | int | 10 | 0 | N | N | 0 | 商品库存 |
| 9 | type | varchar | 64 | 0 | N | N | 商品分类: | |
| 10 | hits | int | 10 | 0 | N | N | 0 | 点击量:[0,1000000000]访问这篇产品的人次 |
| 11 | content | longtext | 2147483647 | 0 | Y | N | 正文:产品的主体内容 | |
| 12 | img_1 | text | 65535 | 0 | Y | N | 主图1: | |
| 13 | img_2 | text | 65535 | 0 | Y | N | 主图2: | |
| 14 | img_3 | text | 65535 | 0 | Y | N | 主图3: | |
| 15 | img_4 | text | 65535 | 0 | Y | N | 主图4: | |
| 16 | img_5 | text | 65535 | 0 | Y | N | 主图5: | |
| 17 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
| 18 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间: |
| 19 | customize_field | text | 65535 | 0 | Y | N | 自定义字段 | |
| 20 | source_table | varchar | 255 | 0 | Y | N | 来源表: | |
| 21 | source_field | varchar | 255 | 0 | Y | N | 来源字段: | |
| 22 | source_id | int | 10 | 0 | N | N | 0 | 来源ID: |
| 23 | user_id | int | 10 | 0 | Y | N | 0 | 添加人 |
| 24 | integral | int | 10 | 0 | Y | N | 0 | 积分 |
表logistics_delivery (物流配送)
| 编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
| 1 | logistics_delivery_id | int | 10 | 0 | N | Y | 物流配送ID | |
| 2 | order_number | varchar | 64 | 0 | Y | N | 订单号 | |
| 3 | product_name | varchar | 64 | 0 | Y | N | 商品名称 | |
| 4 | purchase_quantity | varchar | 64 | 0 | Y | N | 购买数量 | |
| 5 | total_transaction_amount | double | 11 | 2 | Y | N | 0.00 | 交易总额 |
| 6 | the_date_of_issuance | date | 10 | 0 | Y | N | 发货日期 | |
| 7 | delivery_number | varchar | 30 | 0 | Y | N | 配送订单 | |
| 8 | ordinary_users | int | 10 | 0 | Y | N | 0 | 普通用户 |
| 9 | shipping_address | varchar | 64 | 0 | Y | N | 收货地址 | |
| 10 | delivery_status | varchar | 64 | 0 | Y | N | 配送状态 | |
| 11 | signing_status | varchar | 64 | 0 | Y | N | 签收状态 | |
| 12 | recommend | int | 10 | 0 | N | N | 0 | 智能推荐 |
| 13 | contact_name | varchar | 255 | 0 | Y | N | 联系人名字 | |
| 14 | merchant_id | int | 10 | 0 | Y | N | 商家id | |
| 15 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
| 16 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
表membership_application (会员办理)
| 编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
| 1 | membership_application_id | int | 10 | 0 | N | Y | 会员办理ID | |
| 2 | membership_card_name | varchar | 64 | 0 | Y | N | 会员卡名称 | |
| 3 | membership_card_types | varchar | 64 | 0 | Y | N | 会员卡种类 | |
| 4 | membership_card_price | double | 9 | 2 | Y | N | 0.00 | 会员卡价格 |
| 5 | card_opening_date | date | 10 | 0 | Y | N | 开卡日期 | |
| 6 | expiration_date | date | 10 | 0 | Y | N | 到期日期 | |
| 7 | ordinary_users | int | 10 | 0 | Y | N | 0 | 普通用户 |
| 8 | user_name | varchar | 64 | 0 | Y | N | 用户姓名 | |
| 9 | contact_information | varchar | 64 | 0 | Y | N | 联系方式 | |
| 10 | purchase_remarks | text | 65535 | 0 | Y | N | 购买备注 | |
| 11 | pay_state | varchar | 16 | 0 | N | N | 未支付 | 支付状态 |
| 12 | pay_type | varchar | 16 | 0 | Y | N | 支付类型: 微信、支付宝、网银 | |
| 13 | membership_renewal_limit_times | int | 10 | 0 | N | N | 0 | 续费限制次数 |
| 14 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
| 15 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
| 16 | source_table | varchar | 255 | 0 | Y | N | 来源表 | |
| 17 | source_id | int | 10 | 0 | Y | N | 来源ID | |
| 18 | source_user_id | int | 10 | 0 | Y | N | 来源用户 |
表membership_card_information (会员卡信息)
| 编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
| 1 | membership_card_information_id | int | 10 | 0 | N | Y | 会员卡信息ID | |
| 2 | membership_card_name | varchar | 64 | 0 | Y | N | 会员卡名称 | |
| 3 | membership_card_types | varchar | 64 | 0 | Y | N | 会员卡种类 | |
| 4 | membership_card_price | double | 9 | 2 | Y | N | 0.00 | 会员卡价格 |
| 5 | cover_photo | varchar | 255 | 0 | Y | N | 封面图片 | |
| 6 | membership_card_introduction | longtext | 2147483647 | 0 | Y | N | 会员卡简介 | |
| 7 | hits | int | 10 | 0 | N | N | 0 | 点击数 |
| 8 | praise_len | int | 10 | 0 | N | N | 0 | 点赞数 |
| 9 | collect_len | int | 10 | 0 | N | N | 0 | 收藏数 |
| 10 | comment_len | int | 10 | 0 | N | N | 0 | 评论数 |
| 11 | recommend | int | 10 | 0 | N | N | 0 | 智能推荐 |
| 12 | membership_application_limit_times | int | 10 | 0 | N | N | 0 | 办理限制次数 |
| 13 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
| 14 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
表membership_renewal (会员续费)
| 编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
| 1 | membership_renewal_id | int | 10 | 0 | N | Y | 会员续费ID | |
| 2 | membership_card_name | varchar | 64 | 0 | Y | N | 会员卡名称 | |
| 3 | membership_card_types | varchar | 64 | 0 | Y | N | 会员卡种类 | |
| 4 | membership_card_price | double | 9 | 2 | Y | N | 0.00 | 会员卡价格 |
| 5 | card_opening_date | date | 10 | 0 | Y | N | 开卡日期 | |
| 6 | expiration_date | date | 10 | 0 | Y | N | 到期日期 | |
| 7 | ordinary_users | int | 10 | 0 | Y | N | 0 | 普通用户 |
| 8 | user_name | varchar | 64 | 0 | Y | N | 用户姓名 | |
| 9 | contact_information | varchar | 64 | 0 | Y | N | 联系方式 | |
| 10 | renewal_date | date | 10 | 0 | Y | N | 续费日期 | |
| 11 | renewal_remarks | text | 65535 | 0 | Y | N | 续费备注 | |
| 12 | pay_state | varchar | 16 | 0 | N | N | 未支付 | 支付状态 |
| 13 | pay_type | varchar | 16 | 0 | Y | N | 支付类型: 微信、支付宝、网银 | |
| 14 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
| 15 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
| 16 | source_table | varchar | 255 | 0 | Y | N | 来源表 | |
| 17 | source_id | int | 10 | 0 | Y | N | 来源ID | |
| 18 | source_user_id | int | 10 | 0 | Y | N | 来源用户 |
| 编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
| 1 | member_information_id | int | 10 | 0 | N | Y | 会员信息ID | |
| 2 | member_users | int | 10 | 0 | Y | N | 0 | 会员用户 |
| 3 | user_name | varchar | 64 | 0 | Y | N | 用户姓名 | |
| 4 | contact_information | varchar | 64 | 0 | Y | N | 联系方式 | |
| 5 | membership_card_number | varchar | 64 | 0 | Y | N | 会员卡号 | |
| 6 | membership_level | varchar | 64 | 0 | Y | N | 会员等级 | |
| 7 | date_of_membership | date | 10 | 0 | Y | N | 入会日期 | |
| 8 | expiration_date | date | 10 | 0 | Y | N | 到期日期 | |
| 9 | membership_type | varchar | 64 | 0 | Y | N | 会员类型 | |
| 10 | member_profile_picture | varchar | 255 | 0 | Y | N | 会员头像 | |
| 11 | member_profile | text | 65535 | 0 | Y | N | 会员简介 | |
| 12 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
| 13 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
第五章 系统模块实现
5.1 系统前端模块
5.1.1 首页模块
前端首页模块主要实现的是对系统首页的展示。首页设计简洁明了,包含了通知公告、新闻资讯、水果商场、商城管理、会员卡信息等模块,方便用户快速找到所需信息。页面布局合理,色彩搭配和谐,能够提供良好的用户体验。此外,首页还设置了搜索框,方便用户通过关键词快速搜索所需产品。前台首页模块展示如下图所示。
图5-1登录界面图
5.1.2 登录模块
智果商城购物系统中的前台上注册后的用户是可以通过自己的用户名+密码进行登录的,当用户输入完整的自己的用户名+密码信息并点击“登录”按钮后,将会首先验证输入的有没有空数据,再次验证输入的用户名+密码和数据库中当前保存的用户信息是否一致,只有在一致后将会登录成功并自动跳转到智果商城购物系统的首页中;否则将会提示相应错误信息。登录模块展示如下图所示。
图5-2登录界面图
5.1.3 会员卡办理模块
在智果商城购物系统中,用户可以通过简单的步骤办理会员卡,享受专属优惠与服务。用户可以点击会员卡办理。接着,根据系统提示填写必要的个人信息并选择会员卡类型。最后,完成支付流程后,即可激活会员卡,立即享受积分累积等会员专属权益。会员卡办理模块展示如下图所示。
图5-3会员卡办理界面图
5.1.4 水果商场模块
在智果商城购物系统中,用户点击进入水果商场界面后可以轻松查看商品信息。首先,用户可以通过浏览页面或使用搜索功能找到感兴趣的水果商品。点击商品图片或名称后,将进入商品详情页,这里展示了包括价格、产地、库存以及商品描述等详细信息。此外,用户还能看到其他买家的评价,帮助做出更好的购买决定。水果商场模块展示如下图所示。
图5-4水果商场界面图
5.1.5 水果购买模块
在智果商城购物系统中,用户可以方便地将选中的水果添加到购物车。浏览或搜索到想要的水果后,用户只需点击该水果进入商品详情页面。接着,在满足选择的数量和规格后,点击“加入购物车”按钮即可完成操作。所选水果便会保存在购物车中,用户可以继续购物或直接前往结算页面进行支付。水果购买模块展示如下图所示。
图5-5 水果购买界面图
5.1.6 会员续费模块
在智果商城购物系统中,会员续费流程设计得十分便捷高效。用户找到会员续费选项。系统会显示当前会员等级及可续费的选项和对应的价格,用户通过安全的在线支付方式完成续费操作,会员续费模块展示如下图所示。
图5-6 会员续费界面图
5.2 系统后端模块
5.2.1 系统用户模块
在智果商城购物系统中,管理员可以通过点击系统用户管理功能对所有会员等级权限进行设置与管理。进入会员管理界面后,管理员能够查看现有的会员等级,并对每一等级的权益和优惠进行调整。通过这一功能,管理员可以有效管理和优化会员体系,系统用户模块展示如下图所示。
图5.7 系统用户界面图
5.2.2 会员卡信息管理模块
在智果商城购物系统中,管理员可以通过点击会卡员信息管理来执行对所有会员卡的增删改查操作。管理员能够便捷地添加新的会员卡信息,对于需要更新或删除的信息,管理员可以直接定位到特定会员卡进行修改或移除操作,确保数据的准确性和时效性。会员卡信息管理模块展示如下图所示。
图5-8 会员卡信息管理界面图
5.2.3 会员信息管理模块
在智果商城购物系统中,管理员通过会员信息管理功能可以对所有会员的信息进行高效管理。管理员能够设置每个会员的具体期限,并根据需要调整不同会员等级的期限长度。此外,系统支持设定续费功能,当会员即将到期时,可以提醒需要进行续费。会员信息管理模块展示如下图所示。
图5-9会员信息管理界面图
5.2.4 通知公告管理模块
在智果商城购物系统中,管理员可以通过点击通知公告界面轻松发布新的功能内容。进入通知公告管理页面后,管理员可以撰写新公告,详细描述新功能的信息及其对用户带来的便利。发布公告时,管理员还可以选择重点推送以确保用户能够及时看到重要更新。通知公告管理模块展示如下图所示。
图5-10通知公告管理界面图
5.2.5 商城管理模块
在智果商城购物系统中,管理员可以通过点击水果商场界面来执行多项关键操作。首先,管理员能够发布新的水果商品,包括上传商品图片、填写详细描述及设定价格等信息。对于顾客的订单,管理员可以实时处理,确认付款并准备发货。此外,管理员还能直接在系统中发布订单的配送安排,更新物流状态,确保顾客能及时了解订单的最新动态。商城管理模块展示如下图所示。
图5-11商城管理界面图
第六章 系统测试
6.1 测试的目的
系统测试的目的是确保系统的功能完整、性能稳定,并验证系统是否符合预期的设计和需求。通过系统测试,可以发现和修复潜在的错误和缺陷,提高系统的质量和可靠性。同时,系统测试还可以评估系统在不同条件下的性能表现,包括并发性能、响应时间和容错能力等。通过全面的系统测试,可以确保系统在正式上线前达到高品质的状态。
6.2 系统部分测试
通过对用户登录功能、公告信息展示功能、水果信息录添加功能、优惠券搜索功能以及密码修改功能进行了测试,测试如下表6-1、6-2、6-3、6-4、6-5所示。
表6-1 用户登录功能测试表
| 测试用例编号 | 测试描述 | 预期结果 | 实际结果 | 是否通过 |
| TC001 | 使用正确的用户名和密码进行登录 | 成功登录系统,跳转到用户首页 | 登录成功,跳转到用户首页 | 通过 |
| TC002 | 使用不存在的用户名进行登录 | 显示错误提示信息:用户名不存在 | 显示错误提示信息:用户名不存在 | 通过 |
| TC003 | 使用正确的用户名和错误的密码进行登录 | 显示错误提示信息:密码错误 | 显示错误提示信息:密码错误 | 通过 |
| TC004 | 不输入用户名和密码直接点击登录按钮 | 显示错误提示信息:用户名和密码不能为空 | 显示错误提示信息:用户名和密码不能为空 | 通过 |
表6-2 通知公告展示功能测试表
| 测试用例编号 | 测试描述 | 预期结果 | 实际结果 | 是否通过 |
| TC001 | 打开通知公告列表页面,检查是否能够正确展示通知公告 | 通知公告列表显示正确 | 通知公告列表显示正确 | 通过 |
| TC002 | 点击通知公告详情查看按钮,检查是否能正常打开页面 | 通知公告详情页面显示正确 | 通知公告详情页面显示正确 | 通过 |
| TC003 | 检查通知公告搜索功能 | 根据关键字搜索到相关通知公告并正确展示 | 根据关键字搜索到相关通知公告并正确展示 | 通过 |
表6-3 水果信息添加功能测试表
| 测试用例编号 | 测试描述 | 预期结果 | 实际结果 | 是否通过 |
| TC001 | 使用合法的信息添加一个新水果信息 | 水果信息成功添加到系统 | 水果信息成功添加到系统 | 通过 |
| TC002 | 使用已存在的水果信息名称添加一个新水果信息 | 显示错误提示信息:水果信息名称已存在 | 显示错误提示信息:水果信息名称已存在 | 通过 |
| TC003 | 添加水果信息时不输入必填信息 | 显示错误提示信息:必填字段不能为空 | 显示错误提示信息:必填字段不能为空 | 通过 |
表6-4会员卡搜索功能测试表
| 测试用例编号 | 测试描述 | 预期结果 | 实际结果 | 是否通过 |
| TC001 | 使用会员卡关键字进行搜索 | 搜索结果包含符合关键字的会员卡 | 搜索结果包含符合关键字的会员卡 | 通过 |
| TC002 | 使用不存在的关键字进行搜索 | 搜索结果为空 | 搜索结果为空 | 通过 |
表6-5 密码修改功能测试表
| 测试用例编号 | 测试描述 | 预期结果 | 实际结果 | 是否通过 |
| TC001 | 输入正确的原密码和新密码进行修改 | 密码成功修改 | 密码成功修改 | 通过 |
| TC002 | 输入错误的原密码和新密码进行修改 | 显示错误提示信息:原密码错误 | 显示错误提示信息:原密码错误 | 通过 |
| TC003 | 不输入原密码和新密码直接点击修改按钮 | 显示错误提示信息:密码不能为空 | 显示错误提示信息:密码不能为空 | 通过 |
6.3 系统测试结果
通过编写智果商城购物系统的测试用例,在对以上功能得测试过程中,发现了系统中的很多漏送并进行了完善,经过多人在线进行测试,系统完全可以正常运行,当然在后期的维护中系统将不断完善。
结 论
经过深入研究与分析,我们明确了智果商城购物系统的可行性。该系统结合Java与Springboot技术,实现了高效的水果在线购物平台。通过本次开发实践,我们深刻认识到学习的无止境和实践的重要性。尽管在初期遇到了如页面显示不规范、数据库连接问题以及参数传递困难等挑战,但通过查阅资料和团队协作,我们成功解决了这些问题。在此过程中,我们积累了丰富的知识和问题解决能力,尤其是学会了如何从海量信息中筛选出有价值的内容。
我们意识到,尽管理论知识是宝贵的,但每个人的编程思路和数据处理方法各不相同。因此,实践成为了找到解决方案的关键。在毕业设计过程中,我们不断提升自我,积累了丰富的经验,这将对未来的职业发展产生积极影响。
在开发智果商城购物系统的过程中,我们参考了众多相关系统的成功案例,取其精华、去其糟粕,逐步完善了系统功能。然而,该系统仍存在诸多不足,需要我们在后续的学习中不断改进。实践表明,智果商城购物系统具有广阔的发展前景。经过严格的测试与运行,该系统功能完善、界面美观、操作简便,技术理论上已趋成熟。
参考文献
[1]崔祥.基于Web的在线购物系统设计[J].无线互联科技,2022,19(24):71-74.
[2]任建新,王一鸣,李鑫,等.基于Java Web的智慧商城购物系统设计[J].信息技术与信息化,2022,(07):23-27.
[3]朱琨日.高性能智能商城系统架构设计与实现[D].桂林电子科技大学,2022.
[4]杜雨荃,王晓菊,田立勤.基于微信小程序的网上购物系统的设计与实现[J].网络安全技术与应用,2022,(04):60-62.
[5]施宸昊.基于Django的水果销售系统设计与实现[J].丽水学院学报,2022,44(02):16-19.
[6]刘欢.基于微服务架构的商城购物系统的设计与实现[D].西安电子科技大学,2021.
[7]马静.基于微信小程序的购物商城系统的设计与实现[J].微型电脑应用,2021,37(03):31-34.
[8]林逢春.基于混合推荐算法的分布式购物系统设计[J].轻工科技,2024,40(03):115-118.
[9]Wang Q ,Zheng L ,Hong R .Exploration on the Teaching Model of Java Programming and Practice for Students with No Programming Background[J].Advances in Educational Technology and Psychology,2024,8(6):
[10]Ullenboom C .Java Programming Exercises:Volume Two: Java Standard Library[M].CRC Press:2024-03-30.
[11]邢婷婷.基于RFID的智能超市购物系统设计[J].技术与市场,2023,30(12):22-26.
[12]龙芳,吴勇灵.微信小程序购物系统的设计与实现[J].现代信息科技,2023,7(23):25-30.DOI:10.19850/j.cnki.2096-4706.2023.23.006.
[13]席硕.无人超市全自助购物系统设计与开发[D].沈阳航空航天大学,2023.
[14]王博.基于个性化推荐的居舍优品商城的设计与实现[D].北京交通大学,2020.
[15]洪志博,通用商城系统.福建省,厦门银磐科技有限公司,2019-08-01.
致谢
在完成本论文的过程中,我要由衷感谢所有支持和帮助我的人。首先,我要感谢我的指导教师,他们给予了我宝贵的指导和建议,帮助我顺利完成研究工作。他们的专业知识和经验对我产生了深远的影响。此外,我要感谢我的家人和朋友,他们在我整个研究过程中给予了我无尽的鼓励和支持。他们相信我能够克服困难、坚持不懈地追求目标,这让我时刻保持积极向上的心态。最重要的是,我要感谢自己。在研究的过程中,我遇到了各种挑战和困难,但我从未放弃,始终保持着坚定的信念和努力的精神。正是这种勇气和毅力使我能够完成这项研究工作,并取得了令人满意的成果。
通过这次研究,我学到了很多知识和技能,也收获了自信和成长。我相信,只要我坚持努力和持续学习,就能够实现更大的成就和突破。因此,我将继续努力,为自己的梦想奋斗,成为一个有影响力和价值的人。最后,我再次向所有支持和帮助过我的人表示深深的感谢。你们的支持是我前进的动力,我会铭记于心,并用更好的成绩回报你们的期望和信任。谢谢!
请关注点赞+私信博主,免费领取项目源码
1074

被折叠的 条评论
为什么被折叠?



