springboot基于微信小程序的校园社区团购系统设计与实现

摘  要

校园社区团购系统是一个为校园用户设计的电子商务平台,旨在通过集体购买的方式降低商品价格并提供便利的购物体验。用户可以通过该系统浏览商品、参与团购活动、下单支付,并选择在校园内的指定地点领取货物。系统支持多种商品类别,满足校园内不同用户的需求。同时,系统具备社交功能,用户可以邀请朋友一起参团,享受更低的价格优惠。此外,系统还提供订单管理、用户管理等后台管理功能,帮助商家优化运营策略,提升服务质量。

本文从系统的研究目的、研究现状、开发技术、系统分析、系统设计以及系统功能实现和系统测试等方面进行阐述。本系统主要是针对校园社区团购系统,采用Java语言编写,数据库使用MySQL数据库。经过测试,本系统可以满足校园社区团购的基本要求。

关键词:校园社区团购;MySQL数据库;Java

ABSTRACT

The campus community group buying system is an e-commerce platform designed for campus users, aimed at reducing product prices and providing a convenient shopping experience through collective purchasing. Users can browse products, participate in group buying activities, place orders and make payments through this system, and choose to collect goods at designated locations on campus. The system supports multiple product categories to meet the needs of different users on campus. At the same time, the system has social functions, allowing users to invite friends to join the group and enjoy lower price discounts. In addition, the system also provides backend management functions such as order management and user management, helping merchants optimize operational strategies and improve service quality.

This article elaborates on the research purpose, current research status, development technology, system analysis, system design, system function implementation, and system testing of the system. This system is mainly designed for the campus community group buying system, written in Java language and using MySQL database. After testing, this system can meet the basic requirements of campus community group buying.

Keywords: Campus community group buying; MySQL database; Java

目  录

第1章  绪论

1.1  选题背景与意义

1.2  国内外研究现状

1.3  主要研究内容

1.4  全文组织结构

第2章  系统开发技术简介

2.1  Java技术简介

2.2  MySQL数据库简介

2.3  Spring Boot框架

2.4  微信小程序简介

2.5  B/S结构

2.6  推荐算法介绍

第3章  系统分析

3.1  系统可行性分析

3.1.1  技术可行性

3.1.2  操作可行性

3.1.3  运行可行性

3.1.4  经济可行性

3.2  需求分析

3.2.1  性能需求

3.2.2  用户需求

3.3  系统UML用例分析

3.4  系统流程分析

3.4.1  添加信息流程

3.4.2  修改信息流程

3.4.3  删除信息流程

3.4.4  注册流程

3.4.5  登录流程

第4章  系统设计

4.1  系统设计原则

4.2  系统概要设计

4.3  系统结构设计

4.4  数据库设计

4.4.1  数据库设计原则

4.4.2   E-R图设计

4.4.3  数据库表设计

第5章  系统的实现

5.1  小程序端前台功能的实现

5.1.1  登录界面的实现

5.1.2  小程序端首页功能的实现

5.1.3  用户功能

5.2  后台管理员功能模块实现

第6章  系统测试

6.1  测试目的与意义

6.2 测试方法

6.3  测试用例

6.4  测试结果

第7章  总结与展望

7.1  总结

7.1  展望

参考文献

致        

第1章  绪论

1.1  选题背景与意义

随着互联网经济的发展和大学生消费市场的壮大,校园内对于便捷、实惠购物方式的需求日益增长。传统的校园购物模式无法满足学生和教职工对于商品多样性、价格优惠以及购物便利性的要求。在这样的背景下,开发一个针对校园社区的团购系统不仅可以有效整合校园内外的商家资源,还可以利用学生的集体购买力为商家带来稳定的订单,降低库存和营销成本。

实现校园社区团购系统具有显著的意义。对消费者而言,该系统提供了一个价格更加优惠、购物更加便捷的平台,满足了他们的日常购物需求。对商家而言,通过参与团购活动,可以大幅度提升销量和品牌知名度。团购系统还有助于促进校园内外的经济互动,增加就业机会,推动本地商业生态的发展。因此,构建一个功能齐全、操作简便的校园社区团购系统,不仅符合当前的市场趋势,也将在提升校园生活质量和促进经济发展方面发挥重要作用。

1.2  国内外研究现状

在国内,随着共享经济的兴起和移动支付技术的普及,校园社区团购系统得到了快速发展。众多平台如美团、拼多多等纷纷进入校园市场,提供食品、日用品、学习资料等多样化的商品团购服务。这些平台通过与校园内的商家合作,利用大数据分析学生消费习惯,优化商品供应链,降低物流成本。国内高校也尝试自主研发团购系统,以满足校园特有的消费需求和管理要求。国内校园社区团购系统仍面临诸多挑战,如如何确保商品质量、保障用户数据安全以及如何更好地整合校内外资源等问题。

国外在校园社区团购系统方面的研究和实践同样活跃。许多国外的高校已经将团购作为提升校园服务质量和增加学校收入的重要途径。美国的一些大学通过与本地供应商合作,推出有机食品和校园周边商品的团购服务,受到师生的欢迎。国外的校园团购系统更注重可持续发展和社会责任,积极推动环保产品和公平贸易商品的团购活动。国外校园社区团购系统也面临着诸如如何平衡商业利益与学术环境、如何提高用户参与度等挑战。

1.3  主要研究内容

本课题的校园社区团购系统开发选用Java作为后端开发语言,并引入了基于用户相似度的协同过滤算法,用于提供个性化的推荐功能。系统整体采用Spring Boot框架,后者带来了开箱即用的便利性,大大加快了开发速度。数据存储和操作则采用了MySQL数据库。前端开发部分,使用了HTML、CSS、JavaScript以及uni这一流行的前端框架,使得界面设计和用户交互变得更加直观和便捷。在开发工具方面,选用了Eclipse以及Navicat,其中Eclipse作为一款成熟的开发工具,带来了丰富的功能和强大的支持,而Navicat作为数据库管理工具,提供了友好的用户界面和强大的SQL处理能力,从而大大提高了开发效率。

1.4  全文组织结构

本文共分为7章,文章结构及各章内容简介如下:

第1章 主要介绍及探讨论文研究的背景和意义,以及校园社区团购系统国内外的研究现状。最后,给出本文的整体组织结构。

第2章 主要介绍了本次系统开发过程中用到的相关技术及开发工具,如MySQL数据库,B/S模式等。

第3章 主要介绍了本次系统开发过程中的系统分析过程,从可行性分析、需求分析、系统UML用例分析、总体业务流程分析、模块流程分析这几方面进行了系统分析。

第4章 主要介绍了本次系统开发过程中的系统设计过程,从系统设计原则、系统概要设计、数据库设计这几方面进行了详细描述。

第5章 主要介绍了本次系统开发过程中的系统实现环节,从客户端的各个功能模块的实现和管理后台各个功能模块的实现方面进行了详细描述。

第6章 主要介绍了本次系统开发过程中的系统测试环节,从测试的目的与意义、测试方法、测试用例、测试结果等方面进行了详细描述。

第7章 主要介绍了本次系统开发过程的总结以及本次开发过程的不足和以后的展望。

第2章  系统开发技术简介

2.1  Java技术简介

Java是一种广泛使用的计算机编程语言,拥有跨平台、面向对象、泛型编程的特性。它广泛应用于企业级Web应用开发和移动应用开发。Java技术生态健全,拥有丰富的开源框架和工具,如Spring、Hibernate、MyBatis等。Java的设计目标是让开发者“一次编写,到处运行”,即代码在任何支持Java的平台上都能运行,这得益于Java虚拟机(JVM)的存在。JVM将Java字节码转换为特定平台的机器码,使得Java程序具有良好的可移植性[1]。

Java是一种面向对象的编程语言,这意味着它使用对象和类来设计软件。面向对象编程的主要优点是它可以提高软件的重用性、灵活性和扩展性。Java还支持并发编程,允许多个线程同时执行,从而提高了程序的性能。同时具有严格的内存管理机制,可以有效地防止内存泄漏和其他内存问题。还提供了异常处理机制,可以帮助开发者更好地处理运行时错误。

2.2  MySQL数据库简介

MySQL是一种开放源代码的关系型数据库管理系统。MySQL的特点是快速、多线程、多用户。它可以对数据进行许多精确且详细的增加、删除、修改、查询等操作。MySQL提供了创建和访问数据库体制机制,如果你想要创建、修改、增加、删除数据库的表和项均可以通过简单、直接的方式完成,且能够得到表和项之间的数据关系。MySQL经历了三十多年的发展,已经非常成熟,中小型企业级应用MySQL数据库已经十分广泛[2]。

数据库包含了数据和数据库对象,而数据库对象主要是指关系表(Table)、视图(View)、存储过程(Stored Procedure)和触发器(Trigger)等。SQL(Structured Query Language)是实现数据库操作和管理数据的主要方式,select、delete、insert、update语句等都是一些基本的操作。

2.3  Spring Boot框架

Spring Boot是一个基于Java的开源框架,它简化了Spring应用程序的开发过程。Spring Boot提供了一种快速构建、运行和部署微服务的方法,使得开发人员能够更专注于业务逻辑的实现,而无需关心底层的基础设施和配置。Spring Boot的主要特点包括[3]:

(1)约定优于配置(Convention Over Configuration):Spring Boot遵循约定优于配置的原则,提供了一系列的默认配置和自动配置功能,使得开发者可以按照约定的方式编写代码,而无需显式地配置各种组件和依赖关系。这使得开发人员可以更加专注于业务逻辑的实现,而无需关心底层的基础设施和配置。

(2)独立运行:Spring Boot应用程序的启动过程被抽象为一个独立的可执行jar文件,这个jar文件包含了应用程序的所有依赖项以及应用程序的主类。这使得应用程序的部署变得更加简单和快捷,只需要将应用程序打包成一个jar文件,然后使用Java命令行工具即可运行。

(3)简化开发:Spring Boot提供了一种声明式的编程方式,允许开发者通过注解来定义和管理应用程序的各种组件。这使得开发人员可以更加简洁地描述应用程序的行为和结构,而无需编写大量的XML或Java配置代码。此外,Spring Boot还支持多种开发模式,如Spring MVC、Spring Data JPA等,使得开发人员可以根据项目需求选择最适合的开发方式。

(4)集成丰富:Spring Boot集成了大量的常用库和框架,如数据库连接池、缓存、安全等。这使得开发人员可以轻松地集成这些库和框架,而无需手动配置各种依赖关系。此外,Spring Boot还支持各种插件和扩展机制,使得开发人员可以根据项目需求定制自己的应用程序。

(5)监控与诊断:Spring Boot提供了一种自动化的应用程序监控和诊断功能,可以帮助开发人员快速定位和解决问题。通过集成各种监控工具,如Prometheus、Grafana等,Spring Boot可以实时收集应用程序的性能数据,并提供可视化的仪表盘来展示这些数据。此外,Spring Boot还支持各种日志记录和审计功能,可以帮助开发人员更好地了解应用程序的运行情况。

(6)社区活跃:Spring Boot拥有一个庞大的开发者社区,提供了大量的教程、文档和示例代码。这使得开发人员可以更容易地学习和掌握Spring Boot技术,也可以获得丰富的技术支持和帮助。

Spring Boot为Java开发人员提供了一个快速、简便的方式来构建现代化的、可扩展的应用程序。通过使用Spring Boot,开发人员可以更专注于业务逻辑的实现,而无需关心底层的技术细节。

2.4  微信小程序简介

微信小程序是一种轻量级的应用,可以在微信内部直接使用,无需下载安装。它提供了丰富的功能和接口,可以满足用户的各种需求。微信小程序的开发门槛相对较低,只需要掌握一些基础的编程知识,就可以进行开发。同时,微信小程序还提供了丰富的开发工具和文档,可以帮助开发者更快地完成开发工作。应用场景也非常广泛,包括电商、社交、游戏、生活服务等各个领域。它可以为用户提供便捷的服务,同时也为商家提供了一个全新的营销渠道。特点包括便捷性、实时性和互动性。用户可以随时随地通过微信使用小程序,无需下载安装。同时,小程序还可以与用户进行实时的交互,提供更加个性化的服务[4]。

总的来说,微信小程序是一种创新的应用形式,它打破了传统应用的边界,为用户提供了更加便捷、实时、个性化的服务。

2.5  B/S结构

B/S(Browser/Server,浏览器/服务器)架构是目前软件开发中最常用的软件结构。在很大程度上减轻了客户机的负担,只要安装、配置少量的客户端运行软件在客户机上就可以了,大量的工作将有服务器承担[5]。

B/S系统的最强大的优点是他可以很好地让客户机的工作量被大量的简化掉,而对于客户机来说就可以只配置很少的在客户端上来运行的软件就可以实现了,也就是说这其中的最大部分的工作就会安置在服务器上,由服务器来执行,这样说来服务器的主要的任务就是实现数据库的访问以及应用程序的执行操作。

2.6  推荐算法介绍

推荐算法是一类算法,它根据用户的历史行为、偏好和需求,利用数据分析技术为用户推荐他们可能感兴趣的商品或服务。常见的推荐算法包括基于内容的推荐、协同过滤推荐以及混合推荐等。基于内容的推荐通过分析用户过去喜欢的物品特征来推荐类似的物品;协同过滤推荐则分为用户基和物品基两种,前者通过找到相似用户来推荐物品,后者则是通过找到相似物品来进行推荐;混合推荐结合了多种方法,以提高推荐的准确度和覆盖度。随着人工智能技术的发展,深度学习也被应用于推荐系统中,使得推荐更加精准和个性化。

第3章  系统分析

3.1  系统可行性分析

可行性分析的目的是为了在尽可能短的时间通过最小的代价确定是否能解决此问题。通过对校园社区团购系统实行的目的初步调查和分析,提出可行性方案并对其一一进行论证。接下来,我会从以下几个方面来阐述本系统开发的可行性:

3.1.1  技术可行性

校园社区团购系统根据设计的实际情况,从而选择微信开发者工具,使用B/S结构、java技术以及spring boot框架,这些强大的框架支持了复杂业务逻辑的实现。选用了MySQL数据库,确保数据的安全性和可靠性。这些技术实现了性能的稳定性、升级的优异性、开发的迅猛性、管理的简洁性、语言新颖性以及服务的新颖性。

综合上述分析,可以得出校园社区团购系统的开发在技术方面的可能性是很高的。

3.1.2  操作可行性

校园社区团购系统的页面简单,功能一目了然,便于不同类型用户的操作,比如登录界面和注册的界面就采用了比较常见的界面窗口来实现用户的登录和注册操作,通过手机访问操作,用户只要平时使用过是手机软件都能进行访问操作。校园社区团购系统的开发语言选择的是Java语言,基于MySQL数据库,这些使系统加倍的完善。

综合上述分析,得出校园社区团购系统的开发在操作方面的可能性很高。

3.1.3  运行可行性

校园社区团购系统运行配置要求较低,普通的消费者以及用户都具有足够稳定的条件来运行此系统。因此,校园社区团购系统在运行方面是可行的。

3.1.4  经济可行性

本系统的开发主要是针对于毕业设计的完成,不会应用于商业用途,工具方面只需要一台电脑和相关软件就可以完成开发,系统的开发周期一般在3个月左右,所以在经济方面不会产生任何负担,因此开发该系统在经济上是可行的。

综上所述,校园社区团购系统不论是在经济可行性方面,技术可行性方面、运行可行性方面还是在操作可行性方面都是可行的,因此,符合可行性分析。

3.2  需求分析

本系统针对传统校园社区团购管理模式的弊端,从而开发出的一种功能更加全民的校园社区团购系统,主要目的就是通过本系统来改变校园社区团购管理上的系统,满足用户的需求。提升管理质量,丰富全民生活。在系统开发初期,为了更好的了解人们对校园社区团购系统的需求以及对现有同类系统的了解和建议,在指导老师的协助下设计了一份调查问卷,通过展开走访调查,并根据调查问卷的实际填写情况从以下方面总结出了当下人们对校园社区团购系统的态度以及要求,这样可以更出色的完成本次毕业论文,调查问卷详情见附录。

3.2.1  性能需求

1.在校园社区团购系统的开发过程中,我们必须要考虑以下几点:

2.安全性:在信息化的时代,信息是宝贵的财富,保证信息的安全,特别是个人信息尤为重要,对安全性的要求也就更高了;

3.先进性:系统要符合现今的流行走势,开发要符合用户的需求,能够快速准确的满足校园社区团购管理的各种需求;

4.可扩展性:校园社区团购系统给用户带来了极大的便利,提高了日常工作效率,备受用户欢迎,因此在校园社区团购系统开发过程中,我们需要预想到未来的系统的扩展和功能进一步的发展等一系列问题;

5.有效性:有效性最主要的是指功能方面的有效性,所以在设计校园社区团购系统功能的时候我们一定要通过前期的调查了解用户需求,并想方设法的以满足各方面的需求为目的。

3.2.2  用户需求

校园社区团购系统主要是为两类人服务的,他们分别是管理员和用户。管理员总体负责整体系统的运行维护,统筹协调。

系统管理员最主要对首页、用户、商品分类、商品信息、公告信息、系统管理、订单管理、我的信息等进行解析。

用户进入小程序端,在首页页面可以查看商品信息和公告信息,点击进入我的可以对我的订单、我的收藏、用户充值、在线留言、修改密码等进行操作。

3.3  系统UML用例分析

UML是 Unified Modeling Language的缩写,又称统一建模语言。是开发者对客观事物进行建模的标记,同时也是为开发者了解系统需要什么样的功能和整个流程是什么样的做的前期工作。校园社区团购系统的UML用例分析详情如下图所示。

图3-1管理员用例图

图3-2用户用例图

3.4  系统流程分析

3.4.1  添加信息流程

管理人员或者其他的系统用户在选择添加信息的时候,系统会自己根据上一个添加的信息的ID号码,自动的给将要添加的这条信息一个属于它自己的ID号码。这时候是不用管理人员或者其他需要添加信息的用户自己填写的。当输入了想要往系统里面增加的信息后,系统就会对所输入的信息提交一个验证的过程。如果合法,则提示信息为添加成功。这时这条信息就会被添加到了信息对应的表中。如果不合法,则提示信息为添加失败,这就要重新把信息在输入一次来验证。流程详情见图3-3所示。

图3-3添加信息流程图

3.4.2  修改信息流程

管理人员或者其他用户找到需要修改的信息后,然后将要修改的数据对应的输入到修改框里面。当数据合法的时候,则提示信息为添加成功。这时候这条数据就会被添加到了数据对应的数据库表中。如果不合法,则提示信息为添加失败,这就要重新把数据在输入一次来验证。修改信息流程图如图3-4所示。

图3-4修改信息流程图

3.4.3  删除信息流程

管理人员或者其他的用户选择自己想要删除一条信息后,点击后面的“删除”按钮,系统就会给管理人员或者其他的用户一个提示表明信息删除成功了,与此同时系统会从数据库中将管理人员或者其他的用户想要删除的这条信息给删除掉。删除信息流程图如图3-5所示。

图3-5删除信息流程图

3.4.4  注册流程

注册的时候要按照注册界面上的注册要求填写数据进行注册,一一对应的填写相应地注册的个人资料。如果注册信息符合要求就会注册成功,如不符合要求就会要求重新填写。注册成功时这条注册信息就会被添加到了数据对应的数据库表中。系统注册流程图详情如图3-6所示。

图3-6系统注册流程图

3.4.5  登录流程

打开系统后在登录界面输入用户名和密码,如果是准确信息的话,用户就会登录进校园社区团购系统。如果用户输入的任何一个信息不一致的话,系统就会提示本次登录失败了,那么用户需要重新在输入一次。登录流程图如图3-7所示。

图3-7登录流程图

第4章  系统设计

4.1  系统设计原则

根据走访调研调查,并根据人们对校园社区团购系统的切实需求,校园社区团购系统的开发按照以下原则进行。

1.有效性:有效性指站点能尽自己最大的努力来使用户需求的目前还没有开发的功能被满足了。可用性指我们可以通过对站点操作来实现系统设计出的各个功能;

2.高可靠性:系统开发必不可少的一个要求就是可靠性,校园社区团购系统通过合理而先进的设计和系统资源的优化选型,来更好地实现系统的可靠性这一个特点;

3.高安全性:在系统设计的过程中,设计人员应该最大限度的把所有可以给系统提供安全保证的资源最大限度的利用起来。

4.2  系统概要设计

校园社区团购系统只要用户能连上Internet,就能在任意连续时间段里面、任意地理位置里的使用。系统工作原理图详情见图4-1。

图4-1系统工作原理图

4.3  系统结构设计

构图是系统的体系结构,体系结构是体系结构体系的重要组成部分。系统的总体结构设计如图4-2所示。

图4-2 系统总体架构图

4.4  数据库设计

4.4.1  数据库设计原则

在数据库设计过程中应该充分考虑以下几点:

1.尽最大的可能满足校园社区团购系统目前的需求,这是数据库设计的基石;

2.需要分清主次,让数据结构一目了然;

3.需要保持适当的冗余,用来维持系统的良好的性能;

4.可以应对日趋壮大的数据量;

5.可以应对可能出现的新需求。

4.4.2   E-R图设计

E-R图(Entity Relationship Diagram)是指用来表现数据库中实现实际世界建模的数据库概念模型。本系统将“商品信息评论、公告信息、在线留言、用户、地址、收藏”等作为实体,它们的局部E-R图,如图4-3所示:

图4-3局部E-R图

4.4.3  数据库表设计

数据库表的设计是本系统开发里最不可忽视的环节,校园社区团购系统各个表的设计结果如下:

表4-1:在线留言

字段名称

类型

长度

字段说明

主键

默认值

id

bigint

主键

主键

addtime

timestamp

创建时间

CURRENT_TIMESTAMP

userid

bigint

用户id

adminid

bigint

管理员id

ask

longtext

4294967295

提问

reply

longtext

4294967295

回复

isreply

int

是否回复

表4-2:用户

字段名称

类型

长度

字段说明

主键

默认值

id

bigint

主键

主键

addtime

timestamp

创建时间

CURRENT_TIMESTAMP

zhanghao

varchar

200

账号

mima

varchar

200

密码

xingming

varchar

200

姓名

xingbie

varchar

200

性别

shouji

varchar

200

手机

touxiang

longtext

4294967295

头像

money

double

余额

0

表4-3:购物车表

字段名称

类型

长度

字段说明

主键

默认值

id

bigint

主键

主键

addtime

timestamp

创建时间

CURRENT_TIMESTAMP

tablename

varchar

200

商品表名

shangpinxinxi

userid

bigint

用户id

goodid

bigint

商品id

goodname

varchar

200

商品名称

picture

longtext

4294967295

图片

buynumber

int

购买数量

price

double

单价

表4-4:用户表

字段名称

类型

长度

字段说明

主键

默认值

id

bigint

主键

主键

username

varchar

100

用户名

password

varchar

100

密码

image

varchar

200

头像

role

varchar

100

角色

管理员

addtime

timestamp

新增时间

CURRENT_TIMESTAMP

表4-5:地址

字段名称

类型

长度

字段说明

主键

默认值

id

bigint

主键

主键

addtime

timestamp

创建时间

CURRENT_TIMESTAMP

userid

bigint

用户id

address

varchar

200

地址

name

varchar

200

收货人

phone

varchar

200

电话

isdefault

varchar

200

是否默认地址[是/否]

表4-6:token表

字段名称

类型

长度

字段说明

主键

默认值

id

bigint

主键

主键

userid

bigint

用户id

username

varchar

100

用户名

tablename

varchar

100

表名

role

varchar

100

角色

token

varchar

200

密码

addtime

timestamp

新增时间

CURRENT_TIMESTAMP

expiratedtime

timestamp

过期时间

CURRENT_TIMESTAMP

表4-7:收藏表

字段名称

类型

长度

字段说明

主键

默认值

id

bigint

主键

主键

addtime

timestamp

创建时间

CURRENT_TIMESTAMP

userid

bigint

用户id

refid

bigint

商品id

tablename

varchar

200

表名

name

varchar

200

名称

picture

longtext

4294967295

图片

type

varchar

200

类型

1

inteltype

varchar

200

推荐类型

remark

varchar

200

备注

表4-8:商品信息

字段名称

类型

长度

字段说明

主键

默认值

id

bigint

主键

主键

addtime

timestamp

创建时间

CURRENT_TIMESTAMP

shangpinmingcheng

varchar

200

商品名称

shangpinfenlei

varchar

200

商品分类

pinpai

varchar

200

品牌

guige

varchar

200

规格

tupian

longtext

4294967295

图片

shangjiariqi

date

上架日期

shangpinjieshao

longtext

4294967295

商品介绍

onelimittimes

int

单限

alllimittimes

int

库存

clicktime

datetime

最近点击时间

clicknum

int

点击次数

0

discussnum

int

评论数

0

price

double

价格

groupprice

double

团购价

0

grouppeople

int

拼团人数

0

curpeople

int

当前人数

0

storeupnum

int

收藏数

0

表4-9:商品分类

字段名称

类型

长度

字段说明

主键

默认值

id

bigint

主键

主键

addtime

timestamp

创建时间

CURRENT_TIMESTAMP

shangpinfenlei

varchar

200

商品分类

表4-10:订单

字段名称

类型

长度

字段说明

主键

默认值

id

bigint

主键

主键

addtime

timestamp

创建时间

CURRENT_TIMESTAMP

orderid

varchar

200

订单编号

tablename

varchar

200

商品表名

shangpinxinxi

userid

bigint

用户id

goodid

bigint

商品id

goodname

varchar

200

商品名称

picture

longtext

4294967295

商品图片

buynumber

int

购买数量

price

double

价格

0

total

double

总价格

0

type

int

支付类型

1

status

varchar

200

状态

address

varchar

200

地址

tel

varchar

200

电话

consignee

varchar

200

收货人

logistics

longtext

4294967295

物流

remark

varchar

200

备注

groupno

varchar

200

团购编号

sfsh

varchar

200

是否审核

shhf

longtext

4294967295

审核回复

role

varchar

200

用户角色

表4-11:公告信息

字段名称

类型

长度

字段说明

主键

默认值

id

bigint

主键

主键

addtime

timestamp

创建时间

CURRENT_TIMESTAMP

biaoti

varchar

200

标题

jianjie

longtext

4294967295

简介

fabushijian

date

发布时间

fengmian

longtext

4294967295

封面

neirong

longtext

4294967295

内容

clicktime

datetime

最近点击时间

clicknum

int

点击次数

0

表4-12:商品信息评论表

字段名称

类型

长度

字段说明

主键

默认值

id

bigint

主键

主键

addtime

timestamp

创建时间

CURRENT_TIMESTAMP

refid

bigint

关联表id

userid

bigint

用户id

avatarurl

longtext

4294967295

头像

nickname

varchar

200

用户名

content

longtext

4294967295

评论内容

reply

longtext

4294967295

回复内容

表4-13:配置文件

字段名称

类型

长度

字段说明

主键

默认值

id

bigint

主键

主键

name

varchar

100

配置参数名称

value

varchar

100

配置参数值

url

varchar

500

url

第5章  系统的实现

5.1  小程序端前台功能的实现

5.1.1  登录界面的实现

首先双击打开小程序,连上网络之后会显示出本系统的登录界面,这是进入小程序的第初始页面“登录”,能成功进入到该登录界面则代表小程序的开启是成功的,接下来就可以操作本系统所带有的其他所有的功能。登录界面如图5-1所示。

图5-1 登录界面

5.1.2  小程序端首页功能的实现

小程序端首页是用户注册登录后进入的第一个界面,用户可通过小程序端首页的最下面的那一行导航栏进入到相应的网页进行操作;小程序首页界面如图5-2所示。

图5-2 小程序首页界面图

商品信息:在商品信息界面的输入栏内输入商品名称进行查询,可以查看到商品信息,并根据需要进行加入购物车、立即购买、我要开团、评论或收藏操作。商品信息详情如图5-3所示

图5-3商品信息详情界面图

5.1.3  用户功能

用户登录成功后,点击“我的”进入用户功能页面,在用户功能页面可以对我的订单、我的收藏、用户充值、在线留言、修改密码等进行详细操作。用户功能界面如图5-4所示。

图5-4用户功能界面图

5.2  后台管理员功能模块实现

在登录流程中,用户首先在Uni前端界面输入用户名和密码。这些信息通过HTTP请求发送到Java后端。后端接收请求,通过与MySQL数据库交互验证用户凭证。如果认证成功,后端返回给前端,允许用户访问系统。这个过程涵盖了从用户输入到系统验证和响应的全过程。后台管理员登录界面图5-5所示。

图5-5 后台管理员登录界面

管理员进入主页面,主要功能包括对首页、用户、商品分类、商品信息、公告信息、系统管理、订单管理、我的信息等功能进行操作。管理员主页面如图5-6所示:

图5-6 管理员主界面

用户功能在视图层(view层)进行交互,比如点击“查询、添加或删除”按钮或填写用户表单。这些用户表单动作被视图层捕获并作为请求发送给相应的控制器层(controller层)。控制器接收到这些请求后,调用服务层(service层)以执行相关的业务逻辑,例如验证输入数据的有效性和与数据库的交互。服务层处理完这些逻辑后,进一步与数据访问对象层(DAO层)交互,后者负责具体的数据操作如:查看、修改或删除用户信息,并将操作结果返回给控制器。最终,控制器根据这些结果更新视图层,以便用户功能可以看到最新的信息或相应的操作反馈。用户界面如图5-7所示:

图5-7用户界面图

商品分类功能在视图层(view层)进行交互,比如点击“查询、添加或删除”按钮或填写商品分类表单。这些商品分类表单动作被视图层捕获并作为请求发送给相应的控制器层(controller层)。控制器接收到这些请求后,调用服务层(service层)以执行相关的业务逻辑,例如验证输入数据的有效性和与数据库的交互。服务层处理完这些逻辑后,进一步与数据访问对象层(DAO层)交互,后者负责具体的数据操作如:查看、修改或删除商品分类信息,并将操作结果返回给控制器。最终,控制器根据这些结果更新视图层,以便商品分类功能可以看到最新的信息或相应的操作反馈。商品分类界面如图5-8所示:

图5-8商品分类界面图

商品信息功能在视图层(view层)进行交互,比如点击“查询、添加或删除”按钮或填写商品信息表单。这些商品信息表单动作被视图层捕获并作为请求发送给相应的控制器层(controller层)。控制器接收到这些请求后,调用服务层(service层)以执行相关的业务逻辑,例如验证输入数据的有效性和与数据库的交互。服务层处理完这些逻辑后,进一步与数据访问对象层(DAO层)交互,后者负责具体的数据操作如:查看、修改、查看评论或删除商品信息,并将操作结果返回给控制器。最终,控制器根据这些结果更新视图层,以便商品信息功能可以看到最新的信息或相应的操作反馈。商品信息界面如图5-9所示:

图5-9商品信息界面图

公告信息功能在视图层(view层)进行交互,比如点击“查询、添加或删除”按钮或填写公告信息表单。这些公告信息表单动作被视图层捕获并作为请求发送给相应的控制器层(controller层)。控制器接收到这些请求后,调用服务层(service层)以执行相关的业务逻辑,例如验证输入数据的有效性和与数据库的交互。服务层处理完这些逻辑后,进一步与数据访问对象层(DAO层)交互,后者负责具体的数据操作如:查看、修改或删除公告信息,并将操作结果返回给控制器。最终,控制器根据这些结果更新视图层,以便公告信息功能可以看到最新的信息或相应的操作反馈。公告信息界面如图5-10所示:

图5-10公告信息界面图

系统管理功能在视图层(view层)进行交互,比如填写轮播图管理表单。这些轮播图管理表单动作被视图层捕获并作为请求发送给相应的控制器层(controller层)。控制器接收到这些请求后,调用服务层(service层)以执行相关的业务逻辑,例如验证输入数据的有效性和与数据库的交互。服务层处理完这些逻辑后,进一步与数据访问对象层(DAO层)交互,后者负责具体的数据操作如:查看或修改轮播图管理信息,并将操作结果返回给控制器。最终,控制器根据这些结果更新视图层,以便轮播图管理功能可以看到最新的信息或相应的操作反馈。还可以对在线留言进行相同的操作。系统管理界面如图5-11所示:

图5-11系统管理界面图

第6章  系统测试

6.1  测试目的与意义

系统测试是系统开发过程的最后阶段,而且是非常重要的一个阶段,测试阶段繁琐又漫长,很多时候我们都意识不到它的重要性。它的必要性体现在它是能够保障系统质量与可靠性的重要一关,是对系统的最后一步审查。

通过测试以确定用户对该系统的需求是否已经得到了满足,发现问题以后,我们要不断的调试以找出出现问题的具体原因与位置,然后对其进行修改,直到达到本系统要求的正确度。

6.2 测试方法

在系统开发的过程中,对于系统的各个功能模块,每当完成一个部分功能的编码以后,都需要及时的对该模块进行测试,根据程序设计的逻辑结构,构建与之相适应的测试用例,对该模块的功能结构的合理性进行测试和验证,此外,还需要设计相应的测试方法检验该功能单元的编码正确性。

6.3  测试用例

为了测试校园社区团购系统用户以及管理员的登录以及各功能能否正常运行,设计了以下测试用例。

表6-1 测试用例设计表

编号

功能模块

步骤

预期结果

1

用户注册

填写注册页面所有信息,点击确定

注册成功

2

用户登陆

填写注册时用户名和密码:guanyu,123456.点击登录

登陆成功

填写用户名guanyu,密码124

提示“登陆失败,请联系管理员”

填写用户名guan,密码123456

提示“登陆失败,请联系管理员”

填写用户名guan,密码124

提示“登陆失败,请联系管理员”

3

个人信息修改

电话号码输入非11位数字

提示“输入的手机号有误”

电话号码输入11位数字

修改成功

4

管理员登录

填写正确的用户名,密码

登陆成功

5

用户管理

管理员在后台登录,点击用户管理

展示用户管理列表

添加管理员

添加管理员

管理员列表

修改、删除管理员信息

注册用户管理

删除用户信息

由于篇幅原因,各个功能模块测试用例分析不一一赘述,以用户注册功能模块、个人信息修改模块和评价模块为例进行描述,测试用例分析表如表6-2,6-3所示。

表6-2 用户注册模块测试表

步骤

操作描述

数据

测试结果

1

不输入用户名,按确定按钮

全部信息为空

系统提示“用户名,密码不能为空”

2

输入用户名,不输入密码

用户名:guanyu,密码、电话、地址为空

系统提示“用户名,密码不能为空”

3

输入用户名、密码

用户名:guanyu,密码:123,电话、地址为空

系统提示“您的手机号输入有误”

4

输入用户名,密码,格式错误的手机号

用户名:guanyu,密码:123,电话:1786515397

系统提示“您的手机号输入有误”

5

输入用户名,密码,格式正确的手机号

用户名:guanyu;密码:123,电话:17865153976

系统提示“注册成功”

表6-3 个人信息修改模块测试表

步骤

操作描述

数据

测试结果

1

输入格式错误的手机号,密码和地址

输入密码:123,地址:XXX,电话:1234567890

系统提示“您的手机号输入有误”

2

输入格式正确的手机号,密码和地址

输入密码:123,地址:XXX,电话:12345678901

系统提示“修改成功”

3

输入地址和格式正确的手机号,不输入密码

输入地址:XXX,电话:12345678901

系统提示“密码不能为空”

4

输入密码和格式正确的手机号,不输入地址

输入密码:123,电话:12345678901

系统提示“地址不能为空”

5

输入密码和地址,不输入手机号

输入密码:123,地址:XXX

系统提示“您的手机号输入有误”

6.4  测试结果

表6-1功能模块测试用例设计表的预期结果与表6-2、6-3功能模块测试结果均相符,系统模块功能均完善,在注册登录模块,对于用户填写的错误信息系统会做出提示,符合需求分析阶段的要求。

经过不断测试修改,校园社区团购系统已基本实现预期功能。系统实现了首页、用户、商品分类、商品信息、公告信息、系统管理、订单管理、我的信息等功能。

第7章  总结与展望

7.1  总结

随着时代的发展,校园社区团购管理也爆发出了强大的潜力,人们对于快捷高效的追求愈演愈烈,而传统管理方式显然不再适用快节奏的今天,校园社区团购管理迫切希望出现一个工具,来帮助校园社区团购的高效管理。本文系统性的论述了校园社区团购系统的研究与设计的过程,其主要的内容如下所示:

1.系统性的分析了校园社区团购系统的研究背景和国内外的研究现状,简单性的介绍了该系统的理论意义和实践意义;

2.简单介绍了实现的相关技术,包括:java技术、MySQL数据库、B/S模式等技术;

3.从用户需求方面对系统的功能需求进行了分析;

4.对系统的功能做了详细的设计,并加以实现;

5.对系统做了大量的测试,并对存在的问题加以修改完善。

最终实现了校园社区团购系统的成功运行,系统内实现了校园社区团购管理的全部功能,能够满足人们对于高效便捷的需求,可以成为人们身边的好助手,同时也增加了一种高效的管理途径。

7.1  展望

由于第一进行较全面的系统开发,且期间还有面临毕业实习等因素耽误时间,在本身能力就不够的情况下,系统的基本功能虽然能够正常运行,但是仍然需要进一步更改和优化:

1.系统的安全性还需进一步改善,来保证系统用户的信息的安全;

2.系统的美工方面还需要加强。

通过这个毕业设计,使我对手机应用软件的开发以及Java语言和MySQL数据库有了更深刻的学习和理解,在系统开发的过程中,我针对校园社区团购系统的开发进行了更深入的研究,我相信,不管是在以后的学习还是在生活当中,此次的学习经历都会使我受益匪浅,此次毕业设计实践也会为我以后的工作打下良好的基础。


参考文献

[1]赵将.Java语言在计算机软件开发中的应用[J].数字技术与应用,2023,41(03): 160-162.

[2]李艳杰.基于MySQL数据库的数据安全应用设计[J].现代信息科技,2023, 7(12): 151-154.

[3]徐鹏涛.基于Vue的前端开发框架的设计与实现[D].山东:山东大学,2020.

[4]张志云.探究计算机软件开发中Java编程语言的应用[J].信息记录材料,2023,24(04):110-112.

[5]杜少波.基于OBE的Java程序设计教学模式实践[J].电子技术,2023,52(01):212-213.

[6]文欣.以应用型人才培养为导向的“Java框架技术”课程改革的研究[J].南方农机,2022,53(24):188-191.

[7]王瑞东.Java web 软件框架技术探讨[J]. 中国新通信, 2019, 21(09): 46.

[8]宋旸.使用Java语言开发Web应用软件的知识探讨[J].中国设备工程,2022(14):121-123.

[9]邬卓恒,姜全坤.应用型本科Java课程混合式教学创新研究[J].现代信息科技,2022,6(14):173-176.

[10]妥泽花.基于黑盒测试与白盒测试的比较探究[J].电子世界,2021(11):55-56.

[11]Zerouali Ahmed,Mens Tom,Decan Alexandre,Gonzalez Barahona Jesus,Robles Gregorio.A multi-dimensional analysis of technical lag in Debian-based Docker images[J].Empirical Software Engineering,2021, 26(2):34-39.

[12]Ilahi L, Martinho R. Towards a Business Process Management Governance ApproachUsing Process Model Templates and Flexibility[C]. IEEE World Congress on Services.IEEE, 2020:27-34.


致        谢

随着校园社区团购系统的完成和毕业论文终稿的完成,我猛然间的感觉到空气中都弥漫着毕业那种让人不舍的味道,我们马上就要用自己手中的彩画笔为自己最绚丽也是最难忘的四年大学时光画上一个圆满的句号。但是,大学生活的结束却又意味着我们人生的下一段征程的开始。面对我们人生中的每一个阶段的结束,我们总是难以用最简单的语言表达出这个时刻我们内心最真的感觉。

首先,我想特别感谢我的指导老师。在我做毕业设计和写论文的过程中,总是离不开指导老师的身影。老师认真负责、严谨求实的态度十分令人敬佩。每一次我有问题的时候,联系老师,老师都会及时给与我解答,任何的麻烦感觉到了老师这里都轻而易举的被解决掉。老师给与我的建议和意见都使我茅塞顿开,获益匪浅。值此论文定稿之时,我真心的想向我的指导老师表达我心中最最衷心的感谢和最最崇高的敬意。其次,我想要感谢信息学院的全体老师。大学四年的时光里,没有他们的付出我不会有这样大的进步。没有老师们的认真授课,我不会获得这样多的知识与见识。四年里,我给所有的老师添过各种大大小小的麻烦,谢谢老师们不计前嫌,一如既往的无私的帮助。谢谢您!

古人曾说:良师益友利于行。良师和益友都是我们人生中不可缺少的一部分,是我们成长的路上最最宝贵的一大笔财富,所以最后的最后我想感谢这群可爱的同学们。四年时光,说短不短,然而说长不长,但是我仍记得我们一起上过的课,一起吐过的槽,一起吵过的架,一起参加过的比赛,一起晒过的太阳,还有一起吃过的食堂。我们谁也没有辜负这段时光,没有浪费这段光阴,真好!虽然即将分别,再也吃不到那难吃却又便宜的食堂了,再也住不到这么便宜的宿舍,再也不能一起顶着烈日站军姿的时光了,再也没有上课躲着老师偷偷睡过的课了,再也没有。可是,你们的样子却深深地印刻在我的脑海里,虽然以后我们可能山高水长,但是我相信我依然会记得你那阳光般灿烂的容颜和烈日般灿烂的笑容。愿我们一切都好!

由于自己的水平还是非常有限的,毕业设计以及本篇论文完成的可能差强人意,欢迎各位老师提出意见,

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值