【计算机毕业论文江西软件职业技术大学毕业设计】基于 springboot线上买菜管理系统

江西软件职业技术大学毕业设计(论文)诚信声明书
本人郑重声明:
兹提交的毕业设计(论文) 基于springboot线上买菜系统 ,是本人在指导教师 刘恺威 的指导下独立研究、撰写的成果;设计未剽窃、抄袭他人的学术观点、思想和成果,未篡改研究数据,设计中所引用的文字、研究成果均已在设计中以明确的方式标明;在毕业设计(论文)工作过程中,本人恪守学术规范,遵守学校有关规定,依法享有和承担由此设计产生的权利和责任。
江西软件职业技术大学毕业设计(论文)
独创性声明和使用授权声明
1.江西软件职业技术大学毕业设计(论文)独创性声明
本人郑重声明:所呈交的毕业设计(论文),是本人在指导教师的指导下,独立进行研究所取得的成果。除文中已经注明引用的内容外,本设计(论文)不含任何其他个人或集体已经发表或撰写的作品。对本文的研究做出重要贡献的个人和集体,均已在文中标明。
本声明的法律后果由本人承担。
2.江西软件职业技术大学毕业设计(论文)使用授权声明
本人完全了解江西软件职业技术大学关于收集、保存、使用毕业设计(论文)的规定。
本人愿意按照学校要求提交毕业设计(论文)的印刷本和电子版,同意毕业设计(论文)的印刷本和电子版采用影印、缩印、数字化或其它复制手段保存;同意学校在不以营利为目的的前提下,建立目录检索与阅览服务系统,公布毕业设计(论文)的部分或全部内容,允许他人依法合理使用。
注:保密毕业设计(论文)在解密后遵守此规定。
摘 要
随着计算机的广泛应用和普及,网络购物和销售渠道的竞争日益激烈,网络已成为大型蔬菜企业新一轮的战场。与传统蔬菜行业相比,网上蔬菜购物更能贴合用户生活,提高服务质量,增强自身核心竞争力。购物系统从算法和数据结构到产品质量和安全性,系统在都有了显著的提高。在代码优化、运行效率、可持续性、安全水平、运行的可能性和权威性等方面都有了了巨大的进步,使得线上买菜管理系统的性能越来越高。该系统严格控制软件开发过程,使用开源框架Spring boot和vue框架开发,MySQL作为后台数据库,通过JDBC驱动程序与数据库建立连接,采用Java编写程序。成功实现了用户在线上买菜管理系统搜索浏览商品,系统推送产品,用户对自己的信息管理、购物车管理和订单管理以及管理员对用户的管理和对商品的管理,管理员有用户管理、蔬菜分类管理、蔬菜信息管理、系统管理、订单管理等功能。结合系统功能需求分析,并使用分层数据流图加以描述。
关键词:线上买菜管理系统,java,springboot
Abstract
With the wide application and popularization of computers, the competition of online shopping and sales channels is increasingly fierce, and the network has become a new round of battlefield for large vegetable enterprises. Compared with the traditional vegetable industry, online vegetable shopping can better fit users' life, improve service quality and enhance their core competitiveness. All industries are trying to integrate with modern advanced technology and improve their advantages through scientific and technological means. It has completely changed the traditional management mode, not only reducing the difficulty of service management, but also improving the flexibility of management. The shopping system has improved significantly in terms of algorithm and data structure, product quality and security. Great progress has been made in code optimization, operation efficiency, sustainability, security level, operation possibility and authority, etc., making the performance of online shopping management system increasingly high. The system strictly controls the software development process, uses the open source framework Spring boot and vue framework for development, MySQL as the background database, establishes a connection with the database through the JDBC driver, and uses Java programming. It has successfully realized the user's online shopping management system to search and browse products, the system to push products, the user's own information management, shopping cart management and order management, and the administrator's management of users and goods. The administrator has user management, vegetable classification management, vegetable information management, system management, order management and other functions.
Keywords: online shopping management system, java, spring boot
目 录
1 绪论
1.1 系统背景
1.2 系统意义
1.3 研究现状
1.4 系统所需的软件资源
1.4.1 系统开发环境
1.4.2 关于java介绍
1.4.3 关于SpingBoot介绍
1.4.4 关于VUE介绍
2 系统的总体设计
2.1 目标设计
2.2 系统的可行性研究分析
2.3 系统的数据分析
2.4 系统的功能模块设计
2.4.1用户用例图
2.4.2管理员用例图
3系统分析
3.1 系统流程分析
3.1.1 系统开发流程
3.1.2 用户登录流程
3.1.3 系统操作流程
3.1.4 添加信息流程
3.1.5 修改信息流程
3.1.6 删除信息流程
3.2 系统分析
3.2.1 系统的工作原理
3.2.2 系统结构设计
3.2.2 系统设计原则
3.3 系统实施分析
3.4 系统维护分析
3.5 数据库表结构
4系统实现
4.1 用户前台
4.2 用户后台
4.3 管理员后台
4.4 用户购买界面
5系统的测试运行
5.1测试环境
5.2 测试目的
5.3 测试计划
5.4 测试用例
5.5 压力测试
5.6 测试小结
总 结
参考文献
1 绪论
1.1 系统背景
随着计算机技术的飞速发展,计算机技术已经在逐渐渗透到各个领域中[6]。商店可以利用计算机技术来完成一些我们以前手工完成的工作,这样可大大地提高工作效率,还可以节省更多的人力资源。另外,还可以利用计算机对相关数据进行统计,有助于商家根据销售情况制定销售策略。好的推荐算法能够帮助用户快速定位目标,节约大量时间,提升用户体验。同时,它能帮助商家实现精准营销,从而提高交易量,使利润增长[4]。线上买菜系统的出现是当今社会的趋势,它能够为用户提供充足的信息和节省用户的时间,让用户足不出户就能够购买自己喜欢的菜品。小型的线上买菜管理系统,实现菜品购买的自助化,方便消费者选择购买自己喜欢的菜品。
1.2 系统意义
人类的生存离不开食物,食物帮助我们获取生存下去所需要的能量,而健康合理的营养吸收才能让我们更好的生活下去。如今的社会节奏紧凑而迅速,越来越多的人在吃饭这个问题上选择了速度而不是健康,尽管外卖平台的发展让人们回家也可以吃上热乎的饭菜,但也总会在各个地方看到有关于外卖是否干净卫生的报告。虽然目前社区菜场的建设已经覆盖十分广阔,但仍不能帮助到一些工作繁忙的年轻人和腿脚不便利的居家老人。我所开发的这个平台则可以很好的帮助到一些因为种种原因不便于去到菜场自己购物的消费者朋友。
目前网络上的各种购物平台百花齐放,但也就是因为这一块的利益,使得线上买菜平台的风评一直两极分化。一些人觉得这个东西带来的了便利,一些人则觉得不够安全绝对不去使用。虽然目前在买菜这一块已经有了前沿者,但他们也有着自己的问题:
买菜后配送时间过长
在线上买菜,菜的配送时间就成了一个很大的问题,时间的快慢会导致菜品出现不同程度的不新鲜,导致用户买不到新鲜的菜品。
买的菜质量得不到保证
在线上买菜的时候只能通过系统给的图片来选并不能看到菜品的新鲜,有些时候不同的人来配送同一批的菜品都会导致菜品质量参差不齐。
菜的供应量少
一般为了保持蔬菜的新鲜,线上买菜平台所供应的蔬菜的数量都是有限的。所以为了买到自己想要的蔬菜,常常需要像双十一那样蹲点抢,可能几秒钟菜就会抢售一空。这样子就会导致用户不能买到自己心仪的菜品。
这些问题都是目前网上买菜的重大弊端,让人们不得不渐渐放弃网购而去现场挑选,而如此又解决不了一些朋友因为自身原因不能去到菜场购物的问题。
我们推出的这个在线买菜平台旨在帮助消费者快速获得所需的食材,它的特点是:系统中的食材会被定期检查,以确保食材的新鲜程度;消费者完成订单之后,管理员会及时核查,并及时通知消费者,从而大大减少消费者的等待时间,这一创新的技术,无疑给消费者的日常出行带来极大的方便。
Vue.js 是一种用于创建用户界面的渐进式框架,而element-ui则是饿了么团队精心设计的一套组件库,它们结合在一起,可以为线上买菜管理系统提供一个美观、逻辑清晰、操作简单的界面,让用户更容易掌握并使用。springboot可以快速的搭建项目的开发环境,无需或进行很少的相关配置。springboot是一款后端开发工具,它利用MySQL数据库来分析用户的需求,从而帮助用户快速找到所需的商品。同时,商家也可以通过数据库来了解销售情况,从而更加智能地进行采购,降低了商品滞留的风险。
1.3 研究现状
研究表明,网上购物已经成为美国的一种重要消费方式,1995年,美国的亚马逊书店正式开业,如今,美国的网络销售额正在不断增长。在德国,网上点击购买商品的客户约2500万,互联网营业额高达180亿欧元,在日本,电子商务市场规模在20多 年的发展历程中也呈现高度增长。
国内研究现状:虽然中国电子商务市场发展很快,但整体发展却低于发达国家水平,并且处于发展阶段且发展 势头较猛。国内发展较好的购物网站有淘宝,京东,拼多多,唯品会等,其发展前景也是极其乐观的,这些购物网站几乎家喻户晓,再加上电子商务的发展在中国也很快,未来发展趋势也极其可观。社区买菜平台主要是为了方便社区居民和社区商贩方便交易、节约时间、买到质优价美的蔬菜所提供的[17]。蔬菜购物商城系统包括前端商品展示页面:用户对系统的蔬菜商品进行浏览与选择,有心仪的商品可以进行登 录或者注册账户将商品加入购物车或者将商品进行收藏,有订购意向的则可以下单,确认订单信息后提交订单付款 即可则完成交易过程。商家必须得清晰的给出商品的基本信息,不仅要考虑界面的美观问题,还需要在用 户第一眼看到时有眼前一亮的感觉,这样才能勾起用 户的购买欲望[3]。
1.4 系统所需的软件资源
1.4.1 系统开发环境
操作系统: Windows 10
开发平台: IDEA
数据库: MySql
开发语言:java
1.4.2 关于java介绍
Java EE技术的出色表现,为用户提供了一次性的编码功能,而且它的JDBC API提供的支持,让用户能够轻松地在系统的后端管理数据,大大提升了操作系统的效率,而且还降低了开发人员的操作量。J2EE技术不仅让操作系统拥有极高的弹性,还让它们变得更容易控制。它们不仅允许用户在不同的环境中进行多种组件的调整,还拥有丰富的开发工具,让它们拥有极高的扩展性,以便在不同的环境中都能够运行。它们还拥有优秀的数据、目标、安全连接的指引,让用户在不同的环境中都能够轻松地获取所需的信息。Java EE技术的出现,极大地改善了企业的数据管理和存储的效率,从而极大地增强了其在信息安全方面的能力。相比于传统的编码语言,Java 编程语言具有平台独立性,因此其应用范围比较广泛,能够应用于跨平台软件开发[9]。Java语言更加灵活,更容易实现,更加便捷,更加有效地支持各种多样化的功能,从而推动着信息系统和软件的发展,进入一个崭新的时代。
1.4.3 关于SpingBoot介绍
在Java众多的开源框架中,Spring框架独树一帜。以前只能由EJB完成的事情,Sping框架使用基本的JavaBean即可完成[19],它能帮人们自动配置,Pom 文件下的 spring-boot-starter-web 会自动引入开发过程中必须用到的Web模块Jar包,做到尽可能减少开发者们编写多个XML 文件去完成配置,而是实现免XML配置的新的开发体验[15]。当默认的配置不能满足人们需求时,能够进行手动配置。它还内置Tomcat,无须打包部署就能直接运行[1]。
Spring Boot架构是一个重要的公共管理体系, Spring Boot架构提供了包括域模式和 DAO的 IOC容器。Spring Boot的 IOC库为读者呈现了多种应用实例。Spring Boot的相关性植入可以将管理体系中的各个组成部分紧密地结合起来,并且根据 Spring架构的相关性植入来配置这些部件。Spring Boot的架构采用了大量的界面设计,降低了再建费用,方便而又完整的后期修改。具有维护和升级简单方便、 成本低、数据安全、实时同步等优点[16]。
Spring Boot的交易宣告架构可以被用于交易,而无需将交易政策和程式码相联系,它简化了我们需要对spring进行的一系列配置,可以使开发者更加专注于业务逻辑[8], SpringBoot同时还能够为一些大型项目提供非业务功能特点[13],这样可以降低设计师程序发展的困难。
1.4.4 关于VUE介绍
Vue是一个强大的工具集,它通过MVVM技术为用户创造了一个简洁易懂的界面,不仅容易上手操作,还便捷的与第三 方库进行整合20。它允许开发者在创作过程中仅仅关心视觉元素,从而更容易将新的功能与既定的功能集成在一起。此外,Vue也能够与多个类别的工具集集成,为更加简洁的单页AP带来更多的灵活性。Vue.js具备了许多独特的优势,包括:小巧的框架、可靠的双向连接、易于部署的模块和高效的命令集。
本系统的前端框架选择目前较流行的Vue框架。它是一个轻量级的渐进式框架,基于数据驱动和组件化的思想构建前端页面[5]。利用View库的集成,结合脚手架的支持,可以创建更加灵活的前端界面,从而实现更高的扩展,并且可以利用更多的扩展来减少操作系统的复杂度。另外,VUE作为一种可变的动态页面,可以显著改善静止页面的效果。通过将VUE与后台框架有机地融为一体,就可以让数据从前台到后台流动,从而大大减少了操作复杂度。另外,前台开发人员只需要执行前台界面,就无须执行复杂的逻辑业务流程,而后台则必须承担起执行任务。它允许在界面中的两个部分之间添加独立的代码,从而提高操作系统的灵活性和效率。另外,它也允许在界面中添加大量的HTML元素,从而提高操作系统的整体性和稳定性。使得用户在本页面中就可以实现数据的刷新,从而提高用户体验性[14]。
2 系统的总体设计
2.1 目标设计
通过利用我们的学习成果,我们希望设计一套能够改变现有系统的程序,使用户能够随时随地进行系统操作,而管理者也能够轻松维护系统。
2.2 系统的可行性研究分析
为了确保系统能够持续稳定、高效地运行,我们必须全面考虑以下几点:
数据安全已成为政府的重中之重,因此,为了确保系统用户的数据安全,必须采取有效措施来确保其安全性。
随着科技的进步,数据时代的信息变化越来越快,因此,我们的项目应该能够满足这些变化带来的安全和便利。
在开发过程中,为了确保系统的可扩展性,应该给予充分的代码空间,以便将来可以实现更多的功能。
为了确保用户体验,我们必须确保它能够被有效地运行,并且能够满足实际的使用需求
2.3 系统的数据分析
准确性和及时性对于数据的有效性至关重要,任何一次数据变动都可能导致严重的后果,例如页面上的错误或者个人信息的篡改。
保证数据的准确性和完整性。由于网站上的数据是共享的,我们必须要解决一致性这个问题,处理方法是由专业的 运维专员来维护数据库以及监控数据的走向[7]。如果输入的数据出现故障, 运维专员应尽快采取行动,以便尽快找到有效的解决方案。
在系统开发中,数据应当实现共享与独立,以确保系统的可靠性与可操作性。重中之重的事情是对计算机数据库系统进行完善,搭建好计算机数据库的框架,计算机软件的运行离不开相应的网络环境[12]。从程序员的角度来看,这将会增加开发的复杂性,因此,应当采取更加灵活的开发策略,以确保系统的可靠性,并采取有效的措施来避免出现错误。
2.4 系统的功能模块设计
2.4.1用户用例图
用户用例图如图1所示:

2.4.2管理员用例图
管理员用例图如图2所示:

3 系统分析
3.1 系统流程分析
3.1.1 系统开发流程
在管理系统的时候,需要先对信息化流程有自己的基本认识,对系统的软件开发步骤展开设计,从底层对数据库进行设计。在IntelliJ IDEA中运用SpirngBoot进行后端的部署[11]。系统的开发流程如图3所示。

3.1.2 用户登录流程
为确保用户的隐私,我们采取措施,确认您的帐号、密码等信息已经被databse检测,然后再点击注册。一旦发生注册失败,我们立即向您发送false的警报,确认您已经注册,然后您就可以继续访问我们的服务。此次审核必须极其谨慎,以保证未来的信息准确无误。系统的用户登录流程如图4所示。

3.1.3 系统操作流程
经过正确的登录操作,我们就可以进入系统,使用其中的各种功能,每次使用“脚印”,都会记录下我们的喜好,而且每次执行操作性功能,都会产生Log信息,这样可以确保我们的数据完整性。
3.1.4 添加信息流程
当用户添加信息到界面时,系统将对其进行正则化检查,以确保其符合特定的规范,然后将其提交给接口,以此来降低无效请求,并增强系统操作的严谨性。通过这种方式,我们可以大大降低服务器的负担。系统的添加信息如图6所示。

3.1.5 修改信息流程
当我们在界面上添加信息时,我们会对其进行正则化处理,以确保它们符合特定的规则。这样做的目的是为了避免接口发出无用的请求,并增强系统的严谨性。通过这种方式,我们可以大幅降低服务器的负担。流程图如图7所示。

3.1.6 删除信息流程
当用户进入系统时,他们在界面上添加的内容将经过前端正则校验,以确保它们符合特定的规则,然后才能被提交给接口,以此来降低无效请求,并增强系统操作的严谨性。通过这种方式,我们可以大幅降低服务器的负担。流程
图如图8所示。

3.2 系统分析
3.2.1 系统的工作原理
本系统工作原理图如图9所示:

3.2.2 系统结构设计
系统的设计应该尽可能地简洁易懂,因为它是人与计算机之间的桥梁,用户的体验和使用效果取决于系统的界面是否符合用户的需求。如果界面不够简洁,用户很难理解和使用,甚至无法正常工作。所有的系统界面都应该从用户的角度出发,让他们在第一次使用时就能够感受到它们的优秀,只有让用户感受到它们的友好,才能够让他们继续使用。所以一个优秀的系统设计,要先从系统界面入手,在从客户的使用角度上出发,结合用户反馈,去设计,改进。为了让系统界面更加简洁易懂,我们应该尽可能地采用一键式操作,而不是分两步进行,以减少用户的等待时间。因此,界面设计应当遵循以下原则:
(1)该系统的界面设计精致,结构清晰,使用了流畅的浏览器设计,使得用户能够轻松地访问和使用。
(2)把执行等相关繁琐环节封装起来,使其在内部执行,将运算尽量设计为一键式,省去用户等待时间,让用户重点关注到如何去使用功能,不必为功能之外的问题考虑。
(3)在用户使用过程中,产生相应的对错操作,系统应能及时弹出提示,协助用户完成正确操作。系统每一步进行的操作步骤都反馈于界面,告知用户。
综上所述,当下分析结果对系统总结整体结构设计如图10所示。

3.2.2 系统设计原则
系统设计原则包含以下几点:
(1)实用性原则,要实现系统应用推广,前提是系统必须要具有实用性。为了确保系统的可靠性,我们必须以用户的体验为核心,精心打造一个具有人文关怀的界面,让用户可以轻松地掌握,而且还可以让他们觉得舒适、自然,而且没有任何抵触情绪。此外,我们还要以用户的期望为基础,对系统的功能、可靠性等方面做到完美的匹配,以确保它的有效运行。
为了确保一个信息系统能够顺利上线并获得验收,实用性必须成为其关键因素。因此,我们在设计这个系统时,一直牢记实用性的原则,并且严格执行。
要想一个信息系统能够成功上线运行,最终通过验收,实用性就是其验收的重要前提,本系统设计之初就深知实用性原则,故而在设计系统过程中严格遵循实用性原则。
(2)在设计系统时,安全性原则应该被充分考虑,以确保它们能够为工作提供便利。特别是要加强对账户、信息和防入侵的保护,以确保系统的安全性和隐私。
(3)传统的登录实现方式适用于只有一个Web 工程时[10],为了提升用户的操作体验,在系统设计时,应当特别注重易操作性,以确保用户的最佳体验。系统设计更多时候是为了使用户能更加便捷且高效的解决繁琐的问题,所以在操作上如果步骤较多,并难易程度较高,系统就失去了本来的价值,总之能快速去操作的问题,据不要分解成多步来完成,能够设计成当下流行的一键完成最佳。要记住系统开发正是用于用户,所以设计一定是从用户视角去考虑问题。要及时且认真对待用户反馈,对反馈进行有效应对。
3.3 系统实施分析
系统的有序部署对于开发一个高质量的产品至关重要。因此,我们必须确保我们的产品能够满足客户的期望,并能够持续稳定地运营。为了确保产品的质量,我们必须从多个角度来考虑,目的在于理清问题的内部组成,进而锁定问题的根本原因,配合并利用资源,解决问题实现价值最大化[18]。
3.4 系统维护分析
在过去的二十年里,随着互联网的快速发展,系统的维护成本也在不断上升,每年的维护费用都比去年大幅提升。因此,系统的长期可持续发展,必须依靠系统的有效维护,这也是系统维护的重要性所在。在一个系统的生命周期中,维护费用占据了70%以上,这一比例不容忽视。因此,系统维护成为了一项重要的投资,不仅仅是学校里的实习生,而且是毕业生们在就业时也会考虑到这一点,因为他们认为,只有通过正确的维护,才能够保证系统的正常运行。根据一项最新的统计,全球90%的计算机专业人士都在从事系统维护,而只有10%的人会选择开发新的系统。这表明,系统维护对于系统的长期发展至关重要,也是一项艰巨的任务。
3.5 数据库表结构


数据表说明
(1)配置文件表,用于表达参数值参数名称等等。

(2)token表,用于新用户注册,用来关联用户的账号密码和账户名称,例如账号为123密码为123,名称为三三

(3)购物车表,用于添加商品或删除商品进入购物车,选择不同规格不同数量的商品,为了区分会员和普通单价,还添加了不同种类不同会员的金额,商品不同的信息等。

(4)收藏表,收藏喜欢的商品,也可以将喜欢的商品进行备注,需要的时候也可以找到其商品的对自己的需求原因

(5)地址表,可以在个人信息页面选择自己的地址,用来配送菜品到指定地点,可以添加电话号码用于查找到收货人,也可以添加不同的地址分别买到不同地区和不同人。

(6)商品信息表,对于菜品而言,菜品的品种名称编号有着重要信息,标注的图片价格也能让购买者一目了然看见其根本信息,其商品的数目也可以让购买者知道数量多少选择多买或者是少买。

(7)商品类型表,根据商品的类型选择不同种类的菜品

(8)订单表,根据用户下单商品的数量时间价格进行统计,订单给出的时间分配出最近的时间进行配送,每个订单对应的订单号码也是独一无二的,对应的订单号也显示出商品的规格种类数量价格等等,然后根据订单的状态选择配送到哪个地址。

(9)通知公告表,在主建id,以及创建的时间来看,是为了方便用户看见最近的通知消息

(10)留言区表,用户可以发布自己的留言,改表包括留言人的id,留言的内容等等,发布的内容可以是图片和文字,其他人也可以留言该用户的留言方便彼此交流商品。

4 系统实现
4.1 用户前台
当用户登录前台时,该界面是用户登录后的首次进入的系统页面,它可以提供个性化的推荐介绍,以增强用户体验和促进购物行为,当客户点击推荐介绍,将直接进入该推荐商品的详情页,查看该商品的各种详细情况等
界面如图4-1所示

后端用户前台的设计
后台通过前端传递的系统浏览器的session来获取用户的id,利用当前用户id来查看当前用户的历史订单信息。并使用协同过滤算法来筛选出与该用户的历史订单中的商品相似的商品,然后向其进行推荐。
通过协同过滤,可以将用户信息与标的物(物品)信息有效地结合起来,从而实现有效的过滤。详细业务逻辑代码描述如下:


文件例如:后端管理设计;
前端通过ajax发起请求并将当前商品的id传输至后端控制层,以便查询当前商品的详细信息,同时根据用户的点击数量和时间,实时调整商品的状态,最终,这些信息会被封装好的统一响应类返回到前端,以便进行解析。其设计的代码如下:

4.2 用户后台
用户登陆后台共分为以下模块:首页、个人中心、订单管理。
功能描述:个人中心可对当前用户的账户信息与密码进行更新与管理,从而更加便捷的实现个人信息更新。订单管理则可对当前用户的订单进行查询与管理,包括已完成的订单、已发货的订单、已取消的订单、未支付的订单、已支付的订单、已退款的订单等,方便用户根据分类进行查询历史订单详情信息。用户后台首页界面如图4-2所示:

4.3 管理员后台
管理员后台功能模块共分为:个人中心、用户管理、商品分类管理、商品信息管理、系统管理、订单管理。其中,实现了商品查询、购物车、支付、用户管 理、类型管理、商品管理和订单管理功能[2]。
管理员可以通过个人中心模块对本账号的用户信息与密码进行修改。用户管理模块则可以对当前系统用户进行管理。商品分类管理模块则是对之前录入的商品分类进行操作,包括查询商品分类列表并进行修改。商品信息管理模则是根据当前商品进行查询详情信息并进行修改。系统管理则分为在线客服子模块、轮播图管理子模块、商品讯息子模块。分别对用户咨询信息、轮播图与商品信息进行管理。订单管理则是统计系统使用用户所有的订单信息,包括已退款订单信息、已完成订单信息、已发货订单信息、未支付订单信息、已取消订单信息、已支付订单信息。

功能描述:管理员进入用户管理界面,可以方便的查看到用户的基本信息,包括用户的用户名,密码,姓名,性别等,根据信息来分辨用户的购买力等,也可以看见用户操作修改自己的密码、姓名、手机号的时间来判断是否是恶意修改或是非本人操作等。具体界面如下:

后端文件上传控制器方法:
将mybatis-plus中自带的分页插件进行封装,使用封装好的分页工具类对数据库进行分页查询,通过自行封装的Mybatis-Plus工具类对查询条件进行封装,简化mybatis-plus的查询条件。其分页插件代码如下:

功能描述:管理员进入蔬菜分类管理功能界面,可以查看蔬菜的基本情况,蔬菜的数量多少,蔬菜录入系统的时间,和蔬菜的详细描述状况等,也可以通过清点蔬菜的数量多少来修改页面的蔬菜数量,可以将一些出售完的菜品进行删除,将一些没有的菜品增加上架等。具体界面如下:


这段代码是一个后端接口的查询方法,用于根据条件查询菜品信息,并返回查询结果。
(1)@RequestMapping("/query"): 这是一个请求映射注解,表示该方法处理的请求路径是"/query"。
(2)public R query(JiadianxinxiEntity jiadianxinxi): 这是方法的定义,返回类型为R。方法的参数jiadianxinxi是一个JiadianxinxiEntity类型的对象,用于接收查询条件。
(3)EntityWrapper< JiadianxinxiEntity> ew = new EntityWrapper< JiadianxinxiEntity>();: 创建一个EntityWrapper对象,用于构建查询条件。
(4)ew.allEq(MPUtil.allEQMapPre( jiadianxinxi, "jiadianxinxi"));: 调用allEq方法,将jiadianxinxi对象中非空的属性作为查询条件,通过MPUtil.allEQMapPre方法转换为Map,并使用"jiadianxinxi"作为前缀添加到查询条件中。
(5)JiadianxinxiView jiadianxinxiView = jiadianxinxiService.selectView(ew);: 调用jiadianxinxiService的selectView方法,根据查询条件查询菜品信息的视图,并将查询结果赋值给jiadianxinxiView变量。
(6)return R.ok("查询商品信息成功").put("data", jiadianxinxiView);: 返回一个成功的响应,并将查询到的菜品信息视图放入响应中,使用键名"data"进行标识。同时返回一个消息"查询商品信息成功"作为提示信息。
功能描述:通过该系统,用户可以轻松访问菜品的相关资讯,包括其最新的价格、尺寸和销量,并且还可以随时调整菜品的售卖策略,从而更好地满足消费者的需求。具体界面如下:


这段代码是一个后端接口的详情方法,根据传入的ID获取菜品信息,并对点击数进行加一操作,然后更新菜品信息,最后返回包含菜品信息的响应数据。
(1)@RequestMapping("/info/{id}"): 这是一个请求映射注解,表示该方法处理的请求路径是"/info/{id}",其中的"{id}"是一个路径变量,用于接收传入的ID值。
(2)public R info(@PathVariable("id") Long id): 这是方法的定义,返回类型为R。@PathVariable("id")注解表示将路径中的"{id}"赋值给方法的id参数。
4.4 用户购买界面
用户在进入商品的购买页面后可以选择规格,根据数量多少查看当前的价格,也可以在该页面看见菜品的点击次数和菜品的评论来判断该菜品的好坏选择是否购买此菜品。

这个接口通过URL路径中的商品ID参数({id})来获取商品的详细信息,并进行相应的处理。
@RequestMapping("/detail/{id}"):这是一个处理HTTP请求的注解,指定了接口的URL路径为"/detail/{id}",其中的"{id}"表示占位符,用于接收商品ID参数.
jiadianxinxiService.updateById(jiadianxinxi):更新数据库中的商品信息,包括点击次数和点击时间。
return R.ok().put("data", jiadianxinxi):构建一个响应对象,其中包含了查询到的商品详细信息,并将其放入"data"字段中,通过R.ok()方法表示请求成功。
最后改接口是将商品的整个界面展示出来,根据获取id的方式将商品被点击的信息反馈给系统,用户点击购买的信息也会被反馈给系统。

5 系统的测试运行
5.1测试环境
l 开发工具:idea
l 数据库:mysql5.0及以上
l 操作系统:win7/8/10
l CPU:英特尔(Inter)2.0及以上
l 内存:2G及以上
l 硬盘:30G及以上
l 浏览器:360安全浏览器
5.2 测试目的
系统测试无疑是项目开发的关键步骤,它旨在深入探究当下的技术状况,识别潜藏的安全隐患,并且能够有效地提高系统的稳定性,从而确保它能够满足客户的需求,并且能够有效地提升客户的使用体验。为了确保用户能够获得最佳的使用感受,我们在这个时期会开展全面的测试。
5.3 测试计划
为了有效地完成此次系统测试,我们将采取一套完善的测试方案。我们将由专业的技术团队来完成,并且根据实际情况,结合6个主要的功能模块,如系统的加载、清除、修改、查找等,来实施精细的单元测试与压力测试,从而达到最佳的效果。
5.4 测试用例
通过系统的核心功能,我们可以创建一条测试用例,以便更好地检验其可靠性。在实施这条测试用例时,测试人员必须严格按照规定的步骤进行操作,并且最终的测试结果也会得到详尽的描述。
请在展示界面中点击添加下拉框,按照系统提示输入符合条件的信息,并ACK是否已经完成。最后,点击保存按钮,完成信息的添加测试。详情请参见表1。

请在用户界面中点击右侧的删除按钮,然后根据系统提示,再次点击删除或关闭按钮,以完成信息的删除操作。表2显示了用户信息删除的结果。

为了更好地检验用户的行为,我们需要先登陆管理员的帐号,然后在用户管理的页面上找到用户展示,并在其下方的待修正的选项处,选择符合或不满,然后依照系统的指引,输入相应的用户信息,并在指定的时间内,选择是否需要更正,以此来检验用户的行为是否正确。根据表3的数据,我们可以对用户的行为进行调整。

通过使用管理员帐号,我们可以访问用户展示界面,并通过输入用户名、身份证号码等多个关键字来检索相关的用户信息。如果您想要更详细地了解更多的用户,请使用该工具,并通过多种方式来检索您的关键字。这样,您便可以轻松地对所有的用户信息进行检索和测试。根据表4的数据,我们可以对用户的行为进行检验。

5.5 压力测试
通过采用Apache Jmeter这一开放的测试平台,我们可以有效地实现预期的测试目标。在此之前,我们需要在官方渠道下载该软件的安装文件,然后运行它,最后对它的系统进行相关的调整。接下来,我们需要在应用程序的主页上按下new键,创建一个新的线程组,设定它的数量,包括2000个线程,Ramp-Up的延迟,每次循环的次数,然后向它发送一个HTTP请求,按照系统的部署情况,将它设定好,使得Apache Jmeter能够正常地访问该系统。根据图33,我们可以获得详细的配置信息。

通过使用Apache Jmeter进行线程组设计,可以在线程组中汇集并检索各种数据,包括系统异常、平均值、中位数、标准偏差、吞吐量等,从而帮助测试人员更好地了解实际的运行状态。例如,可以通过观察图34中的压力测量聚合报告,以及图35中的压力测量图表,来更好地了解实际的运行状态。


经过测试,ApacheJmeter的异常率低至0,而且系统请求和响应的偏差值也处于正常范围,更令人惊叹的是,它的吞吐量可达15898.251/min,这说明该系统的稳定性极强,能够满足日常的各种需求。
5.6 测试小结
在这一部分中,我们将深入探讨如何实施系统测试。我们将会根据我们的设想,制定一份精确的测试方案,包括但不限于核心功能的检查、压力检查以及其他相关的评估。经过这些步骤,我们可以得出一个令人信服的结论:该系统既可靠又可以满足我们的日常需求。
总 结
本文将重点讨论网站设计的几个关键步骤。首先,我们将深入探讨网站开发的背景、目的和实施方法。然后简要介绍了开发环境和开发网站所需的几种技术。技术支持对于开发小型程序至关重要,因此本章更为重要。在技术引进之后,我们需要进行一些必要的分析,主要包括可行性分析、数据分析、需求分析和小方案的维护分析。在制作网站时,合理的分析和计划是必不可少的,所以我们应该列出各种分析的简单清单。分析之后,是网站的设计。在他们自己的设计中,应该能够体现出他们对于网站开始想要提供的一些功能,并且应该给出是如何实现这些功能的以及使用这些功能的手段。本文重点介绍了网站的设计原理、工作原理、功能操作过程和数据库设计。在第四章中,通过对于本网站用到的数据库进行了描述,其次就是对于网站的结构,从而可以清晰的给读这篇论文的人一个清晰的画面感。第五章的话,重点介绍了关于网站的一些功能是如何表现出来的,在这个过程中可以让看这篇论文的人在本章中对网站的实现页面有一个切身的体会。设计完成后,对网站进行了测试。测试是软件生产后必不可少的过程,它可以使网站在未来的运行中更加稳定。
参考文献
[1] 陈小燕,朱映辉,余晓春.基于SpringBoot+Vue的好农物商城的设计与实现[J].电脑知识与技术,2022,18(22):37-39.
[2] 曾怡苗.基于数据库的网上超市购物系统的设计与实现[J].自动化应用,2022(01):67-70.
[3] 田松涛,段元梅.基于SpringBoot的线上商城平台设计[J].无线互联科技,2022,19(01):56-57.
[4] 朱育颉,刘虎沉.网上购物平台多推荐融合算法研究[J].计算机科学,2021,48(S2):232-235.
[5] 单树倩,任佳勋.基于SpringBoot和Vue框架的数据库原理网站设计与实现[J].电脑知识与技术,2021,17(30):40-41+50.
[6] 常佳宁,潘琳.一种基于B/S的线上买菜管理系统设计[J].中国科技信息,2021(15):71-72.
[7] Ngoc Thang HA,Thi Lien Huong NGUYEN,Thanh Van PHAM,Thi Hong Tham NGUYEN. Factors Influencing Online Shopping Intention: An Empirical Study in Vietnam[J]. The Journal of Asian Finance, Economics and Business (JAFEB),2021,8(3).
[8] 邱丹萍.应用SpringBoot的食堂订餐管理系统设计[J].福建电脑,2020,36(06):115-117.DOI:10.16707/j.cnki.fjpc.2020.06.035
[9] .杨优优,郑向阳.基于Java的中小型宾馆管理系统的研发[J].智能计算机与应用,2018,8(04):189-191+194.
[10] 莫竣成,田秀云.基于Java的网上购物平台系统设计[J].机电工程技术,2021,50(01):103-105.
[11] 王志亮,纪松波.基于SpringBoot的Web前端与数据库的接口设计[J].工业控制计算机,2023,36(03):51-53..
[12] 王春明.计算机软件工程的数据库编程技术分析[J].电子技术与软件工程,2021(05):187-189.
[13] 熊永平.基于SpringBoot框架应用开发技术的分析与研究[J].电脑知识与技术,2019,15(36):76-77.
[14] 张雷,王悦.基于SpringBoot微服务架构下的MVC模型研究[J].安徽电子信息职业技术学院学报,2018,17(04):1-9.
[15] 吕宇琛.SpringBoot框架在web应用开发中的探讨[J].科技创新导报,2018,15(08):168+173.
[16] 颜治平.基于SpringBoot和Vue框架的教代会提案系统的设计与实现[J].科技创新与应用,2020(03):91-93+95.
[17] 银莉,杜啸楠.基于SpringBoot和Vue的社区服务平台设计与实现[J].电子技术,2022,51(12):182-183.
[18] 陈新府豪. 基于SpringBoot和Vue框架的创新方法推理系统的设计与实现[D].浙江理工大学,2022.DOI:10.27786/d.cnki.gzjlg.2022.000649
[19] 焦鹏珲. 基于SpringBoot和Vue框架的电子招投标系统的设计与实现[D].南京大学,2018.
[20] 刘冰,贾子彦,孙华林.基于Vue.js的高校档案管理系统[J].软件,2022,43(09):70-73.
致谢
不积跬步无以至千里,不积小流无以成江河。在我写论文的这段时间里,我感到巨大的压力。但这种压力促使我以最快的速度投入到网站开发理论的应用中去,通过这次,我学到了很多知识,能够灵活掌握课本所学的理论,在应用的开发中,我的开发水平各方面都有了较大的提升。每一次的改善对我来说都是一种成长,每一次的试验的成功都给我带来巨大的满足感。在这个过程中我积累的经验将对我们以锻练后的学习和生活产生巨大的帮助。
在写到论文致谢这部分的时候,真正感觉到大学四年即将要结束了,四年期间发生的点点滴滴就像是昨天的事情。我与学校的故事始于2019年金秋,还记得刚入学的时候老师说,大学四年,说长不长,说短也不短,但是四年的时光如白驹过隙,希望大家要珍惜美好的青春,多做一些有意义的事情让你的人生变得更加丰富多彩。落笔于此,意味着我的本科求用户涯就要落下帷幕,是终点亦是起点,也是对未来的憧憬和期许。希望未来的某一天再次翻看这篇文章,还能想起此刻满怀热情的自己。
谢谢我的论文指导老师。这篇论文是在老师的指导下完成的。她随和、热情、严谨。在写论文的过程中,老师也给了我宝贵的意见。从选题、选题到期末论文的修改、润色和定稿,老师一直很负责,耐心地给我详细的指导。感谢老师的帮助和鼓励,我的毕业论文完成了。非常感谢。我衷心感谢导师在论文的设计和写作过程中提出了许多有益的建议和意见。同时,她先进的软件开发理念和思维方式也给了我很大的启发。
最后,我要感谢孜孜不倦的老师们对这篇文章的评论和评论。感谢学校所有的老师。在过去的四年里,你们无私的奉献精神和严谨的学术态度使我受益匪浅。感谢你们的努力,我感受到了校园的温暖和博爱。最后,我感谢学校给了我宝贵的学习机会,让我开始新的生活,并向更高的水平迈进。
。