毕业论文
题目 springboot 线上线下一体化的宠物交易
院 系:
专 业:
学 号:
姓 名:
指导老师:
2023年 XX月
网络发布信息有其突出的优点,即信息量大,资源丰富,更新速度快等,很符合人们希望以捷、便利的方式获得最多最有效信息的要求。本系统就是一个线上线下一体化的宠物交易,为商家提供一个信息发布的平台,买家来到平台后,可以发布宠物信息,可以进行交易,给广大的买家提供了极大的方便。
本文主要介绍了基于springboot 线上线下一体化的宠物交易,该系统以java为开发语言,myspl为系统数据库,运用当前流行的springboot为主要框架。利用网络高效率、低成本,以及及时更新的特点,为商家提供一个信息发布和交易的平台。
本系统进行测试后,改善了程序逻辑和代码。同时确保系统中所有的程序都能正常运行,所有的功能都能操作,本系统的开发获取宠物交易能够更加方便快捷,同时也使宠物管理系统信息变的更加系统化、有序化。系统界面较友好,易于操作。
关键词:线上线下一体化的宠物交易,Mysql数据库,springboot框架
Publishing information online has its outstanding advantages, such as large amount of information, abundant resources, and fast update speed, which is in line with people's requirements for obtaining the most effective and efficient information in a convenient and convenient way. This system is an integrated online and offline pet trading platform, providing merchants with an information publishing platform. After users come to the platform, they can publish pet information and conduct transactions, providing great convenience for the vast number of users.
This article mainly introduces the online and offline integration of pet trading based on Springboot. The system uses Java as the development language, Myspl as the system database, and the current popular Springboot as the main framework. By utilizing the characteristics of high efficiency, low cost, and timely updates of the network, we provide a platform for merchants to publish information and conduct transactions.
After testing this system, the program logic and code have been improved. At the same time, ensuring that all programs in the system can run normally and all functions can be operated, the development of this system can obtain pet transactions more conveniently and quickly, while also making the pet management system information more systematic and orderly. The system interface is relatively friendly and easy to operate.
Keywords:Online and offline integrated pet trading, MySQL database, springboot framework
目录
1.1 研究背景
近年来,随着生活水平的不断提高与发展,越来越多人喜欢在线上线下一体化的宠物交易查看宠物信息,购买自己喜欢的宠物,将自己喜欢的宠物商品收藏,方便自己进行购买。线上线下一体化的宠物交易对买家和管理员都有很大帮助,在线寻主管理通过和数据库管理系软件协作来实现买家与管理员之间的一个很好的操作平台,基于这一点,设计了一个 springboot线上线下一体化的宠物交易 。
经过对以上的情况进行分析,我们对买家的实际需求进行了详细的分析,指定出了相应的开发计划,为了方便买家在线进行查看宠物信息以及可以在线进行购买商品方面的管理操作,帮助宠物管理员节省很多的管理时间以及可以减少工作量,使得管理工作更加快捷顺利的进行,因此开发设计了该系统。
随着计算机的不断发展,已经融入到我们生活工作的每一个领域中,给我们的生活工作带来了很多的便利,因此,希望可以通过该系统的开发也能使宠物管理实现信息化管理,减轻人的负担,提高工作效率计。
1.2 研究现状
与其他国家相比,我国的软件产业相对落后,在信息化建设方面起步也比较晚,但是随着我国经济的不断发展,以及网络技术的不断提高,我国也在不断的进行软件行业的摸索,也得到了一些成果,我国的软件产业得到了快速的发展,越来越多的软件系统出现在人们的视线中,也逐渐改变着人们生活工作的方式。但是,对于信息化的建设,与很多发达国家相比,由于信息化程度的落后以及经费的不足,我国的线上线下一体化的宠物交易开发方面还是相对落后的,因此,要不断的努力探索,争取开发出一个实用的信息化的宠物管理系统,来实现宠物管理的信息化。因此本课题以宠物为例,目的是开发一个实用的线上线下一体化的宠物交易。
线上线下一体化的宠物交易的开发运用java技术,MIS的总体思想,以及MYSQL、springboot等技术的支持下共同完成了该网站系统的开发,实现了宠物管理的信息化,买家可以有一个非常好的宠物体验,管理员也可以通过该系统进行更加方便的管理操作,实现了之前指定好的计划。
1.3 研究内容
通过对管理员和买家的需求分析,我们将该线上线下一体化的宠物交易的功能逐步进行了添加,然后进行功能分析和检测,而且针对这两方面进行了深入研究探讨,该线上线下一体化的宠物交易主要对开发背景、市场需求、数据库分析、功能模块以及开发技术进行了着重介绍和分析。最后对系统中的功能信息进行测试和分析。本次毕业实现的线上线下一体化的宠物交易,不管是可行性分析、系统整体框架设计还是编码,都需要严格遵守软件开发的三个周期八个阶段,在该系统的开发过程中,要保证系统具有良好的时效性、易安装性以及稳定性。在代码编写时一定要按照要求进行,让代码编写看起来更美观,开发出一个便于买家的使用的线上线下一体化的宠物交易是本次开发的主要目标。在系统完成之后,利用电脑来将系统进行安置,并且买家可以通过电脑随时进行线上线下一体化的宠物交易。此次在线上线下一体化的宠物交易的开发中,对系统要进行可行性分析、系统需求分析等基本分析,并且完成系统的部署和测试,在这些功能都实现之后,通过电脑进行操作系统。系统规划分析中,需要按照以下所示的技术路线。
2.1 开发技术说明
本系统前端部分基于MVVM模式进行开发,采用B/S模式,后端部分基于Java的springboot框架进行开发。
前端部分:前端框架采用了比较流行的渐进式JavaScript框架Vue.js。使用Vue-Router和Vuex实现动态路由和全局状态管理,Ajax实现前后端通信,Element UI组件库使页面快速成型,项目前端通过栅格布局实现响应式,可适应PC端、平板端、手机端等不同屏幕大小尺寸的完美布局展示。
后端部分:采用springboot作为开发框架,同时集成MyBatis、Redis等相关技术。
2.2 B/S体系工作原理
B/S架构采取浏览器请求,服务器响应的工作模式。
买家可以通过浏览器去访问Internet上由Web服务器产生的文本、数据、图片、动画、视频点播和声音等信息;
而每一个Web服务器又可以通过各种方式与数据库服务器连接,大量的数据实际存放在数据库服务器中;
从Web服务器上下载程序到本地来执行,在下载过程中若遇到与数据库有关的指令,由Web服务器交给数据库服务器来解释执行,并返回给Web服务器,Web服务器又返回给买家。在这种结构中,将许许多多的网连接到一块,形成一个巨大的网,即全球网。而各个企业可以在此结构的基础上建立自己的Internet。
在 B/S 模式中,买家是通过浏览器针对许多分布于网络上的服务器进行请求访问的,浏览器的请求通过服务器进行处理,并将处理结果以及相应的信息返回给浏览器,其他的数据加工、请求全部都是由Web Server完成的。通过该框架结构以及植入于操作系统内部的浏览器,该结构已经成为了当今软件应用的主流结构模式。
2.3 spring boot框架介绍
Spring框架是Java平台上的一种开源应用框架,提供具有控制反转特性的容器。尽管Spring框架自身对编程模型没有限制,但其在Java应用中的频繁使用让它备受青睐,以至于后来让它作为EJB(EnterpriseJavaBeans)模型的补充,甚至是替补。Spring框架为开发提供了一系列的解决方案,比如利用控制反转的核心特性,并通过依赖注入实现控制反转来实现管理对象生命周期容器化,利用面向切面编程进行声明式的事务管理,整合多种持久化技术管理数据访问,提供大量优秀的Web框架方便开发等等。Spring框架具有控制反转(IOC)特性,IOC旨在方便项目维护和测试,它提供了一种通过Java的反射机制对Java对象进行统一的配置和管理的方法。Spring框架利用容器管理对象的生命周期,容器可以通过扫描XML文件或类上特定Java注解来配置对象,开发者可以通过依赖查找或依赖注入来获得对象。Spring框架具有面向切面编程(AOP)框架,SpringAOP框架基于代理模式,同时运行时可配置;AOP框架主要针对模块之间的交叉关注点进行模块化。Spring框架的AOP框架仅提供基本的AOP特性,虽无法与AspectJ框架相比,但通过与AspectJ的集成,也可以满足基本需求。Spring框架下的事务管理、远程访问等功能均可以通过使用SpringAOP技术实现。Spring的事务管理框架为Java平台带来了一种抽象机制,使本地和全局事务以及嵌套事务能够与保存点一起工作,并且几乎可以在Java平台的任何环境中工作。Spring集成多种事务模板,系统可以通过事务模板、XML或Java注解进行事务配置,并且事务框架集成了消息传递和缓存等功能。Spring的数据访问框架解决了开发人员在应用程序中使用数据库时遇到的常见困难。它不仅对Java:JDBC、iBATS/MyBATIs、Hibernate、Java数据对象(JDO)、ApacheOJB和ApacheCayne等所有流行的数据访问框架中提供支持,同时还可以与Spring的事务管理一起使用,为数据访问提供了灵活的抽象。Spring框架最初是没有打算构建一个自己的WebMVC框架,其开发人员在开发过程中认为现有的StrutsWeb框架的呈现层和请求处理层之间以及请求处理层和模型之间的分离不够,于是创建了SpringMVC。
2.4 MySQL简介
MySQL是一个开放的、快速的、多线程的SQL关系型数据库服务器。由于其体积小、免费、运行速度快以及可以通过相关免费的软件来对MySql数据库中的相关数据结构信息等等优点。受广大中等、小型企业所喜爱并占据了很大地位。本系统在数据库方面选用MySQL,并通过Nacivat来进行MySql数据库的管理。在Mysql的安装过程中,最需要注意的就是数据库的编码问题,所以在安装数据库时需要设置数据库的编码为Utf-8,与前台页面和服务器的编码相一致。
2.5 JavaScript 运行模式
JavaScript是一种属于网络的高级脚本语言,已经被广泛用于Web应用开发,常用来为网页添加各式各样的动态功能,为买家提供更流畅美观的浏览效果。通常JavaScript脚本是通过嵌入在HTML中来实现自身的功能的。
1.1是一种解释性脚本语言(代码不进行预编译)。
1.2主要用来向HTML(标准通用标记语言下的一个应用)页面添加交互行为。
1.3可以直接嵌入HTML页面,但写成单独的js文件有利于结构和行为的分离。
1.4跨平台特性,在绝大多数浏览器的支持下,可以在多种平台下运行(如Windows、Linux、Mac、Android、iOS等)。
1.5 JavaScript脚本语言同其他语言一样,有它自身的基本数据类型,表达式和算术运算符及程序的基本程序框架。JavaScript提供了四种基本的数据类型和两种特殊数据类型用来处理数据和文字。而变量提供存放信息的地方,表达式则可以完成较复杂的信息处理。
通过对系统功能模块分析可以得知,主要是对项目元素组合、分解和更换做出相应的单元,再通过系统模块来规划出一个原则,系统的设计首先是围绕管理员需求进行开发设计的,主要是为了能够更好的管理信息和服务于买家,其次就是围绕线上线下一体化的宠物交易进行设计,最终的设计必须要满足管理员和买家的需求,这样才能够实现系统的最大意义和价值,并且在设计的时候一定要避免代码相互重复的情况发生。
3.1 可行性分析
可行性分析是每开发一个项目必不可少的一部分,可行性分析可以直接影响一个系统的存活问题,针对开发意义进行分析,还有就是是否可以通过所开发的系统来弥补传统线上线下一体化的宠物交易模式的不足,是否能够更好的解决线上线下一体化的宠物交易问题等,通过对该线上线下一体化的宠物交易的开发设计,不仅能够逐步减少工作人员的工作量,而且还可以进行高效工作和管理。所以该系统的开发实现了最大的意义和价值,在系统完成后,利益是否大过于成本,是否能够达到预期效果,这些方面都要进行可行性分析,再通过分析之后,就可以决定是否开发此系统。该线上线下一体化的宠物交易的开发设计中,以下几点进行了可行性分析:技术可行性:通过Java技术的采用,由于该技术不断成熟,所以使用该技术设计线上线下一体化的宠物交易是具有可行性的。经济可行性:在开发过程中,系统完成后的利益是否大过于开发成本。操作可行性:线上线下一体化的宠物交易的开发设计中,方便买家的可操作性和实用性。
3.1.1 技术可行性
由于Java技术的不断成熟,所以它在本次线上线下一体化的宠物交易中是非常重要的,该系统的开发主要是基于服务端采用Java 、B/S结构和mysql数据库进行开发设计的。通过对这些技术进行使用,从而保证了系统的完整性和简单性。并且在数据库中保证数据的安全性和稳定性。在校时间我们对Java语言技术和mysql数据库技术进行了学习和交流,并且对软件测试也是简单的了解,然后根据这些销售方式我们可以做出一个简单的系统开发、检验和辨别。通过Java技术和Mysql数据库的相互配合开发出一个高效、稳定的线上线下一体化的宠物交易。
(1)轻量级系统,使用灵活:线上线下一体化的宠物交易,设计时,考虑到不同使用者的习惯,让系统比较轻量级,便于安装,也完成了系统所具备的所有功能,在以上基础上,通过系统测试与优化,让操作更加灵活。
(2)系统开发0成本:该线上线下一体化的宠物交易,以开源的Windows 7 操作系统为基础,采用Java技术编码开发,并使用MySQL轻量级数据库,没有多余的开发成本。
(3)覆盖范围:任何城市,都能安装使用本次设计的线上线下一体化的宠物交易,对系统使用方没有严格的规定,平台搭建好了就能使用。
3.1.2 经济可行性
通过经济效益和社会价值来决定一个系统的存活问题,是否通过开发线上线下一体化的宠物交易来帮助管理员减少工作,是否能够方便买家的使用,假如开发的软件不能够实现成本节约和资源节约,并且还要投入大量的时间、经济和精力,那么这个系统的开发设计是没有意义和价值的,就不具备开发设计的条件。
3.1.3 操作可行性
此次开发的线上线下一体化的宠物交易登录界面是我们最常见的一种登录窗口进行造成的,只需通过电脑就可以登录访问,没有那些复杂的登录过程。该线上线下一体化的宠物交易主要是采用B/S结构、Java语言技术以及mysql数据库进行开发设计的,使得系统的开发更高效和稳定,也体现出来该系统的的现代化和规范化。买家可以轻松的进行学习,其系统主要特点就是易操作和易管理。
3.2 系统性能分析
1.系统功能完整性:根据系统每一个功能模块,都能够设计出当初的算法和代码,买家信息主要是以文字和表格的模式进行介绍。
2.系统运行分析:系统中的每一个功能都要有相应的代码和编写数据的关系。系统的物理的数据主要是通过需求分析和可行性分析进行分析和显示的。
3.界面设计:系统中的软件都是由不同的代码来进行处理和分析的,并且保证了系统界面的易操作性能。
4.安全分析:不同的角色要有不同的信息,所以我们登录系统时必须要使用自己的账号和密码进行登录,不能随意进行操作,这样才可以保证系统的安全性。
3.3 系统功能需求分析
任务需求分析是每个系统开发设计必不可少的一部分,系统质量的好坏可以直接影响系统的存活问题,所以我们必须要将任务需求分析做到位,线上线下一体化的宠物交易的设计在初期的分析是尤为重要的,通过任务分析可以更顺利的进行系统设计,并且保证了买家的满意度。
(1)买家界面功能表
买家进入系统可以查看首页、模块管理(商城订单、私聊管理、售后服务)、个人中心操作。买家用例图如图3-1所示。
![](https://i-blog.csdnimg.cn/blog_migrate/47652606411b3ce0a3f41e195bf1a1b8.png)
图3-1 买家界面表
管理员登陆后,主要功能模块包括首页、轮播图(轮播图管理)、公告栏管理(公告栏)、系统用户(管理员、商家、买家)、模块管理(商品分类、宠物商城、商城订单、优惠活动、私聊管理、售后服务)、个人中心等功能如图3-2所示。
![](https://i-blog.csdnimg.cn/blog_migrate/f980b3e8d5626133b18ec1ff24675a4d.png)
图3-4 管理员功能表
(3)商家界面功能表
商家进入系统可以查看首页、模块管理:(宠物商城、商城订单、优惠活动、私聊管理、售后服务)、个人中心操作。商家用例图如图3-1所示。
![](https://i-blog.csdnimg.cn/blog_migrate/cc23bd836993cb613a9d32cd2275f76e.png)
图3-1 商家界面表
3.4 系统操作流程
3.4.1买家登录流程
对于系统的安全性的第一关,就是买家想要进入系统,必须通过登录窗口,输入自己的登录信息才可以进行登录,买家输入的信息准确无误后才可以进入到操作系统界面,进行功能模块的相对应操作,如果买家输入的信息不正确,则窗口出现提示框,买家登录失败,返回到第一步进行重新输入,如图3-1所示。
![](https://i-blog.csdnimg.cn/blog_migrate/582841c3f45f68b43a2d700ae925dfcb.png)
图3-1登录操作流程图
3.4.2信息添加流程
对于线上线下一体化的宠物交易,需要随时添加所需要的数据信息,对于买家添加信息,需要根据添加界面,根据选框的内容进行填写所要添加的数据信息,信息输入完成后判断数据信息是否符合要求,符合要求则添加完成,买家所添加的信息不符合要求,则需要返回到第一步,重新输入数据信息,再进行判断操作,如图3-2所示。
![](https://i-blog.csdnimg.cn/blog_migrate/ee3499f6571a3e72af458b4f19bc854e.png)
图3-2 信息添加流程图
3.4.3信息删除流程
不管是哪个买家角色进入到不通的系统操作界面,都可以进行不同的信息内容的操作功能,对用系统数据信息的删除,买家一旦将信息删除,那么该删除的数据信息将无法恢复,所以买家在对数据删除事,一定判断删除的内容是否是确定要删除的,确定无误后选择确定删除操作,如图3-3所示。
![](https://i-blog.csdnimg.cn/blog_migrate/ca18a776a334a401a17091e0cd30e00d.png)
图3-3 信息删除流程图
第四章 系统设计
4.1 系统的功能结构图
通过系统需求分析,该线上线下一体化的宠物交易的设计与实现功能结构图如图4-1所示:
![](https://i-blog.csdnimg.cn/blog_migrate/4ec800e66ffc5bedf4956bf0014f56fa.png)
图4-1 系统结构图
4.2 数据库概念结构设计
4.2.1 数据库E-R图
数据库是整个软件编程中最重要的一个步骤,对于数据库问题主要是判定数据库的数量和结构公式的创建。展示系统使用的是Mysql进行对数据库进行管理,进行保证数据的安全性、稳定性等。
概念模型的设计是为了抽象真实世界的信息,并对信息世界进行建模。它是数据库设计的强大工具。数据库概念模型设计可以通过E-R图描述现实世界的概念模型。系统的E-R图显示了系统中实体之间的链接。而且Mysql数据库是自我保护能力比较强的数据库,下图主要是对数据库实体的E-R图:
本系统图设计,如下图所示。
![](https://i-blog.csdnimg.cn/blog_migrate/aa15b2364abeebf891e3ab14a9aaf300.png)
图4-7系统E-R图
4.2.2 数据库逻辑结构设计
数据库的主要功能就是对相关信息就行存储,通过某种计算进行数据储存,其数据库的数据存储是井井有条的。并且其中的数据具有一定的独立性和安全性。通过对系统功能设计的要求和功能模块的规划,该线上线下一体化的宠物交易的设计与实现设计到了多个数据表。以下信息是介绍数据库表的设计结构以及功能建立数据库表:
表access_token (登陆访问时长)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | token_id | int | 10 | 0 | N | Y | 临时访问牌ID | |
2 | token | varchar | 64 | 0 | Y | N | 临时访问牌 | |
3 | info | text | 65535 | 0 | Y | N | ||
4 | maxage | int | 10 | 0 | N | N | 2 | 最大寿命:默认2小时 |
5 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
6 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间: |
7 | user_id | int | 10 | 0 | N | N | 0 | 用户编号: |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | after_sale_service_id | int | 10 | 0 | N | Y | 售后服务ID | |
2 | order_number | varchar | 64 | 0 | Y | N | 订单编号 | |
3 | product_name | varchar | 64 | 0 | Y | N | 商品名称 | |
4 | product_type | varchar | 64 | 0 | Y | N | 商品类型 | |
5 | merchant_users | int | 10 | 0 | Y | N | 0 | 商家用户 |
6 | purchasing_users | int | 10 | 0 | Y | N | 0 | 购买用户 |
7 | number_of_purchases | int | 10 | 0 | Y | N | 0 | 购买数 |
8 | problem_description | varchar | 64 | 0 | Y | N | 问题描述 | |
9 | examine_state | varchar | 16 | 0 | N | N | 未审核 | 审核状态 |
10 | examine_reply | varchar | 16 | 0 | Y | N | 审核回复 | |
11 | recommend | int | 10 | 0 | N | N | 0 | 智能推荐 |
12 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
13 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | auth_id | int | 10 | 0 | N | Y | 授权ID: | |
2 | user_group | varchar | 64 | 0 | Y | N | 用户组: | |
3 | mod_name | varchar | 64 | 0 | Y | N | 模块名: | |
4 | table_name | varchar | 64 | 0 | Y | N | 表名: | |
5 | page_title | varchar | 255 | 0 | Y | N | 页面标题: | |
6 | path | varchar | 255 | 0 | Y | N | 路由路径: | |
7 | position | varchar | 32 | 0 | Y | N | 位置: | |
8 | mode | varchar | 32 | 0 | N | N | _blank | 跳转方式: |
9 | add | tinyint | 3 | 0 | N | N | 1 | 是否可增加: |
10 | del | tinyint | 3 | 0 | N | N | 1 | 是否可删除: |
11 | set | tinyint | 3 | 0 | N | N | 1 | 是否可修改: |
12 | get | tinyint | 3 | 0 | N | N | 1 | 是否可查看: |
13 | field_add | text | 65535 | 0 | Y | N | 添加字段: | |
14 | field_set | text | 65535 | 0 | Y | N | 修改字段: | |
15 | field_get | text | 65535 | 0 | Y | N | 查询字段: | |
16 | table_nav_name | varchar | 500 | 0 | Y | N | 跨表导航名称: | |
17 | table_nav | varchar | 500 | 0 | Y | N | 跨表导航: | |
18 | option | text | 65535 | 0 | Y | N | 配置: | |
19 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
20 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间: |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | business_id | int | 10 | 0 | N | Y | 商家ID | |
2 | merchant_store_name | varchar | 64 | 0 | Y | N | 商家店名 | |
3 | merchant_location | varchar | 64 | 0 | Y | N | 商家位置 | |
4 | examine_state | varchar | 16 | 0 | N | N | 已通过 | 审核状态 |
5 | recommend | int | 10 | 0 | N | N | 0 | 智能推荐 |
6 | user_id | int | 10 | 0 | N | N | 0 | 用户ID |
7 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
8 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | buyer_id | int | 10 | 0 | N | Y | 买家ID | |
2 | full_name | varchar | 64 | 0 | Y | N | 姓名 | |
3 | gender | varchar | 64 | 0 | Y | N | 性别 | |
4 | examine_state | varchar | 16 | 0 | N | N | 已通过 | 审核状态 |
5 | recommend | int | 10 | 0 | N | N | 0 | 智能推荐 |
6 | user_id | int | 10 | 0 | N | N | 0 | 用户ID |
7 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
8 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | collect_id | int | 10 | 0 | N | Y | 收藏ID: | |
2 | user_id | int | 10 | 0 | N | N | 0 | 收藏人ID: |
3 | source_table | varchar | 255 | 0 | Y | N | 来源表: | |
4 | source_field | varchar | 255 | 0 | Y | N | 来源字段: | |
5 | source_id | int | 10 | 0 | N | N | 0 | 来源ID: |
6 | title | varchar | 255 | 0 | Y | N | 标题: | |
7 | img | varchar | 255 | 0 | Y | N | 封面: | |
8 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
9 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间: |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | comment_id | int | 10 | 0 | N | Y | 评论ID: | |
2 | user_id | int | 10 | 0 | N | N | 0 | 评论人ID: |
3 | reply_to_id | int | 10 | 0 | N | N | 0 | 回复评论ID:空为0 |
4 | content | longtext | 2147483647 | 0 | Y | N | 内容: | |
5 | nickname | varchar | 255 | 0 | Y | N | 昵称: | |
6 | avatar | varchar | 255 | 0 | Y | N | 头像地址:[0,255] | |
7 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
8 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间: |
9 | source_table | varchar | 255 | 0 | Y | N | 来源表: | |
10 | source_field | varchar | 255 | 0 | Y | N | 来源字段: | |
11 | source_id | int | 10 | 0 | N | N | 0 | 来源ID: |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | hits_id | int | 10 | 0 | N | Y | 点赞ID: | |
2 | user_id | int | 10 | 0 | N | N | 0 | 点赞人: |
3 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
4 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间: |
5 | source_table | varchar | 255 | 0 | Y | N | 来源表: | |
6 | source_field | varchar | 255 | 0 | Y | N | 来源字段: | |
7 | source_id | int | 10 | 0 | N | N | 0 | 来源ID: |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | mall_orders_id | int | 10 | 0 | N | Y | 商城订单ID | |
2 | order_number | varchar | 64 | 0 | Y | N | 订单编号 | |
3 | product_number | varchar | 64 | 0 | Y | N | 商品编号 | |
4 | product_name | varchar | 64 | 0 | Y | N | 商品名称 | |
5 | product_type | varchar | 64 | 0 | Y | N | 商品类型 | |
6 | commodity_price | int | 10 | 0 | Y | N | 0 | 商品价格 |
7 | merchant_users | int | 10 | 0 | Y | N | 0 | 商家用户 |
8 | merchant_store_name | varchar | 64 | 0 | Y | N | 商家店名 | |
9 | merchant_location | varchar | 64 | 0 | Y | N | 商家位置 | |
10 | purchasing_users | int | 10 | 0 | Y | N | 0 | 购买用户 |
11 | number_of_purchases | int | 10 | 0 | Y | N | 0 | 购买数 |
12 | total_price | varchar | 64 | 0 | Y | N | 合计价格 | |
13 | contact_number | varchar | 64 | 0 | Y | N | 联系电话 | |
14 | pay_state | varchar | 16 | 0 | N | N | 未支付 | 支付状态 |
15 | pay_type | varchar | 16 | 0 | Y | N | 支付类型: 微信、支付宝、网银 | |
16 | recommend | int | 10 | 0 | N | N | 0 | 智能推荐 |
17 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
18 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | notice_id | mediumint | 8 | 0 | N | Y | 公告id: | |
2 | title | varchar | 125 | 0 | N | N | 标题: | |
3 | content | longtext | 2147483647 | 0 | Y | N | 正文: | |
4 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
5 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间: |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | pet_mall_id | int | 10 | 0 | N | Y | 宠物商城ID | |
2 | product_number | varchar | 64 | 0 | N | N | 商品编号 | |
3 | product_name | varchar | 64 | 0 | Y | N | 商品名称 | |
4 | product_cover | varchar | 255 | 0 | Y | N | 商品封面 | |
5 | product_type | varchar | 64 | 0 | Y | N | 商品类型 | |
6 | commodity_price | int | 10 | 0 | Y | N | 0 | 商品价格 |
7 | product_video | varchar | 255 | 0 | Y | N | 商品视频 | |
8 | inventory_of_goods | int | 10 | 0 | Y | N | 0 | 商品库存 |
9 | merchant_users | int | 10 | 0 | Y | N | 0 | 商家用户 |
10 | merchant_store_name | varchar | 64 | 0 | Y | N | 商家店名 | |
11 | merchant_location | varchar | 64 | 0 | Y | N | 商家位置 | |
12 | product_details | longtext | 2147483647 | 0 | Y | N | 商品详情 | |
13 | hits | int | 10 | 0 | N | N | 0 | 点击数 |
14 | praise_len | int | 10 | 0 | N | N | 0 | 点赞数 |
15 | recommend | int | 10 | 0 | N | N | 0 | 智能推荐 |
16 | location_address | varchar | 64 | 0 | Y | N | 当前位置 | |
17 | location_lng | varchar | 64 | 0 | Y | N | 当前位置经度 | |
18 | location_lat | varchar | 64 | 0 | Y | N | 当前位置纬度 | |
19 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
20 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | praise_id | int | 10 | 0 | N | Y | 点赞ID: | |
2 | user_id | int | 10 | 0 | N | N | 0 | 点赞人: |
3 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
4 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间: |
5 | source_table | varchar | 255 | 0 | Y | N | 来源表: | |
6 | source_field | varchar | 255 | 0 | Y | N | 来源字段: | |
7 | source_id | int | 10 | 0 | N | N | 0 | 来源ID: |
8 | status | bit | 1 | 0 | N | N | 1 | 点赞状态:1为点赞,0已取消 |
表private_chat_management (私聊管理)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | private_chat_management_id | int | 10 | 0 | N | Y | 私聊管理ID | |
2 | product_number | varchar | 64 | 0 | Y | N | 商品编号 | |
3 | product_name | varchar | 64 | 0 | Y | N | 商品名称 | |
4 | message_date | date | 10 | 0 | Y | N | 留言日期 | |
5 | merchant_users | int | 10 | 0 | Y | N | 0 | 商家用户 |
6 | buyer | int | 10 | 0 | Y | N | 0 | 购买人 |
7 | message_information | varchar | 64 | 0 | Y | N | 留言信息 | |
8 | reply_to_message | varchar | 64 | 0 | Y | N | 回复信息 | |
9 | recommend | int | 10 | 0 | N | N | 0 | 智能推荐 |
10 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
11 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
表product_classification (商品分类)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | product_classification_id | int | 10 | 0 | N | Y | 商品分类ID | |
2 | product_type | varchar | 64 | 0 | Y | N | 商品类型 | |
3 | recommend | int | 10 | 0 | N | N | 0 | 智能推荐 |
4 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
5 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
表promotional_activities (优惠活动)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | promotional_activities_id | int | 10 | 0 | N | Y | 优惠活动ID | |
2 | activity_no | varchar | 64 | 0 | N | N | 活动编号 | |
3 | activity_name | varchar | 64 | 0 | Y | N | 活动名称 | |
4 | activity_time | date | 10 | 0 | Y | N | 活动时间 | |
5 | publish_merchant | int | 10 | 0 | Y | N | 0 | 发布商户 |
6 | venue | varchar | 64 | 0 | Y | N | 活动地点 | |
7 | activity_cover | varchar | 255 | 0 | Y | N | 活动封面 | |
8 | event_details | longtext | 2147483647 | 0 | Y | N | 活动详情 | |
9 | hits | int | 10 | 0 | N | N | 0 | 点击数 |
10 | praise_len | int | 10 | 0 | N | N | 0 | 点赞数 |
11 | recommend | int | 10 | 0 | N | N | 0 | 智能推荐 |
12 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
13 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | slides_id | int | 10 | 0 | N | Y | 轮播图ID: | |
2 | title | varchar | 64 | 0 | Y | N | 标题: | |
3 | content | varchar | 255 | 0 | Y | N | 内容: | |
4 | url | varchar | 255 | 0 | Y | N | 链接: | |
5 | img | varchar | 255 | 0 | Y | N | 轮播图: | |
6 | hits | int | 10 | 0 | N | N | 0 | 点击量: |
7 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
8 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间: |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | upload_id | int | 10 | 0 | N | Y | 上传ID | |
2 | name | varchar | 64 | 0 | Y | N | 文件名 | |
3 | path | varchar | 255 | 0 | Y | N | 访问路径 | |
4 | file | varchar | 255 | 0 | Y | N | 文件路径 | |
5 | display | varchar | 255 | 0 | Y | N | 显示顺序 | |
6 | father_id | int | 10 | 0 | Y | N | 0 | 父级ID |
7 | dir | varchar | 255 | 0 | Y | N | 文件夹 | |
8 | type | varchar | 32 | 0 | Y | N | 文件类型 |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | user_id | mediumint | 8 | 0 | N | Y | 用户ID:[0,8388607]用户获取其他与用户相关的数据 | |
2 | state | smallint | 5 | 0 | N | N | 1 | 账户状态:[0,10](1可用|2异常|3已冻结|4已注销) |
3 | user_group | varchar | 32 | 0 | Y | N | 所在用户组:[0,32767]决定用户身份和权限 | |
4 | login_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 上次登录时间: |
5 | phone | varchar | 11 | 0 | Y | N | 手机号码:[0,11]用户的手机号码,用于找回密码时或登录时 | |
6 | phone_state | smallint | 5 | 0 | N | N | 0 | 手机认证:[0,1](0未认证|1审核中|2已认证) |
7 | username | varchar | 16 | 0 | N | N | 用户名:[0,16]用户登录时所用的账户名称 | |
8 | nickname | varchar | 16 | 0 | Y | N | 昵称:[0,16] | |
9 | password | varchar | 64 | 0 | N | N | 密码:[0,32]用户登录所需的密码,由6-16位数字或英文组成 | |
10 | | varchar | 64 | 0 | Y | N | 邮箱:[0,64]用户的邮箱,用于找回密码时或登录时 | |
11 | email_state | smallint | 5 | 0 | N | N | 0 | 邮箱认证:[0,1](0未认证|1审核中|2已认证) |
12 | avatar | varchar | 255 | 0 | Y | N | 头像地址:[0,255] | |
13 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | group_id | mediumint | 8 | 0 | N | Y | 用户组ID:[0,8388607] | |
2 | display | smallint | 5 | 0 | N | N | 100 | 显示顺序:[0,1000] |
3 | name | varchar | 16 | 0 | N | N | 名称:[0,16] | |
4 | description | varchar | 255 | 0 | Y | N | 描述:[0,255]描述该用户组的特点或权限范围 | |
5 | source_table | varchar | 255 | 0 | Y | N | 来源表: | |
6 | source_field | varchar | 255 | 0 | Y | N | 来源字段: | |
7 | source_id | int | 10 | 0 | N | N | 0 | 来源ID: |
8 | register | smallint | 5 | 0 | Y | N | 0 | 注册位置: |
9 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
10 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间: |
第五章 系统功能实现
线上线下一体化的宠物交易,在系统首页可以查看公告栏、导航地图、宠物商城、优惠活动、注册登录以及站内搜索等内容,
如图5-1所示。
![](https://i-blog.csdnimg.cn/blog_migrate/f504888bc028628f3884726dc8ae4563.png)
图5-1系统功能界面图
注册,在注册页面通过填写买家名、密码、姓名、昵称、身份、手机号、邮箱等内容进行注册,如图5-2所示。
![](https://i-blog.csdnimg.cn/blog_migrate/724d95f34fc67b9783b096ca83b8fbb0.png)
图5-2买家注册界面图
注册代码如下:
/**
* 注册
* @param user
* @return
*/
@PostMapping("register")
public Map<String, Object> signUp(@RequestBody User user) {
// 查询买家
Map<String, String> query = new HashMap<>();
query.put("username",user.getUsername());
List list = service.select(query, new HashMap<>()).getResultList();
if (list.size()>0){
return error(30000, "买家已存在");
}
user.setUserId(null);
user.setPassword(service.encryption(user.getPassword()));
service.save(user);
return success(1);
}
/**
* 买家ID:[0,8388607]买家获取其他与买家相关的数据
*/
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
@Column(name = "user_id")
private Integer userId;
/**
* 账户状态:[0,10](1可用|2异常|3已冻结|4已注销)
*/
@Basic
@Column(name = "state")
private Integer state;
/**
* 所在买家组:[0,32767]决定买家身份和权限
*/
@Basic
@Column(name = "user_group")
private String userGroup;
/**
* 上次登录时间:
*/
@Basic
@Column(name = "login_time")
private Timestamp loginTime;
/**
* 手机号码:[0,11]买家的手机号码,用于找回密码时或登录时
*/
@Basic
@Column(name = "phone")
private String phone;
/**
* 手机认证:[0,1](0未认证|1审核中|2已认证)
*/
@Basic
@Column(name = "phone_state")
private Integer phoneState;
/**
* 买家名:[0,16]买家登录时所用的账户名称
*/
@Basic
@Column(name = "username")
private String username;
/**
* 昵称:[0,16]
*/
@Basic
@Column(name = "nickname")
private String nickname;
/**
* 密码:[0,32]买家登录所需的密码,由6-16位数字或英文组成
*/
@Basic
@Column(name = "password")
private String password;
/**
* 邮箱:[0,64]买家的邮箱,用于找回密码时或登录时
*/
@Basic
@Column(name = "email")
private String email;
/**
* 邮箱认证:[0,1](0未认证|1审核中|2已认证)
*/
@Basic
@Column(name = "email_state")
private Integer emailState;
/**
* 头像地址:[0,255]
*/
@Basic
@Column(name = "avatar")
private String avatar;
/**
* 创建时间:
*/
@Basic
@Column(name = "create_time")
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private Timestamp createTime;
@Basic
@Transient
private String code;
}
宠物商城,在宠物商城页面查看商品编号、商品价格、商家用户、商品名称、商品视频、商家店面、商品类型、商品库存、商家位置等信息并可根据需要购买、点赞、收藏,如图5-3所示。
![](https://i-blog.csdnimg.cn/blog_migrate/4b773248aeb240d9384299fd0eee3901.png)
图5-3宠物商城界面图
宠物商城代码如下:
@SpringBootApplication
@EnableJpaRepositories
public class Application {
public static void main(String[] args) {
SpringApplication.run(Application.class,args);
}
}
管理员登录,通过填写注册时输入的买家名、密码、权限、验证码进行登录,如图5-4所示。
![](https://i-blog.csdnimg.cn/blog_migrate/9bb1fdbeaa618c109db359d467f60524.png)
图5-4管理员登录界面图
登录代码如下:
/**
* 登录
* @param data
* @param httpServletRequest
* @return
*/
@PostMapping("login")
public Map<String, Object> login(@RequestBody Map<String, String> data, HttpServletRequest httpServletRequest) {
log.info("[执行登录接口]");
String username = data.get("username");
String email = data.get("email");
String phone = data.get("phone");
String password = data.get("password");
List resultList = null;
Map<String, String> map = new HashMap<>();
if(username != null && "".equals(username) == false){
map.put("username", username);
resultList = service.select(map, new HashMap<>()).getResultList();
}
else if(email != null && "".equals(email) == false){
map.put("email", email);
resultList = service.select(map, new HashMap<>()).getResultList();
}
else if(phone != null && "".equals(phone) == false){
map.put("phone", phone);
resultList = service.select(map, new HashMap<>()).getResultList();
}else{
return error(30000, "账号或密码不能为空");
}
if (resultList == null || password == null) {
return error(30000, "账号或密码不能为空");
}
//判断是否有这个买家
if (resultList.size()<=0){
return error(30000,"买家不存在");
}
User byUsername = (User) resultList.get(0);
Map<String, String> groupMap = new HashMap<>();
groupMap.put("name",byUsername.getUserGroup());
List groupList = userGroupService.select(groupMap, new HashMap<>()).getResultList();
if (groupList.size()<1){
return error(30000,"买家组不存在");
}
UserGroup userGroup = (UserGroup) groupList.get(0);
//查询买家审核状态
if (!StringUtils.isEmpty(userGroup.getSourceTable())){
String sql = "select examine_state from "+ userGroup.getSourceTable() +" WHERE user_id = " + byUsername.getUserId();
String res = String.valueOf(service.runCountSql(sql).getSingleResult());
if (res==null){
return error(30000,"买家不存在");
}
if (!res.equals("已通过")){
return error(30000,"该买家审核未通过");
}
}
//查询买家状态
if (byUsername.getState()!=1){
return error(30000,"买家非可用状态,不能登录");
}
String md5password = service.encryption(password);
if (byUsername.getPassword().equals(md5password)) {
// 存储Token到数据库
AccessToken accessToken = new AccessToken();
accessToken.setToken(UUID.randomUUID().toString().replaceAll("-", ""));
accessToken.setUser_id(byUsername.getUserId());
tokenService.save(accessToken);
// 返回买家信息
JSONObject user = JSONObject.parseObject(JSONObject.toJSONString(byUsername));
user.put("token", accessToken.getToken());
JSONObject ret = new JSONObject();
ret.put("obj",user);
return success(ret);
} else {
return error(30000, "账号或密码不正确");
}
}
管理员登录进入线上线下一体化的宠物交易可以查看首页、轮播图(轮播图管理)、公告栏管理(公告栏)、系统用户(管理员、商家、买家)、模块管理(商品分类、宠物商城、商城订单、优惠活动、私聊管理、售后服务)、个人中心等信息,如图5-5所示。
![](https://i-blog.csdnimg.cn/blog_migrate/684d3026706865fdd1565664e622b924.png)
图5-5管理员功能界面图
轮播图管理,在轮播图管理列表可以查看标题、封面图、标题等详情操作。图5-6所示。
![](https://i-blog.csdnimg.cn/blog_migrate/6ccf02105a349125470831deac98d2fc.png)
图5-6轮播图管理界面图
公告栏管理,在公告栏管理添加页面通过标题等信息,并进行添加、删除等操作,图5-7所示。。
![](https://i-blog.csdnimg.cn/blog_migrate/c463995a18d651f1777978dab00a35fc.png)
图5-7公告栏管理界面图
系统用户管理,在系统用户管理添加页面通过昵称、用户名、姓名、性别、买家年龄等信息,并进行添加、删除等操作,图5-8所示。。
![](https://i-blog.csdnimg.cn/blog_migrate/9c80ba40d10bf3ed08c9b6b84a268098.png)
图5-8系统用户管理界面图
商品分类管理,在商品分类管理添加页面通过商品类型等信息,并进行查添加、删除等操作,图5-9所示。
![](https://i-blog.csdnimg.cn/blog_migrate/aa2f66fff35f5ba45454006661227cf8.png)
图5-9商品分类管理界面图
买家进入在系统首页可以查看首页、模块管理(商城订单、私聊管理、售后服务)、个人中心内容,如图5-10所示。
![](https://i-blog.csdnimg.cn/blog_migrate/16d89e295c9dbc549bff3ffe7cf8473d.png)
图5-10买家功能界面图
商城订单管理,在商城订单管理添加页面通过订单编号、商品编号、商品名称、商品类型、商品价格、商家用户、商家店名、商家位置等信息,并进行售后、支付、添加、删除等操作,图5-11所示。
![](https://i-blog.csdnimg.cn/blog_migrate/76cd89155cb22bbddd390363b4632923.png)
图5-11商城订单管理界面图
售后服务管理,在售后服务管理添加页面通过订单编号、商品名称、商品类型、商家用户、购买用户、购买数量、问题描述、审核状态等信息,并进行查询、添加、删除等操作,图5-12所示。。
![](https://i-blog.csdnimg.cn/blog_migrate/5b2f6b3cd5a965070e4b9797e8e6046c.png)
图5-12售后服务管理界面图
商家进入在系统首页可以查看首页、模块管理:(宠物商城、商城订单、优惠活动、私聊管理、售后服务)、个人中心等内容,如图5-13所示。
![](https://i-blog.csdnimg.cn/blog_migrate/3ba0b81d58823328cdc1d3b40ee4e3e0.png)
图5-13商家功能界面图
优惠活动管理,在优惠活动管理添加页面通过活动时间、活动名称、活动时间、发布商户、活动地点、活动封面等信息,并进行添加、删除等操作,图5-144所示。
![](https://i-blog.csdnimg.cn/blog_migrate/789871abe5e875a1a4f137a41552bd7e.png)
图5-14优惠活动管理界面图
第六章 系统测试
通过一系列的测试,找出其中的错误。并且将测试作为软件开发的重要部分,在有了程序编程以后,测试就成为了系统中必不可少的一部分。通过统计分析,系统的软件测试占据了整个系统开发45%的工作量,从软件开发的成本中,测试成本已经包含了很多的测试工作。在测试中,每个程序都有可能出现错误。在该程序开发的过程中当中,利用人工方式去查找错误是比较繁琐和困难的,所以有必要找一些测试工具进行测试和分析。在系统整个程序的设计当中,出现一些错误的信息是时常发生的。对于这些指令当中语法是错误的,同时程序执行过程当中会提示,这样就方便找出错误。但是另一种类型的错误是由计算出来的,但是这些错误也是隐藏的,有时候它是不会发生的,所以解决这些错误是十分费时的。在进行系统运行的时候我们要对前期工作进行一个系统测试工作,通过测试来发现系统当中所存在的错误。当我们在测试过程当中要提早发现错误,并且发现错误以后要及时去改正,这样就能保证系统的长期运行。逐渐系统测试也就成为了一个系统设计必不可缺少的一部分。测试软件的时候要尽可能的去提高软件的可行性。
6.1 测试目的
程序设计不能保证没有错误,这是一个开发过程,在错误或错误的过程中难以避免,这是不可避免的,但我们不能使这些错误始终存在于系统中,错误可能会造成无法估量的后果 如系统崩溃,安全信息,系统无法正常启动,导致安装买家手机屏幕等,为了避免这些问题,我们需要测试程序,并发现这些问题,并纠正它们 ,并使系统更长时间稳定成熟,本章的作用是发现这些问题,并对其进行修改,虽然耗时费力,但长期非常重要和必要 系统的开发。
软件测试与开发过程是一样的,都必须按照软件工程的正规原理进行,遵守管理学理论。不过,目前国内的软件测试已经积累了大量经验和方法,步骤相对成熟,软件测试的效率也越来越高。
线上线下一体化的宠物交易的实现,对于系统中功能模块的实现及操作都必须通过测试进行来评判系统是否可以准确的实现。在线上线下一体化的宠物交易正式上传使用之前必须做的一步就是系统测试,对于测试发现的错误及时修改处理,保证系统准确无误的供给买家使用。
6.2 测试方案设计
6.2.1 测试策略
1、功能测试
从买家的角度来看,测试时不了解新开发软件的内部结构,因此可以将系统与黑匣子进行比较,盲目输入后可以查看系统给出的反馈。这种测试属于黑盒测试,在测试中如果输入错误信息系统会报错。
2、性能测试
测试软件程序的整体状况(称为性能测试)通常使用自动化测试工具来检测系统的整体功能,在负载测试和压力测试之间进行分配,在某些情况下,将这两种情况结合起来。虽然压力测试可以检测到系统可以提供的最高级别的服务,但负载测试可以测试系统如何响应增加的负载。
6.2.2 测试分析
测试评估系统质量的方法不局限于系统编码和过程,应该与软件设计工作和历史需求分析密切相关。
软件测试应遵循以下原则:
(1)软件测试应尽快进行,整个测试部分应在软件开发和设计的整个过程中进行。如发现错误,立即处理,将大大减少软件开发的时间,并提高软件的质量。
(2)在软件的各种测试中,测试过程中使用的计划、报告等应妥善处理和存储。其主要目的是为了便于以后系统的维护。
(3)软件测试整个过程中的聚类现象应优先考虑。
(4)对于软件测试,我们应该尽量不去和自己设计的系统进行参考,而是要测试对方的程序,以确保软件测试结果的客观性和公平性。
(5)整个测试计划严格按照软件测试的具体实施细则进行。
(6)对整个测试结果进行综合检查,尽量避免重复错误。
本线上线下一体化的宠物交易满足买家的要求和需求,本线上线下一体化的宠物交易的使用能够有效的提高买家的使用率。
6.3 测试结果
测试后得到的性能和用例,系统具有足够的正确性、可靠性、稳定性,并且可以对输入数据进行准确的点击操作处理和响应测试买家的体验也得到了很好的反馈和响应时间。合理的范围,可以兼容所有主流浏览器,设计所需的效果。
在本次毕业设计的过程中,从开始的懵懂无知,感觉设计一个系统非常困难,不知道该从何做起,但是通过查阅相关资料和网站之后,让我对该系统的开发有了新的认知,开发系统最重要的就是需求调查和系统分析,也通过老师指导和学过相关的知识,在加上我的不懈努力,最后将该系统逐步完成。在此次毕业设计中,让我知道了做什么事都必须要坚持,努力去查阅资料,并且善于发现和研究,充分利用身边资源,我相信办法总比困难多,所有问题都会迎刃而解。通过此次线上线下一体化的宠物交易的开发设计,将我在大学期间所学的知识都应用到了其中。使理论知识和现实实践进行相结合,开发线上线下一体化的宠物交易将理论知识和实践相结合,也将计算机信息与实践问题进行了相结合,通过现代计算机网络的便利来解决生活中的问题,并且还提高了我的计算机编程能力,在这次的开发设计过程中,虽然我遇到了很多的问题和困难,但是通过老师和同学们的帮助下,所有的问题都迎刃而解了,让我顺利的完成了此次的毕业论文设计,通过此次毕业设计的开发与设计,大大的提高了我的动手动脑能力,并且为我以后的工作奠定了坚实的基础。
通过本次设计,让我学到了更多的知识,而且在设计中会有一些问题出现,最后通过查阅资料和在老师和同学的帮助下完成了系统的设计和开发,使得这次系统的开发非常的有意义。同时通过这次系统的设计也让我明白了自己在哪方面有不足,以后加以学习争取可以开发住更多有用的适用的系统软件。
致 谢
此次毕业设计的结束,也代表着我的大学生活即将结束,这次毕业设计的过程中,我非常感谢我的老师和同学们对我的帮助,让我完成了这次的毕业设计,首先我要感谢我的指导老师,当我遇到困难时,老师在第一时间为我指导,为我解决了很多困难,在这里,感谢您对我耐心的指导,我还要感谢我的每一位老师,感谢你们把知识传授于我们,让我们学会了做人做事的道理。
最后,我要感谢各位答辩老师,感谢你们在百忙之中抽出时间为我的论文进行点评。
参考文献
[1]王志亮,纪松波.基于SpringBoot的Web前端与数据库的接口设计[J].工业控制计算机,2023,36(03):51-53.
[2]陈锴迪,欧阳李青,马玉璘,张海波,徐玮,徐昕.基于SpringBoot的运载火箭信息交互指挥平台[J].计算机测量与控制,2023,31(03):247-254.DOI:10.16526/j.cnki.11-4762/tp.2023.03.036.
[3]颜惠.基于Web的宠物店信息管理系统设计[J].软件,2023,44(02):147-149.
[4]平欣,宋育斌,孔维宾,方忠庆,陈希.基于GPS与微信小程序的智能宠物管理系统设计[J].软件导刊,2023,22(02):121-126.
[5]王以伍,舒晖.基于SpringBoot+Vue前后端分离的高校实验室预约管理系统的设计与实现[J].现代计算机,2023,29(01):114-117.
[6]郭建卫.基于SpringBoot+Mybatis+Vue的学生德育量化考核系统设计与实现[J].现代信息科技,2023,7(01):18-22.DOI:10.19850/j.cnki.2096-4706.2023.01.004.
[7]Yu Yang. Design and Implementation of Student Information Management System Based on Springboot[J]. Advances in Computer, Signals and Systems,2022,6(6).
[8]杜岩,温卫.基于Springboot+JavaFX的口令管理器的设计[J].电脑知识与技术,2022,18(27):40-41+45.DOI:10.14004/j.cnki.ckt.2022.1745.
[9]庄帅.宠物管理系统的设计及实现[J].福建电脑,2022,38(05):68-72.DOI:10.16707/j.cnki.fjpc.2022.05.017.
[10]Fuyuan Cheng. Talent Recruitment Management System for Small and Micro Enterprises Based on Springboot Framework[J]. Advances in Educational Technology and Psychology,2021,5(2).
[11]陈锋, 基于物联网平台的宠物半散养式管理系统及方法. 安徽省,安徽一网网络科技有限公司,2021-05-04.
[12]王亚文,赵翠.基于SSM框架的社区宠物信息管理系统设计与分析[J].电脑编程技巧与维护,2021(01):103-105.DOI:10.16184/j.cnki.comprg.2021.01.036.
[13]Guanhong Chen,Jiangming Xu. Design and implementation of efficient Learning platform based on SpringBoot Framework[J]. Journal of Electronics and Information Science,2020,6(1).
[14]吴文洋,刘世宇.基于B/S架构宠物领养管理系统设计[J].软件,2020,41(11):85-87.
[15]Jian Chen,Chen Jian,Pan Hailan. Design of Man Hour Management Information System on SpringBoot Framework[J]. Journal of Physics: Conference Series,2020,1646(1).
[16]马海珠.小型宠物店管理系统的设计[J].电脑知识与技术,2019,15(36):93-94+108.DOI:10.14004/j.cnki.ckt.2019.4297.
[17]胡鼎. 宠物交易系统的设计与实现[D].华中科技大学,2020.DOI:10.27157/d.cnki.ghzku.2020.004252.
[18]Ji K,Chen X,Qin A, et al. Design and Implementation of Teaching Quality Evaluation System Based on SpringBoot[C]//西南石油大学(Southwest Petroleum University).第七届计算与信息科学国际学术会议论文集.第七届计算与信息科学国际学术会议论文集,2019:444-452.
[19]. Design and Implement of Pets Management System using Mobile Phone[J]. International Journal of Recent Technology and Engineering,2019,8(2S6).
[20]Sam-Jin Jeong. Design and Implement of Pets Management System using Mobile Phone[J]. International Journal of Recent Technology and Engineering (IJRTE),2019,8(2s6).
关注●点赞收藏并私信博主,免费领取项目源码哦~