龙空技术网

基于Java的销售管理系统设计与实现

伽蓝之兔 328

前言:

现在你们对“java编写超市购物程序用类实现”都比较看重,看官们都想要分析一些“java编写超市购物程序用类实现”的相关知识。那么小编在网摘上网罗了一些有关“java编写超市购物程序用类实现””的相关内容,希望同学们能喜欢,大家一起来了解一下吧!

摘 要

在网络技术飞速发展的前提下,世界上所有的产业都随着互联网的前进的步伐蓬勃发展,互联网的出现完全可以称得上是一次全新的工业革命。在这样的背景下,本研究课题应运而生,成功地实现在线数码产品的销售,在线展示数码产品外观及详细信息和价格,供客户选购。商家与消费者之间的关系也正在逐渐由线下购物变为网上购物,而数码类商品的销售商品更新频率快,数量较大,在线上商城我们就不需要将每一件服饰都拿出来展示,只需提供数码产品的部分图片及信息即可,节省了人力物力。客户选购数码产品也可以通过输入相关的信息去搜索,不再需要频繁的咨询更换店铺。本课题主要使用了SSM框架搭建网上数码产品销售系统。采用SpringMVC框架前后端分离的开发模式,这种开发模式简洁灵活,并且SpringMVC框架基于请求响应,效率很高,占用资源却很少,兼容性十分完美,这套系统完成测试后商家可以在线上展现出数码产品信息,上架、下架商品。客户可以方便快捷的选购,达到了我们开发该课题的目的。

关键词:数码产品;购物商城;Spring框架

第一章 绪论1.1 研究背景

当初人们需要购买数码类商品时,一直以来人们所认知的购物方式是我们主动前往固定的商铺进行选购,不同的店铺内产品种类和数量上限,再加上消费者购买的商品数量较多,体积较大的话,还需要支付一部分钱用来作为商品的运输费用。当下中国经济水平的快速提升,工作繁忙导致人们休息时间不足以让人们花费大量时间去选购、运输商品,上述这些问题便开始困扰着人们,并降低了人们对消费、购买商品热情[1]。怎么样使消费者购物更加便捷,如何让商品出售方跟顾客交易更为快捷安全,大家一直在寻找这个问题的答案。

现今网络技术发展发展迅猛,网络在人们的日常生活中的应用变得越来越不可或缺。在当今时代下,移动通信技术和计算机运算能力大幅提升,成本降低,人们广泛地使用信息技术,而大家的思维方式也渐渐偏向于依靠互联网高科技来使得他们的生活更加方便,日常生活里人们都在借助互联网来实现许多以前十分复杂繁琐的操作[2]。随着硬件生产机器光刻机的发展,芯片的制作成本更加低廉,芯片的运算能力也更加强大,互联网信息技术已经成为人们日常生活中不可或缺的一部分。在这项技术已经非常成熟且成本相对较低的情况下,人们可以通过网络来实现购物。

1.2 研究意义

通过调查发现人们在网上购买数码产品的占比是很大的,在以前我们购物时,需要出门使用交通工具或者步行来到商店进行购买,挑选商品还要耗费大量时间。而如今只需我们拥有能够连接上网络和不是特别低级的设备,随时随地都可以选购商品,在物流行业发达的今天,几乎所有的商品可以送货上门。现下十分火热的各个网络商城的购物节活动相信很多人都参加了,就算没参加过也肯定听身边朋友说过,由此证明网上商城十分火爆。网上购物已经算得上是达到一个空前的发展期,每次“购物节”的商品成交金额超过千亿人民币,能证明如今互联网销售正在蒸蒸日上的一个发展趋势[3]。

网上购物的优点有很多,例如可选择性广、商品价格较于实体店更为便宜、移动支付方便、节省时间和精力等。随着电脑与智能移动设备的普及,电子商务也日益成熟,网络购物已经得到大众的广泛认可,目前,大多数人选择在线购物作为主要的购物途径[4]。在天猫、京东等垄断市场的大前提下,其他的电商平台想要加入市场,分一块蛋糕,难度十分大。但竞争才会促进发展,我相信每一位使用网上销售的消费者都希望看到百花齐放的环境,不断给他们提供更好地用户体验。这样才能保证网上购物系统在竞争中不断发展。

网上购物大热的环境是建立在当前物流产业发展成熟,互联网普及完善,电子网络设备性能强大,人们需要快速便捷的购物体验为背景,可以在家中轻松地购买商品,并通过快递迅速地将其送达消费者的手中;实现通过互联网对商品的信息进行展示及商品内容浏览、商品查询、商品数量价格展示等功能[5]。用户使用网上购物系统在网上选择商品和线上结账等行为,这样使顾客购物更加便捷,又降低了卖家的经营费用。因此,在网上销售系统管理者可以查看所有顾客的购物信息和查阅总体商品情况的功能。通过互联网给顾客带来的这些体验,具有与以往购物\销售不同的优势和特点,给商家带来了解用户消费方式、联系客户、更好的改善销售模式的有效的方法。

1.3 国内外研究现状

在这个日新月异的网络时代背景下,由于互联网的迅速扩展,信息和经济的全球化势必会为全球带来深刻的变革。在这其中,我国已经开始逐步将计算机技术融入到各种管理活动中,尽管大部分的项目都聚焦于仓库管理,但销售管理方面的应用却相对较少[6]。在处理大量的销售数据时,由于不能迅速并准确地整理出准确和完整的数据,这导致无法及时了解销售的最新动态,从而无法做出准确的决策,最终可能导致经济上的损失。面对当前的情况,数码商品销售管理系统能够解决许多此类问题,该系统能够迅速地通过互联网和尖端的信息技术传播到各地。这种信息技术的进步不仅有助于供应链的完善,同时也有助于收集用户的反馈,从而加强双方的沟通和交流[7]。随着网络技术的持续进步,无论是各个行业的构成还是整个社会,都经历深刻的变革。在众多相关企业中,数码商品的销售管理被视为关键的一环,这套系统也将成为企业提高盈利和持续增长的核心策略。

第二章 开发技术概述2.1 Eclipse开发工具

Eclipse是一个集成Java开发工具JDK的开源可扩展平台。当然,Eclipse也支持其他编程语言的开发[8]。这个平台为大量的编程人员提供一个优质的开发环境,其最大的优点是能够接受编程人员自行编写的程序代码。Eclipse在本质上是一种框架与服务。Eclipse赢得了众多人的喜爱,主要是因为它具备出色的扩展性和高效的性能,从而吸引大量的用户。

2.2 Java简介

Java不仅是一种广泛使用的编程语言,而且其语义也相当直观和易于理解。Java是编程人员经常使用的一种编程语言,它拥有众多的优势,尤其是Java的一个显著特点是与平台无关,从而提高代码的可复用性[9]。该工具为用户提供丰富的类库资源,使他们能够更为方便地构建自己所需的系统。

2.3 Spring框架

Spring是一种起源于2003年的设计框架,作为一个JEE的开发平台,它拥有众多的优点。其组件间的依赖性极低,模块可以方便地进行替换。值得注意的是,组件本质上只是一个简单的Java实体,因此无需进行额外的处理,这使得它变得非常简洁[10]。由于软件开发的复杂性,它被设计出来。由于该系统具有装载大量对象的能力,并且这些对象具有特定的功能,因此在开发流程管理和对象创建方面,它也被称为一站式框架。IOC的技术理念被提出,目的是为了解决开发者独立创建和调用对象的问题。

2.4 MySQL数据库

MySQL作为一种基于关系的数据库管理系统,具备体积紧凑、运行速度快和成本效益高的优点,因此有大量的系统开发者为了减少运营成本,选择将其作为自己的数据库资源[11]。该工具能够将数据库紧凑地连接在一起,并存储在各种不同的数据表中,这不仅为人们提供便利,提高查询速度,还确保数据库的准确性,同时也增强系统的灵活性。MySQL的安装和操作都相当简单,它是开源的,并且可以免费使用和修改,同时它的处理速度也相当迅速。MySQL数据库软件被广泛认为是最常用的数据库管理工具。

第三章 可行性及需求分析3.1 可行性研究

3.1.1 技术可行性

该网络数码产品的后端开发主要依赖于Java编程语言。尽管Java语言在社会上仍是主流,但Spring+SpringMVC+MyBatis的技术依然广泛应用。为了实现这一系统,我们选择使用MySQL数据库和Tomcat服务器[12]。在大学课程设置中,Java语言被视为一门必修科目,笔者个人也对其有深入的了解。鉴于Java系统目前的开源特性,网络上的资料变得非常丰富,因此老师和同学都能为我在技术方面提供宝贵的帮助。

3.1.2 经济可行性

这个系统的开发所需的主要经济成本可以被划分为硬件和软件两大领域。在硬件开发上,完全有能力使用我的笔记本电脑。软件方面的话主要是开发工具,例如IDEA代码编辑软件,在官网上有适配各种开发环境的不同版本,绝大部分都是可以免费使用。Apache服务器也是免费的服务器,大部分的系统项目中都有使用到,能够方便的获取到许多相关资料[13]。Tomcat的显著优点是它的开源版本可以在互联网上免费获取。此外,与此系统开发有关的MySQL也是完全免费的,并且它已经是一个相当完善的数据库系统。

3.1.3 操作可行性

该系统的设计仍需交付给用户使用,以确定用户的操作需求和系统的运行状况是否能够得以满足。在如今各大互联网企业公司蓬勃发展的大环境下,网上涌现了许多十分成熟的开源系统框架,用户操作也越来越友好。在大范围的使用后,这些系统也对不同用户使用的操作系统环境进行了适配,也不会出现用户由于硬件原因使用不了我们开发的系统这种情况。因此,从操作的可行性角度看,目前存在一个可供选择的开发工具和环境版本,因此这并不构成任何问题。

3.2 需求分析

在项目启动初期,我对现有已发展完善,运营较为成功的淘宝商城、京东购物商城进行了研究,我对网上商城有了一定的了解,笔者认为,该系统功能可根据不同的使用角色来分配不同的功能。

3.2.1 管理员需求

管理员应该拥有以下功能:

1.上架商品功能。管理员将商品上架到线上商城并填入商家产品的各种信息,如产品的名称、产品数量、价格、产品的描述等,以供顾客参照选购。

2.修改用户的账户信息功能。用户所用购买商品的货币为系统虚拟货币,需要管理员进行充值操作。

3.确认用户订单信息功能。用户在下单之后,必须确认其订单详情并调整订单的当前状态,如果商品已经发出,那么订单的状态需要更改为“已发货”。

图3.1 管理员功能模块图

3.2.2 普通用户需求

普通用户应该拥有如下功能:

1.注册功能。新加入的用户有资格注册他们的个人信息,包括但不限于用户名和发货地址。

2.账户管理功能。这包含查阅个人资料、更改个人资料以及更改个人密码的功能。这一功能主要关注客户的相关资料,仅允许客户对其个人资料进行更改。

3.商品浏览功能。商城按类别展示商品详情,并向用户展示商品的照片和价格信息。用户通过点击商品可以了解商品详情。

4.商品搜索功能。用户可以通过输入商品的关键信息,如商品名,为了优化顾客的体验,我将搜索功能设计为只要输入部分关键字,就可搜索出与关键字有关的产品。

5.购物车功能。仿照线下超市购物的形式进行设计,顾客可以将有意向购买的商品都加入“购物车”里,如果不再有购买某一商品的意愿,也可以选择将其取出,并在“购物车”中调整已存入的商品数量,不用像线下购物那样增加商品数量需要走到放置商品的指定位置才能操作。最后结账可以选择部分商品统计金额结账,未买单的商品仍会停留在购物车内。

6.订单功能。用户可查看订单状况,如购买商品已验收,则可变更订单状态为“已收货”。

图3.2 普通用户功能模块图

第四章 系统总体设计4.1 功能模块划分

4.1.1 系统总体设计

1物理架构设计

通过上一章对网上数码产品销售的主系统架构分析,并结合时下较为热门的设计模式,选择B/S架构作为系统的设计,这样用户可以通过他们的计算机或手机平板上的浏览器来访问购物平台。在用户的购物场景中,客户端与我们的服务器共享同一局域网络,用户可以直接通过浏览器访问我们的系统。图4.1展示系统的物理结构图:

图4.1 系统物理架构图

2软件架构设计

参照了网络上的许多网站系统,架构设计一般分为两个部分,分别是结构设计和系统设计。结构设计部分确定网上数码产品销售系统的软件结构;在系统设计阶段,通过对系统功能进行精细的模块划分,来确定系统的实施方向。

系统的软件架构设计将会决定我们的系统的整体底层结构,就像建房子需要在地基上添加其他的砖墙。考虑到网上数码产品销售系统的通用性和易维护性,本系统采用MVC模式设计思想,采用主流框架SSM技术进行开发,各层之间的逻辑架构如图4.2所示:

图4.2 SSM框架逻辑架构图

3功能结构设计

在上一章中,对在线数码产品销售系统进行深入的需求分析。这个系统的主要功能是帮助商家将数码产品上架到线上商城,然后消费者根据商家对商品的描述来选择数码产品。因此,除了基础的登录和注册功能,这个系统还集成商品展示、搜索、购买、添加和删除等多种功能。图4.3展示其功能的结构图:

图4.3 系统功能结构图

4.1.2 系统详细设计

1商品展示模块

网上数码产品销售的商品展示模块设计成通过查询数据库的方式将存储在数据库里的所有数码产品数据取出,并通过MVC模式将数据处理后将数码产品的图片、名称、单价等信息按照产品的分类展示在主页。

2商品搜索模块

网络数码产品的商品搜索功能是通过一个特定的输入框来捕获用户所输入的关键字,通过MVC框架将该关键传给逻辑层进行处理。通过数据库代码将数据库内商品关键描述信息查出,用户输入的关键字与商品的核心信息被模糊地进行匹配。将匹配成功的商品数据传给表示层视图化展示给用户。

3商品购买模块

网上数码产品销售的商品购买模块设计成用户通过点击商品视图模块后,跳转至商品购买页面,该页面将数据库中的商品数据展示给用户,此外,还提供一个控件,允许用户选择他们想要购买的商品数量。如果用户的购买量超出现有商品的库存量,那么就需要进行异常处理,以提示用户库存不足。

4商品添加模块

网络数码产品销售中的商品添加模块是由管理员设计的,他们可以通过输入商品的各种数据,然后逻辑层获取这些数据,并通过数据库添加语句将用户输入的数据加入到数据库中。需要输入的商品相关信息包括:“商品名称”、“商品描述”、“关键词”、“商品价格”、“商品数量”、“商品类别”以及“商品图片”。

5商品删除模块

网上数码产品销售的商品删除模块设计成管理员在查看所有商品时,提供一个按钮选项,管理员可以通过点击这个按钮来完成各种操作。逻辑层以该商品的主键信息为前提条件,利用数据库删除功能来从数据库中删除商品表中的相关商品信息。

4.2 数据库设计

在每一个Web应用的开发过程中,数据库设计都是一个不可缺少的关键步骤。一个应用程序的运行流畅性和计算机资源的使用效率受到其设计的严格适应性的直接影响。基于这个数据库的设计要求,将数据设计流程细分为需求分析、概念框架设计、逻辑框架设计以及数据库的操作和持续维护。

1.在进行数据库设计之前,需要深入了解用户的需求,并积极参与到用户需求的分析过程中。根据用户的具体需求,确定数据库应存储的信息以及信息处理的具体要求,并将这些信息整合成文档格式。在项目的后期阶段,会依据文档来设计和开发数据库。

2.数据库的概念模型设计。概念模型是基于用户需求来构建数据的方法。在设计概念结构时,首先要将结构的可视化部分拆分,然后进行深入的分析和设计,最后将这些设计的结构进行整合,从而形成一个完整的概念数据模型。这种初步构建的数据模型需要数据库设计师和用户进行仔细的审核和修订,最终才能得出设计方案的最终成果。

3.逻辑结构设计。逻辑结构设计的核心思想是将数据库系统划分为多个小模块,每个模块都有其独特的功能。通过整合这些小功能,可以实现数据库的全面功能,并在设计前对数据结构进行微调。

4.数据库的实施与维护。

在数据库设计完毕之后,会依据设计成果来构建相应的数据库,编写和调试应用程序,再导入一些测试数据,并进行试运行,测试数据库的功能。数据库应用系统测试通过后,就能够在项目中进行使用,在数据库系统正式落地实施后必须根据实际运行的情况对它进行优化。

根据功能需求分析我们针对本软件系统设计了6个数据库表,分别是“用户详细信息表”、“用户主页数据表”、“购物记录表”、“购物车表”、“产品订单表”和“评论表”。详细设计如下:

1.用户详细信息表:该表描述了“用户编号”、“密码”、“手机号码”、“性别”、“生日日期”、“邮政编码”、“地址”、“注册时间”、“积分”,以“编号”(id)作为该表的主键,如表4-1所示:

表4.1 用户详细信息表

字段名

数据类型

长度

约束条件

字段名描述

id

int

11

主键(非空)

编号

password

varchar

20

非空

密码

phone_number

varchar

20

非空

手机号码

sex

int

11

非空

性别

birthday

varchar

20

非空

生日日期

post_number

varchar

10

非空

邮政编码

address

varchar

50

非空

地址

register_time

varchar

20

非空

注册时间

point

int

11

非空

积分

2.用户主页数据表:该表描述了“用户编号”、“名字”、“电子邮件”、“昵称”和“角色”,以“编号”(id)作为该表的主键,如表4.2所示:

表4.2 用户主页数据表

字段名

数据类型

长度

约束条件

字段名描述

id

int

11

主键(非空)

编号

name

varchar

30

非空

名字

email

varchar

50

非空

电子邮件

nick_name

varchar

30

非空

昵称

role

int

11

非空

角色

3.购物记录表:该表描述了“用户名”、“产品名”、“时间”、“订单状态”、“产品价格”和“数量”,以“用户名”(user_id)作为该表的主键,如表4.3所示:

表4.3 购物记录表

字段名

数据类型

长度

约束条件

字段名描述

user_id

int

11

主键(非空)

用户名

product_id

int

11

非空

产品名

time

varchar

20

非空

时间

order_status

int

11

非空

订单状态

product_price

int

11

非空

产品价格

counts

int

11

非空

数量

3.购物车表:该表描述了“用户名”、“产品名”、“产品价格”和“数量”,以“用户名”(user_id)作为该表的主键,如表4.4所示:

表4.4 购物车表

字段名

数据类型

长度

约束条件

字段名描述

user_id

int

11

主键(非空)

用户名

product_id

int

11

非空

产品名

product_price

int

11

非空

产品价格

counts

int

11

非空

数量

4.产品订单表:该表描述了“编号”、“名字”、“描述”、“关键字”、“价格”、“数量”和“类型”,以“编号名”(id)作为该表的主键,如表4.5所示:

表4.5 产品订单表

字段名

数据类型

长度

约束条件

字段名描述

id

int

11

主键(非空)

编号

name

varchar

50

非空

名字

description

varchar

1000

非空

描述

key_word

varchar

1000

非空

关键字

price

int

11

非空

价格

counts

int

11

非空

数量

type

int

11

非空

类型

5.评论表:该表描述了“用户名”、“产品名”、“时间”和“内容”,以“用户名”(user_id)作为该表的主键,如表4.6所示:

表4.6 评论表

字段名

数据类型

长度

约束条件

字段名描述

user_id

int

11

主键(非空)

用户名

product_id

int

11

非空

产品名

time

varchar

20

非空

时间

content

varchar

1000

非空

内容

第五章 系统实现5.1 前台功能实现

5.1.1 用户管理功能实现

用户功能管理单元主要负责用户注册登录及主要信息处理,包含三个子模块:注册模块、登录模块与用户信息修改模块。

1.注册模块:

新注册的用户可以利用主页的注册功能来填写他们的个人信息,并在完成后进行正式的用户注册。需要提供的信息包括:用户的全名、电子邮件地址、昵称、密码、联系电话、性别、出生的日期、邮寄的编码以及用户的居住地址。用户可以选择使用用户名或邮箱作为登录的账号名称,而手机号码、邮政编码以及用户的居住地址则为用户在成功下单并成功配送商品时提供相关的配送信息。

注册界面如图5.1所示:

图5.1 注册界面

2.登录模块:

登录模块允许用户在输入用户名或邮箱以及与之匹配的密码之后,利用数据库来查询用户输入的账户和密码。一旦匹配成功,用户便可以登录到网站的主页,查阅商品详情,并据此进行商品的选购。

登录界面如图5.2所示:

图5.2 登录界面

3.用户信息修改模块:

用户注册数据将储存于系统数据库内。若需变更如手机号码、收货地址等相关信息,可通过用户信息修改模块来实现。

用户信息修改界面如图5.3所示:

图5.3 用户信息修改界面

5.1.2 商品查询功能实现

随着购物商场的不断完善,商场里的商品数量和种类也会不断增加,为了优化客户使用商场购买商品的体验,我们设计了商品查询功能。

在线下实体商城购物时,客户往往并不清楚我们所想要购买的商品放在商城的哪一个具体位置,当客户只需购买某一固定商品时,通常都需要导购员的指引或者自己漫无头绪的在商城寻找,网上购物商城就解决了这一难题。我们在网上购物商城中所寻找的“商品”其实都只是数据库中的一条条数据,当客户在商城主页输入与商品相关的部分关键词或信息时,系统会调用数据库查询语句,将符合客户搜索内容商品一一列举展示出来,客户就可以对此商品进行购买。商品查询模块颠覆了以往的线下数码商城购物的方式,可以让客户更加快捷的寻找到所需商品。

商品查询功能界面如图5.4所示:

图5.4 商品查询功能界面

5.1.3 购物功能实现

用户使用网上商城购物与在现实中购物的流程没有很大区别,在线下实体店进行客户首先会在心中有个所购商品的大体类型,例如客户想要购买手机类移动数码产品,就会到手机商城进行选购,想要购买平板电脑等商品,就会到有平板电脑的品牌商家去选购商品。根据种购物模式,我们也将网上数码购物商场中商品分成了手机设备、摄影摄像、影音娱乐、智能设备、电脑配件、电子教育、通信服务这七大类,方便客户快速定位到自己所想购买的那个商品,节约客户的选购时间,也符合了我们购物商城的建立——是为了让休息时间不足以去到线下实体店进行购物的人群更加方便快速的购买商品的初衷。

在线下实体店购买商品,我们有时只需要购买一件商品,有时需要购买多个种类多个数量的商品。根据这两种不同的情况,我们对客户进行购物结算也做了两种方式。

1.主页下单购买

当客户所需购买的商品比较单一时,只需点击商品后,浏览完商品信息,如果客户有购买需求,只需确定商品客户所需的购买量,然后可以直接在商品详情页面下单进行购买。这种操作方式既简洁又高效,极大地减少只需要购买单一商品的客户所需的时间。

主页下单界面如图5-5所示:

图5.5 主页下单

2.购物车下单购买

当客户需要进行大量采购,而所需采购的商品种类繁多,上一种购物下单方式显然就会让客户觉得操作繁琐,每次选择商品后都需单独进行下单购买。针对这一情况,我们设计了购物车统一下单购买的方式,顾客在选择他们想要购买的商品数量后,可以将其放入购物车中,并在商城中继续浏览以挑选他们想要购买的其他商品,一旦选择完毕,他们可以继续将这些商品加入购物车中。客户在选择完所有的商品之后,可以进入购物车的界面进行统一的购买订单,这样设计使得客户购买商品更人性化也将网上购物的模式更趋近于在线下实体店购买商品,让客户更易接受这种购物方式。

购物车下单购买界面如图5-6所示:

图5.6 购物车下单购买界面

5.1.4 订单功能实现

在客户与商城的交易过程中,订单功能是不可或缺的一个重要环节。对于客户来说,当客户支付了货款后,并不是立即可以收到货物,货物需要经过包装、出仓、邮寄等等一系列的环节后才能到达客户手中,而在这个真空时间内,订单为客户提供购买商品的独一无二的证明。当客户接收到商品之后,他们可以根据订单中的商品规格、数量和其他商品特性来进行商品的验收工作,验收完毕后才算是完成了本次交易。对于商家来说,商家可以根据订单上的商品信息来给客户提供相对应的型号、数量的商品,以免给客户送错商品,导致需要补发或重发商品,造成自己人力物力的损失,这不仅给客户留下不良的形象,还浪费他们宝贵的时间。交易完成之后,商家可以依据订单信息,对其产品的销售数据进行整合,这有助于更好地了解销售状况和掌握产品的即时库存情况。

根据订单功能的业务逻辑,把订单分类为“待发货订单”、“运输中订单”和“已收货订单”,并依据订单的功能进一步细分为订单查询和订单处理两大模块:

订单查询:

无论是普通用户还是管理员,都可以利用订单查询功能,只需点击“订单状态”按钮,就能进入页面查看订单详情。订单详情展示“购买者”、“商品名称”、“购买数量”、“付款金额”、“送货地址”、“联系电话”以及“订单的当前状态”。

订单查询界面如图5.7所示:

图5.7 订单查询界面

订单处理:

订单处理根据权限分为普通用户与管理员两种。当普通用户完成商品购买后,系统会自动为本次交易生成订单。一旦订单被商家打包并发出,系统的管理员用户便可以对这些订单进行相应的处理,将订单状态修改为“运输中”。客户收到商品后可登陆商城平台将订单状态修改为“已收货”。此时一个完整的交易就已完成。

订单处理界面如图5.8所示:

图5.8 订单处理界面

5.2 后台功能实现

针对一系列的管理员操作,我们将其统一并入“控制台”模块里,“控制台”模块主要包括“查看所有用户”、“查看所有商品”和“添加商品”这三个模块。

“添加商品”模块顾名思义是提供给管理员用来为网上购物商城添加目前没有存在于商城中的新商品的一个操作接口。

“查看所有商品”模块可以将目前网上购物商城中的所有商品展示出来,供管理查看当前商城中的所有上架的商品。此外,还可以执行商品的删除操作。

在“查看所有用户”这一模块中,用户可以在当前的在线购物平台上看到所有已经注册的用户,并有权限进行用户的删除和充值操作。

5.2.1 商品添加功能实现

线下实体商城的运营需要经常更新商品的种类,以此满足客户的购物需求,因此,网购商城必须包含商品添加功能,以确保信息的准确性。此项操作因技术因素,仅限于管理员进行。待其访问商品添加界面后,只需填写必要信息,即商品的“名称”、“描述”、“关键词”、“价格”、“数量”、“分类”及“图像”即可完成添加入库。

客户通过首页搜索功能,管理者在添加商品时输入的“商品名称”、“商品描述”以及“关键词”皆可作为搜索关键词。例如,新增商品为“华为P40手机”,“商品描述”可以将其品牌、颜色、款式、材质作为信息填入。“关键词”可以填入一些从侧面联系到该商品的词语,以“华为P40手机”为例,关键词可以是“手机”、“华为”、“P40”等等。在客户进入主页搜索时,通过查询后商品的筛选可以更快速精准的找到所想要购买的商品,节约了客户选购商品的时间。

除了在主页输入关键词进行搜索以外,客户还可以通过管理员添加商品时为该商品所定位的“商品类别”进行选购。在主页中,同类类别的商品将会展示在同一栏下,客户同样可以通过这种方法快速选出自己想要购买的商品。

最后,管理员将设立专门的图片板块以进一步强化商品呈现效果;在此基础之上,客户亦可借助相关图片更深入理解选择的商品。

添加商品界面如图5.9所示:

图5.9 添加商品界面图

5.2.2 查看所有商品功能实现

通常的线下商城管理者需要对所有的商品有一个系统的了解,以往都是大量的实体文字文件,查询起来十分繁琐。而且当商品有变动时,需要修改大量文件。在线购物平台可利用电脑的高效算力,快速检索所需信息,支持数据修改及删除。

商品信息都存储在同一张数据库表中,我们只需将这张表的数据全部查询出来,再将数据全部映射到前端页面上。将每一件商品的“商品名称”、“商品图片”、“商品库存数量”和“商品价格”都展示在页面上。

同时在每一个商品的展示界面中,还提供了一个按钮,点击此按钮会触发数据库的删除操作,为了实现删除每件商品的目的,需要从数据库中移除该商品的相关信息。

查看商品界面如图5.10所示

图5.10 查看商品界面

5.2.3 查看所有用户功能实现

管理员可以通过该功能模块看到当前购物商城的所有用户。该模块展示了用户的“用户ID”、“用户名”、“昵称”、“邮箱”和“用户资金”。管理员通过数据库查询出来的这些信息,可以一目了然地查看当前商城中已注册的的用户信息。在查询接口外,我们还对用户添加了一个删除接口,用户只需点击“删除”按钮,便能从数据库中移除该用户的全部资料。

在该模块下我们还加入了一个“虚拟货币”的功能模块。客户购买商品,都是使用线上购物商城提供的虚拟货币。每个用户都拥有自己的虚拟货币账户,购物时会抵扣相对应的数额。余额不足时可以联系管理员,管理员通过“控制台”模块进入到该模块可以给相对应的用户进行充值操作。

查看所有用户界面如图5.11所示:

图5.11 查看所有用户界面

第六章 系统测试6.1 系统测试介绍

系统测试实质上是将整个系统与部分硬件、软件等元素整合为一个统一的整体。在真实的操作环境中,对该系统进行一系列的检测,以确定是否存在与系统说明书不一致的部分。接着,将系统与系统的说明书进行对比,并根据实际需求设计和维护测试系统,对可能的问题进行了深入的分析和评价,以确保系统功能的完善和满足标准。为了确保软件产品的高质量,并避免给国家和公众带来不必要的损害,软件测试应被视为生产过程中不可或缺且至关重要的一环。

6.2 系统测试过程

6.2.1 登录测试

用户登录时,其账号及密码将与数据库内的用户数据进行核实。若核查不准确,系统应即时提示使用者填写错误的相关信息,详见图6.1:

图6.1 登录账号密码错误

6.2.2 购买商品余额不足测试

如果用户在购买商品时发现余额不足以支付当前的订单,系统会提示用户购买失败,详见图6-2:

图6.2 余额不足

6.2.3 所购买商品数量不足测试

用户在购买商品的过程中,所购买的数量会超过现有商品的库存量,因此系统会提示用户当前的商品库存是不足的,详见图6.3:

图6.3 商品库存不足

6.2.4 搜索测试

在用户进行商品搜索的过程中,需要根据用户所输入的关键词,将匹配的商品展示给用户,如图6.4所示:

图6.4 搜索商品

6.2.5 评价测试

当用户完成商品的收货后,需要提供可以让用户给所购买的商品添加评价的功能,如图6.5所示:

图6.5 商品评价

6.3 测试用例

6.3.1 用户功能模块测试

用户功能模块测试,将设计的功能和对应的预期结果对比是否正常,如表6.1所示。

表6.1 用户功能模块测试表

测试模块

描述

预期

结果

注册模块

点击首页注册,创建新用户

系统显示注册成功

正常

登录模块

登录首页

成功登录

正常

查询模块

在搜索框输入相应书名,并点击查询

首页展示出对应的树木

正常

图书筛选模块

按照需求点击选择想要显示的图书

出现筛选过后的图书

正常

图书购买模块

在相应图书中的详细信息中点击购买选项,并填写订单信息

成功购买,可以订单中查看

正常

6.3.2 管理员功能模块测试

管理员功能模块测试如表6.2所示。

表6.2 管理员功能模块测试表

测试模块

描述

预期

结果

用户管理模块

在用户管理一栏中进行删除、查看操作

点击删除后用户被删除

在栏目中可以查看到用户的相关信息

正常

订单管理模块

操作用户填写的订单信息

可以操作订单信息

正常

分类管理模块

点击分类管理栏目,对图书类别名称进行更改

显示更改成功,并在可以看到更新后的信息

正常

作者管理模块

在作者管理模块,操作作者信息

增加作者信息成功,删除作者成功,更改作者信息成功

正常

图书管理模块

操作图书信息

可以在用户页面看到上架的图书以及更新后的信息

正常

6.3.3 压力测试

压力测试的目的是为了模拟在大群体以及大量数据汇入的环境,观察本次设计的系统能否承载。在系统在承载压力中,对系统进行适当的评估,来确定这个系统的压力承载量有多大,进而评估系统的完善性。

测试目的:本次测试目的是为确定本系统在测试环境下是否能满足用户的并发量以及在相应并发数情况下平台响应情况。

测试内容:模拟多用户同时登录的情况,获取多用户参与时系统的运行状况(从多用户占用资源到系统响应所需要的时间做对造分析)。

测试工具:Apache ab压力测试工具。

测试结果:本系统在多用户的情况下能够有效并且及时的做出反应。具体测试内容如表6.3所示。

表6.3 压力测试表

编号

功能

同时登录人数

测试场景

测试结果

1

登入

15

20

40

同时登入

响应迅速

响应迅速

响应迅速

2

生成订单

15

20

40

同时生成订单

响应迅速

响应迅速

响应迅速

3

查询

15

20

40

同时查询

响应迅速

响应迅速

响应迅速

6.4 测试结果

经过实际运行操作本网上购物商城后,登录密码输入错误后,系统会给予用户账号密码错误的提示。当购买商品时,如果用户的余额不足以支付当前的订单,系统将会提示用户当前的余额不足。当用户购买的商品的库存量低于其当前购买的数量时,系统将会提醒用户商品的库存量是不足的。当用户键入关键词进行商品搜索时,该系统会向他们展示与关键词相关的各种产品。用户确认收货后,可点击按钮给所购买商品写评价。

第七章 结论

历经数月严谨细致的系统分析,并对所需的知识进行系统的学习。如今,该系统已经实现我们的预期目标,并在多台电脑上稳定运行。这个页面设计得既简洁又大气,功能按钮清晰可见,使用起来简单方便,而且页面的展示,既清楚又易于理解。此系统实施深度的用户体验及后端润化处理,致力于加强用户感受度,以期圆满达成最初设定的目标。同时释放出用户积极的反馈。对于用户管理部分,本系统提供多项功能,如用户注册、登录以及后台管理用户信息等,配合成熟的商品购买环节(包括浏览商品信息、提交订单、查询物流以及予以评价),成功实现网络购物中必不可少的各种功能。在项目开发过程中,严格依照预先设定的流程与基础框架进行编程。首先,综合分析该系统当前在国际国内的状况与背景;其次,利用线上线下的问卷调查了解并确认客户的需求和期望;接着,针对客户最为关切的功能与特性,深入研发并完善本系统的核心功能;最后,经过实际运行、技术以及经济学上的全方位验证,得出该系统具有成功实施并运作的可行性结论。上线之后,将对整个系统进行全面测试以确保其正常工作,当然测试结果也显示系统运行流畅。

参考文献

[1]玉绍康,关世杰,苏一博.基于Java环境下的Redis发布订阅的设计与实现[J].科技创新导报,2019,16(14):3,5. DOI:10.16660/j.cnki.1674-098X.2019.14.003.

[2]赵硕,范俊甫,孙永进, 等.基于MySQL的矢量数据访问引擎设计与实现[J].测绘与空间地理信息,2019,42(9):138-141.

[3]怯肇乾.Tomcat应用服务器高并发优化处理[J].电脑编程技巧与维护,2018

[4]李娟.基于LoadRunner的Web系统性能测试的研究和应用[J].信息技术与信息化,2019

[5]王虎.基于B/S模式的信息管理平台[D].天津:天津大学,2017.

[6]丁函,罗军,陆文骏,等.智能家居控制APP系统的设计与实现[J].计算机技术与发展,2017,27(1):121—125.

[7]刘蔚.网络行为特性分析的网络管理预测研究[J].微型电脑应用,2019,35(10):96-98.

[8]路宇,张靖,唐轶轩.关于MySQL数据库的优化研究[J].科学与信息化,2019,(33):49.

[10]陈猛.基于Java的购物网站设计与开发[J].农家参谋,2020(08):200.

[11]蔡长征.数据库设计在网站开发中的应用研究[J].科技风,2019(35):80.

[12]徐晓东.SSH框架与AJAX技术基础下Java Web应用开发分析[J].数码世界,2017(08):29.

[13]陆丽.MVC设计模式在JavaWeb开发中的应用研究[J].信息通信,2020(04):104-106.

标签: #java编写超市购物程序用类实现