Java美妆论文化妆品销售化妆品商城美妆商城论文

无敌的宇宙
无敌的宇宙
擅长邻域:Java,HTML,JavaScript,MySQL,支付,退款,图片上传

分类: Java ssm MySQL 专栏: java ssm Mysql 标签: 美妆网上销售系统的设计与实现毕业论文

2023-01-02 16:18:02 463浏览

美妆网上销售系统的设计与实现毕业论文

xxx大学




本科生毕业论文




信息技术学院计算机科学与技术专业 xxx年级




学 号

学生姓名

论文题目 美妆网上销售系统的设计与实现

实习单位

指导教师

起止时间



2022年 5月 25日





摘 要

如今社会,计算机技术被广泛的应用,计算机网络在各个行业的发展战略中占了很大的比重,网上购物已经成为人们生活中不可或缺的一部分。设计与实现一个美妆网上销售系统是必然的,不仅方便用户购买,而且也便于管理者对美妆产品的管理。

此系统可分为普通用户和系统管理员两种角色,普通用户可以实现对美妆产品的搜索查询功能、下单等等操作;系统管理员可以对商品进行发布、订单发货等等。用Eclipse软件作为本系统的开发工具,Java为主要编程语言,采用SSM框架,用Navicat Premium对数据库进行数据管理。

关键词:网上购物;设计与实现;美妆网上销售系统;Java;SSM;




Abstract

In today's society,Computer technology is widely used, Computer networks account for a large proportion in the development strategies of various industries, Online shopping has become an indispensable part of people's life. It is inevitable to design and implement a beauty online sales system, which is not only convenient for users to buy, but also convenient for managers to manage beauty products. This system can be divided into two roles: ordinary users and system administrators. Ordinary users can search and query beauty products, place orders and so on; The system administrator can publish goods, order delivery and so on. Eclipse software is used as the development tool of the system, Java is the main programming language, SSM framework is adopted, and Navicat premium is used for data management of the database.

Key words: Online shopping; Beauty online sales system; Design and implementation; Java; SSM;





1. 绪论

1.1研究背景

计算机网络技术以人们无法想象的速度在向人类靠近,在众多的网络服务中心中,网络购物已经普遍覆盖,更多的人选择网购的方式,特别是当代大学生,几乎每天都上网购物。网上购物有很多优点:方便、快捷,减少了很多销售环节。电子商务实现了网上商店或商品临时存储的销售模式,降低了商品成本,为企业提供了更大的利润空间。

美妆产品网上销售的模式减少了许多中间环节,通常情况下,产品直接来自制造商,质量有保障,价格优惠。与此同时,为了降低成本,网络销售无法与传统商店相比。网上销售的方式不需要线下的实体店面,这样既可以节省店铺租金,又可节省店面装修管理费,因此,更多的卖家用开网店来代替开实体店面。此外,不同之处在于,网上购物可以呆在家里,购物方式变得简单、免费、个性化,这成为了网上化妆品销售的一大优势。

用户可以在美妆销售平台上搜索自己心仪的商品,也可以对看中的商品进行下单操作等等。线上购物深受人们喜爱,更多的是因为现在大数据技术的迅速发展,网上美妆类产品种类齐全且库存数量丰富等优点。然而,虽然线下的美妆实体店有很多,但存在客流量多,难免会有让顾客等待或者商品库存不足的弊端。两者相比而言,线上销售可以解决实体店带来的问题,可以给用户节省大量的时间,还可以让用户买到喜欢的商品。现在,还有疫情的存在,更多的人响应国家的疫情号召,没必要不外出的原则,越来越多喜欢在手机上完成每一次的购物,这时候,对精致的爱美人士来说,在网上进行美妆购物就尤其方便。那么,开发美妆网上销售系统就显得非常有必要,可以在用户和商家之间形成一种共赢的状态。

1.2研究现状及发展趋势

1.2.1研究现状

信息技术日益贴近,电子商务伴随生活。网上购物成为人们生活中不可或缺的方式。美妆网上购物系统是通过买家和卖家之间的互动而产生的一种商业系统。企业利用计算机网络技术进行网上交易后,商品交易的本质核心是网上交易。线上交易的发展改变了原有的形式,从而使更多的客户更倾向通过互联网进行网上购物交易。这是以数字化为基础、互联网为重点的新经济革命。随着计算机硬件技术和网络交易法律法规的日益完善,网络购物营销已成为企业的主渠道。公司建立网站,在网络上展示他们的广告和服务。通过英特网可以使用户轻松方便地实现网上购物、商品购买、物流信息实时跟踪查询等功能。在改变原有线下实体经营模式的基础上,也为商家带来了更高的利润,如降低线下门店租金、日常水电费等成本。现在疫情反反复复,人们都不能外出,但每个女生对外在美又是十分在意的,从而女生对化妆品的市场需求是十分强大的,我认为美妆网上销售平台有着很大的发展前景。

1.2.2发展趋势

我在调研时查看了市场上已经存在的美妆线下实体店以及美妆类型的网站,发现了他们的漏洞。线下美妆商品结构不合理以及商品品种不齐全、各款仓库数量少,对顾客造成了一定的选择局限。当然还存在线下员工的漏洞,通常情况下,好的销售人员和一般的销售人员的所产生的销售额差距是成倍出现的,这个差距说明:卖的好的员工工作能力强,能把客户资源捞的多,而一般员工能力弱,把进店部分顾客资源漏掉了。还有些员工用顾客穿着来判断顾客是否有钱,是否自己真诚对待,从而错过美妆的销售额。实体店中还存在促销活动的漏洞,各个品牌的化妆活动促销,主要是会员双倍积分、商品买二送一等等,这种活动没有针对性,同时也没有差异性,很容易得到竞争对手的抄袭。在刚刚开始的时候,这种促销方式可能发挥了很大的作用,但是经过长时间当所有的店都采取这样的活动的时候,就不会起到让人满意的效果。而美妆店的人员已经默认了这样普遍又没有新意的做法,很多商店没有意识到这样已经失去了吸引力。我个人认为美妆网上销售平台的建设是十分有必要的,后续美妆平台上上传各种不同的美妆产品,从而进一步对平台进行发展和完善线上的美妆市场。

1.3研究内容

网络的普及,美妆博主的威慑力日增,越来越多的女生更加注重自己的外在形象。同时响应国家疫情期间没必要不外出的号召,精致的女生选择用网购的方式来代替实体购物。在大学生涯中,通过专业课理论的学习来设计一个美妆网上销售系统,这个系统能够为广大的爱美人士提供一个买化妆品的平台。用户们可以在美妆平台上搜索浏览自己心意的化妆品,收藏或者下单自己想买的产品。本系统准备设计了两类用户,管理员和普通购买用户。后台管理员的主要功能包括美妆产品信息的增删改查、统计月销售额等功能;普通用户可通过平台搜索自己心仪的化妆品,并对其进行下单等操作。

在实际性能方面,数据库结构做到设计合理,确保更好地存储整个平台数据;系统正常运行,平台界面友好设计,使整个平台看起来有一定的灵活性和可塑展性;系统安全性高,不同用户之间的操作权限合理分配;此外,数据处理的结果以直观清晰的图形界面显示给用户。

1.4研究意义

网络信息技术时代的来临,电子商务已变成销售经营的主要渠道。各个商家发现开网店已成为时代主流,便建立自己的专属网站,后将自家的店面宣传和产品服务展现于英特网中,从而可以借助网络实现用户上网选购、各种商品查询、订单跟踪等功能。在改变销售模式的同时,更为商家带来了宽厚的利益。建立一个属于自己的网站对商家来说是至关重要的。

美妆网上销售进行交易的大多数是爱美人士,他们搜索自己需要的化妆品,可查阅化妆品的信息详情,比如价格,毫升数、产地、适用肤质等等,用户可自行选择加入购物车后进行下单或者将产品进行收藏。而管理者通过自己的私密账号登入后台,可对所有商品进行删除或者添加新产品,对已经下单的订单进行发货等等功能。此美妆平台对用户有一定的方便性,对商家来说可以提高经济效益,如果出现售后问题,商家一切以用户利益为前提,对商品进行对应的售后操作。

作为美妆网上销售的系统设计者,我觉得这个系统能够使用户和管理者获得共赢,同时,我也能够将所学的理论知识应用起来去设计这样的系统。



















2. 相关技术介绍

2.1 JSP

JSP是一种动态网页编程技术。与HTML技术不同,HTML是静态页面,即页面上的数据全都是静态的,但JSP是动态的,能够动态的从服务器中去获取数据库中的数据。如今更多的项目数据都不会写在页面上,因JSP技术应用广泛,此系统采用的正是动态获取的JSP技术。JSP技术可以在页面中嵌套Java代码,为用户提供动态数据;JSP除了利用代码产生动态数据的同时,也很容易对数据进行排版。当我们第一次访问JSP的时候,JSP引擎都会将这个JSP翻译成一个Servlet,把Servlet作为web应用中的控制器组件来使用,而把JSP技术作为数据显示模板来使用。

被系统的前端页面均使用JSP实现,当用户在浏览器输入地址后即可访问该网站。比如前台用户注册页面、购买商品页面、商品浏览页面等;后台管理员添加商品页面,订单管理页面等。

2.2 Java语言

Java是一门面向对象的编程语言,最贴近人类的思维模式,能模拟现实世界,解决现实问题。它简单易学,安全可靠,并且基于java虚拟机以实现一次编译,可以在不同的平台上运行。Java具有简单性,是自动内存管理机制,从而不易造成内存溢出;基于借鉴其他语言的特性,简化了流程的处理、简化了语义。Java具有跨平台的特性,可以应用在不同的操作系统、服务器或者数据库中,从而达到Java的目标:一次编写,多次运行。C++语言没有内置的多线程机制,因此必须要调用操作系统的多线程功能来进行多线程的程序设计,而Java语言却停工了多线程的支持,所以Java有支持多线程的特点。Java语言的诞生本身就是为了简化网络编程而设计的,所以Java语言不仅支持网络编程而且很方便。

本系统的数据处理是由Java实现的,src以下均为Java开发的业务逻辑代码,包含contrller、service、dao、model实体和untils工具类等,处理用户通过jsp页面发过的请求以及做出相对应的回应。比如:用户在登录的jsp页面输入账号和密码,java里的contrller就接收到了账号和密码,调用service,然后调用dao生成对应的sql语句查询mysql数据库,然后返回查询结果给前端,告诉用户是否登录成功。


2.3 MySQL数据库

MySQL是一个关系型的数据库,里面存储着不同类型的数据表,不具体指定其存储的方法,从而提高了数据检索的速度。MySQL存在着许多的功能特点,比如:速度快、开源、成本廉价等等。在本系统中,美妆产品的详尽内容、用户、管理员的基本信息、购物车中的产品等等数据都离不开数据库,数据库是一个平台的重要环节。

本系统采用mysql8进行数据的存储,比如用户表、商品表、订单表、评论表等。

2.4 SSM框架

本课题的框架采用的是SSM框架。SSM框架是Spring MVC +Spring + MyBatis框架的整合。首先,Spring MVC框架是处理所有的HTTP请求和响应的。其中,M是model(模型),封装了应用程序的数据;v是view(视图),负责呈现model的数据和一般它呈现的HTML的输出。C是controllor(控制器),负责用户处理的请求,并且为这些请求建立适当的模型,然后把模型数据返还给前端,也就是传给视图进行渲染。一般分为四层:DAO层、Service层、Controller层和View层。

Springboot就相当于一个管家对项目进行管理和配置,比如数据库连接池的配置、图片上传设置、资源映射等。Myibats主要实现Java代码与mysql的交互,实现数据持久化。

2.5 Jquery插件

jQuery是一个快速、简洁的JavaScript 框架,设计的宗旨是写更少的代码,做更多的事情。它封装JavaScript常用的功能代码,提供一种简便的JavaScript设计模式 ,优化HTML 文档操作、事件处理、动画设计和Ajax交互。jQuery的核心特性可以总结为:具有独特的链式语法和短小清晰的多功能接口;具有高效灵活的CSS选择器,并且可对CSS 选择器进行扩展;拥有便捷的插件扩展机制和丰富的插件。 本系统前端页面的数据交互,比如商品详情页里的评论就是采用了ajax实现的数据交互,比如导航上二级菜单的展示与隐藏就是采用juqery的css方法和鼠标事件实现的。



2.6 Bootatrap框架

为了前端页面的整洁美观,本系统使用了bootstrap的前端框架,快速搭建页面。Bootstrap是基于HTML、CSS、JavaScript  开发的简洁、直观、强悍的前端 开发框架,使得 Web 开发更加快捷。Bootstrap提供了优雅的HTML和CSS规范,它即是由动态CSS语言Less写成。


2.7 jquery.photoClip.js图片剪裁插件

jQueryphotoClip是一款既支持移动设备触摸手势的图片裁剪jQuery插件,同时也至此web端对图片进行旋转、放大、缩小等操作的剪裁。为了页面上的商品图片大小一致,展示的时候美观而不变形,本系统采用该插件,可对用户上传的头像进行剪裁和压缩,对轮播图进行一定比例的裁剪,包括管理员上传商品图片时也是用该插件进行了裁剪。

2.8 simditor.js富文本编辑器插件

Simditor是一个基于浏览器的所见即所得的文本编辑器。 相比传统的编辑器它的特点是: 功能精简,加载快速输出格式化的标准 HTML 每一个功能都有非常优秀的使用体验。本系统中,管理员在发布商品的时候需要填写商品详情,由于商品详情内容多样,既有图片又有文字,所以采用富文本编辑器最合适,由于Simditor使用简单,学习时间成本低,能快速掌握使用,所以本系统使用该插件实现了商品详情的图文混排。

2.9 pagehelper分页插件

PageHelper是国内非常优秀的一款开源的mybatis 分页插件,它支持基本主流与常用的数据库,例如mysql、oracle、mariaDB、DB2、SQLite、Hsqldb等。使用简单,学习成本低,最重要的是可以对各种复杂的sql进行分页和排序处理,其分页后的PageInfo对象,包含了分页的所有信息,比如是否有下一页和上一页、总条数、每页显示几条数据、当前第几页等,足够前端分页展示使用。可以帮助我在开发过程中省去大量而又复杂的分页代码,既轻松又省时的开发,大大提高了我的开发效率。本系统所有的分页均有该插件完成,比如首页商品的分页展示、评论的分页加载、订单的分页等。

2.10 poi插件

POI提供API给Java程序对Microsoft Office格式档案读和写的功能。本系统使用poi实现了商品销量的excel导出功能,方便管理员及时调整商品的进出货方向。

2.11 highcharts.js统计图表插件

Highcharts是一款纯javascript编写的图表库,能够在Web网站或Web应用中添加交互性的图表。为了使管理员可以更直观的了解自己的商品销售以及营业额的情况,使用该插件实现了商品月销量统计折线图,商品年销量比例扇形图,商品营业额折线统计图等。使用简单,样式简洁美观,支持多维和单维展示,点击图表还可选择性的展示某些数据,看起来更直观,使用也方便。

2.10本系统运行环境

开发工具:eclipse

开发环境:jdk8,jre

数据库环境:mysql5.5以上

服务器:Tomcat8.5

    其他工具:navicat(mysql图形化工具),浏览器(谷歌、360、火狐等)


























3. 需求分析

3.1可行性分析

3.1.1技术可行性

运用软件工程的系统分析和设计思想对该系统的开发进行系统全面的策划,通过系统需求分析之后再对此美妆系统进行详细完整的数据库和前后端各个功能的设计,下一步就开始编码实现具体功能。最后,通过系统测试来测验此系统的正确性与可靠性。

3.1.2经济可行性

美妆网上销售系统和线下一些实体美妆店相比而言还是有一定的闪光点,比如减少房租费用以及运营这个线下店面产生的所有额外费用。而网上开店的主要支出只存在网站建设的一次性付费、聘请专门的网络技术人员、维护网站安全方面。从某种程度上说,线上销售的利润远远大于线下实体店的利润,但核心的效益是为用户节省了大量的购物时间;其用最低的投入来获得最高的效益。

3.2系统功能分析

为了便于平台管理和方便用户操作,在功能设计的时候需要考虑到基本功能的合理性,美妆网上销售系统分为普通用户角色和后台管理员角色。

普通用户:

(1)用户管理功能:新用户可实现用户的注册,显示个人资料,修改个人信息等等。

(2)浏览搜索功能:帮助客户进行商品的检索,快速的找到其所想要的商品。用户可浏览页面查看商品详情,可加入购物车或者将商品进行收藏。

(3)订单查询功能:用户可以通过订单号在此处对所购商品的订单信息进行查询等等。

后台管理员:

(1)用户数据管理:管理员可查看用户的信息,同样也包括对用户的增删改。

(2)商品数据管理:系统管理员对所有商品进行管理,主要是包括对商品的增删改查,同时也可以看到商品的库存数,以便及时进货,从而防止缺货等情况的发生。

(3)订单管理:包括对客户订单的处理以及对已经发货记录的查询,管理者可以在此查看客户所购买的商品订单。

(4)售后维护:管理员对客户留言进行查看,根据用户的需求进行一次完美的购物过程。

3.3功能结构图

通过对项目的需求分析以及对社会上人们的需求调查之后,将美妆网上销售系统分为用户模块和后台管理员模块。具体的功能如图1所示:

图1 功能结构图

3.4系统流程图

当用户进入用户界面的时候,如果用户没有账号的话则需要用户创建属于自己的账号;如果注册成功则可进入登录界面,当然,如果用户注册失败则需要重复进行刚刚的注册步骤再次进行用户注册。如用户已注册过即就可以直接选择用账号和密码进行登录。如登录错误会有错误提示,用户进行二次登录;反之用户进入个人信息和修改密码界面。具体的用户流程图如图2所示:

图2 用户注册登录流程图


当后台管理员进入美妆产品后台界面的时候,如果管理员没有账号的话则需要管理员进行创建属于自己的账号;如果注册成功则可进入后台管理功能,如果注册失败则需要再次进行注册。如果管理员注册过,就可选择用账号和密码进行登录。如登录时输入错误会有错误提醒,管理员可进行二次登录。具体的管理员流程图如图3所示:

图3 管理员注册登录流程图


美妆平台整体的流程图如图4所示:

图4 美妆平台整体流程图


3.5技术流程图

美妆网上销售平台的技术流程图如图5所示:

图5 技术流程图







4. 数据库设计

4.1数据库实体设计

E-R图表示实体、属性和联系它们三者之间的关系,用来描述现实世界的概念模型。

用户实体,属性包括用户注册手机号、用户登录时密码、用户昵称、角色、创建时间等等,其E-R图如图6所示:

图6 用户实体E-R图

商品实体,属性包括商品名称、商品的销量及库存、在首页显示的价格、商品上下架时间、商品图片等等,其E-R图如图7所示:

图7 商品实体E-R图

购物车实体,属性包括商品id、用户id、购买数量、创建时间、商品的单价及总价等等,其E-R图如图8所示:

图8 购物车实体E-R图

订单实体,属性包括订单号、商品id、用户id、收货地址、购买的数量、总价等等,其E-R图如图9所示:

图9 订单实体E-R图

收获地址实体,属性包括用户id、收货人姓名、创建时间、电话、地址和默认地址,其E-R图如图10所示:

图10 收货地址实体E-R图

评价实体,属性包括订单id、用户id、视频id、评分、评价内容和创建时间,其E-R图如图11所示:

图11 评价实体E-R图

月销量实体,属性包括商品id、月销量,月份、创建时间、月营业额;其E-R图如图12所示:

图12 月销量实体E-R图

系统的E-R图如图13所示:

图13 系统整体E-R图

4.2数据库表设计

根据此系统的E-R图,可分析出各个实体中属性之间的关系,则可设计出每个实体的数据库表。

用户表用来存放用户的基本信息,比如注册的手机号、登录密码或者用户性别其等等,如表1所示:





字段名称

字段类型

允许为空

最大长度

备注

phone(主键)

varchar

20

注册手机号

upass

varchar

30

密码

nickname

varchar

-

昵称

faceing

varchar

-

头像

role

varchar

10

角色 admin是管理员,pt是普通用户

cts

varchar

20

创建时间

sex

varchar

1

性别

表1 用户表sp-users

月销量表用来存放一个月卖出的美妆商品的信息,比如美妆产品的id、月销量的数据、月份、月营业额等等,如表2所示:

字段名称

字段类型

允许为空

最大长度

备注

goods_id(主键)

varchar

20

商品id

sales

int

-

月销量

smonth

int

12

月份

cts

varchar

-

创建时间

total_money

float

-

月营业额

表2 月销量表sp-goods-sales














商品表用来存放美妆商品的信息,比如商品名称、商品详情、销量、库存、规格、商品图片、浏览量等等,如表3所示:

字段名称

字段类型

允许为空

最大长度

备注

gname(主键)

varchar

30

商品名称

gdesc

text

-

商品详情

sales

int

-

销量

stock

int

-

库存

gsize

varchar

-

商品尺寸

spec_price

varchar

-

规格

showprice

float

-

首页展示价格

cts

varchar

-

创建时间

putaway_ts

varchar

-

上下架时间

is_putaway

varchar

-

1上架0下架

main_img

text

-

商品图片

view_num

int

-

浏览量

evel

int

-

总评分

evaluation_num

int

-

总评分次数

is_especially

int

-

是否特价 1特价 0不是特价

pri_price

int

-

原价

表3 商品表sp-goods

购物车表用来存放用户选择的美妆产品,比如商品id、用户id和商品总价等等,如表4所示:

字段名称

字段类型

允许为空

最大长度

备注

goods_id(主键)

varchar

20

商品id

uid

varchar

20

用户id

num

int

-

购买数量

cts

varchar

-

创建时间

ginfo

varchar

-

商品信息,比如规格等等

gprice

varchar

-

商品单价

tital_price

float

-

总价

表4 购物车表sp-carts


订单表用来存放用户下单的情况,比如选订单号、商品id、用户id、商品单价、收货地址、购买数量等等,如表5所示:

字段名称

字段类型

允许为空

最大长度

备注

orderNo(主键)

varchar

30

订单号

gid

varchar

20

商品id

uid

varchar

20

用户id

ginfo

varchar

-

商品信息,比如规格等等

gprice

float

-

商品单价

cts

varchar

-

创建时间

addressinfo

varchar

-

收货地址

num

int

-

购买数量

Total_price

float

-

总价

note

varchar

-

备注

isplay

varchar

-

1付款 0没有付款

pay_ts

varchar

-

付款时间

pay_method

varchar

-

微信或者支付宝付款

send_ts

varchar

-

发货时间

is_send

varchar

-

1发货 0没有发货

is_accept

varchar

-

1确认收货 0没有确认收货

accept_ts

varchar

-

确认时间

evaluate_ts

varchar

-

评价时间

is_refund

varchar

-

1已评价 0没有评价

is_refund

varchar

-

0初始 1退款 2申请退款

refund_ts

varchar

-

申请退款时间

is_show

varchar

-

1展示 0删除

del_ts

varchar

-

删除时间

表5 订单表 sp-orders

评价表用来存放用户对美妆产品评价的信息,比如选订单id、用户id、视频id、评分、评价内容等等,如表6所示:

字段名称

字段类型

允许为空

最大长度

备注

orderNo(主键)

varchar

30

订单id

uid

varchar

20

用户id

gid

varchar

20

视频id

evel

varchar

-

评分

context

varchar

-

评价内容

cts

varchar

-

创建时间

表6 评价表sp-evaluation

收货地址表用来存放用户下单后商品的收获地址信息,比如选用户id、收货人姓名、电话、地址等等,如表7所示:

字段名称

字段类型

允许为空

最大长度

备注

uid

varchar

20

用户id

aname

varchar

-

收货人电话姓名

cts

varchar

-

创建时间

phone

varchar

11

电话

a-add

varchar

-

地址

is-del

varchar

-

1默认地址 0不是默认地址

表7 收货地址表sp-address














5. 系统设计

5.1框架设计

美妆上销售系统的设计与实现的功能设计从用户和后台管理者两个角度来进行划分设计。

用户的功能模块有:平台注册模块、修改用户个人信息模块、浏览美妆商品模块、搜索商品模块、用户购买商品模块、跟踪查询订单模块等等。

后台管理员功能模块有:广告轮播模块、商品管理模块、订单管理模块、网站建议模块等等。

框架搭建

本系统采用ssm框架开发,首先需要搭建一个javaweb工程,然后引入jar包,以及配置文件和分包,框架结构如下:

Src下放的均是Java代码,cons是常量包比如图片上传路径、分页数量等;controller是孔子器主要处理前端用户发过来的请求,admin是是处理管理员请求,jsp包处理注册用户的请求;dao是mapper层的接口类,主要调用mapper里的sql;interceptor是登陆拦截器,对未登录用户的非法请求进行拦截;mapping里组要是xml文件,对数据进行添加、编辑、查询、删除等sql语句;model是实体层;service和serviceImpl分别是业务层和实现层;untils是工具类,比如图片上传工具类、导出excel工具类。

Config是放置配置文件的,比如springmvc配置文件、myibats配置文件。

Webapp是放置前端页面的,admin包是管理员页面,jsp包是注册用户页面。

创建mybatis配置文件

Mybatis主要是Java和mysql数据库连接的桥梁,使用Mybatis可以快速高效的完成程序和数据的交互,封装数据的增删改查等方法,提高代码的复用性,而不是随时随地写sel语句,既减少了代码的冗余也增加了代码的拓展性。

该文件主要配置了数据库的连接,pagehelper的分页使用,以及最重要的dao层扫描。

其中数据库连接使用了jdbc.properties文件,代码如下:

配置springboot

该文件主要是设置了视图解析器,因为contrller要要处理前端请求和页面跳转以及数据渲染至页面,本系统采用注解的方式扫描注册contrller;还配置了上传文件的大小,静态资源的映射,登录拦截器注册记忆json转化(ajax请求和返回数据处理使用)等。

配置log日志

为了方便实时调式项目配置log4j,这样程序启动之后,控制台就可以打印出sql语句,方便观看和调试代码。

配置web.xml

Web.xml是Java动态web项目的配置文件,在webapp/WEB-INF下。当项目启动的时候,WEB容器会去读取web.xml,此时需要把sprin-mvc.xml和mybatis.xml、log4j引入到web.xml里,这样springMVC和mybatis、log4j才会起作用,如下图所示

为了避免出现中文乱码的情况,web.xml里面还配置了编码过滤器,本项目主要使用了utf-8的编码。使用Spring的DispatcherServlet作为默认Servlet后,会拦截静态资源,此处,在web.xml里配置不拦截静态资源,比如图片、css、js等。

文件上传配置虚拟路径

文件上传组要使用UploadFile工具类实现,本系统会将文件上传至D:/upimgs,所以tomcat服务器需要设置虚拟路径。如下图

设置图片虚拟路径的好处就是把图片的代码分开,互不影响。




5.2后台管理员模块

5.2.1登录模块

后台管理员可根据以前注册过的账号和密码进行登录,登录成功即可进入后台管理员界面。由于该系统分为两个角色:管理员和注册用户,为了区分,所以在用户表里用了一个role字段标识身份,role等于admin则表示是管理员有权限登录后台,role等于pt则表示注册用户,没有权限登录后台。

5.2.2广告轮播模块

在广告轮播模块中,管理员可以更换平台首页显示的美妆图片,任意切换图片的位置。主要有轮播图的添加、编辑、删除、上传图片以及根据备注快速查找和分页功能。

5.2.3标签分类管理模块

在标签分类管理模块中,管理员可以对已有的美妆标签进行查找,也可以添加新的美妆标签;可对标签在新建的基础上进行编辑或者删除。

5.2.4商品管理模块

在商品管理模块中,管理员可以看到或者查找所有已经上架的美妆产品,可以对原有产品再次编辑、删除或者进行商品下架的操作,同时,管理员可以添加发布新的美妆产品。

5.2.5订单管理模块

在订单管理模块中,管理员可查看用户待支付订单、代发货订单、已发货订单、用户待评价订单、已完成订单等等。

5.2.6商品统计模块

在商品统计模块中,管理员可根据以往用户下单的所有订单中查看哪一款美妆产品销量高,可后期对于类似的美妆产品进行高频率上架,对销量不好的产品可适当的进行下架,从而达到高销售额、高利润。

5.2.7用户管理模块

在用户管理模块中,管理员可以看到所有已注册过的用户信息,比如用户头像、用户昵称、用户性别、用户账号注册的时间。

5.2.8网站建议模块

管理员可根据用户在平台上提出的问题进行针对性回复解答,让用户获得一次满意度的美妆购物体验。

5.3用户模块

5.3.1用户注册登录模块

没有注册过的用户只能浏览美妆产品主页,将产品加入购物车或者对美妆产品进行下单等等操作都无法操作成功;之前已经注册过的用户,可用用户手机号和密码进行登录,正确登录进去之后可进行一系列的用户操作;如果用户没有输入正确的用户手机号或者密码,平台会有错误提示,让用户进行重新登入。

5.3.2用户个人信息模块

在用户个人信息模块中,可修改用户的基本信息、修改登录密码、编辑收货地址,也可以提出网站建议。

5.3.3美妆产品浏览模块

用户可以在平台主页上浏览所有已经发布的美妆产品,查看产品的图片、价格、产地、详情信息等等。

5.3.4美妆产品购买模块

用户可在美妆平台上挑选自己心仪的产品加入购物车并可选择付款下单,下单之后,可在“我的订单”中查看待发货订单、待评价订单、待退款订单等等。



























6.美妆网上销售系统的实现

6.1用户登录界面

此页面是普通用户登录美妆平台的页面,当用户输入手机号和密码之后,再点击登录按钮之后,系统会从数据库表中提取对应的数据,进行对比,如果正确的话,可进入其他的操作,如果用户输入不正确的话,会有错误提示。如图14所示:

图14 用户登录图

用户登录主要代码如下:

6.2用户注册界面

新用户可在注册界面中根据平台上的提示输入对应的手机号、密码、昵称、性别等信息,再点击红色注册按钮之后即可完成用户注册这一操作,新用户的注册信息都会保存在相应的用户表sp-users中。用户注册界面如图15所示:

图15 用户注册界面图

用户注册主要代码如下:

6.3浏览美妆产品界面

此界面可实现用户浏览美妆产品的功能,用户可用分类的方式筛选产品,也可以通过关键词对已经上架的产品进行搜索,点击产品之后则可进入产品的详情界面。如图16所示:

图16 浏览产品界面图

用户浏览产品主要代码如下:

6.4购物车管理界面

用户完成登录之后,在此美妆平台上挑选心仪的产品并可加入购物车,放入购物车,可清楚看到每件产品的单价、数量或总价等等,方便用户进行付款下单。如图17所示:

图17 购物车界面图

购物车界面主要代码如下:

6.5订单记录界面

在订单记录界面中,用户可以看到自己已下订单的状态,可对订单进行确认、评价或退款等等操作。如图18所示:

图18 订单记录界面图

订单记录界面主要代码如下:


6.6管理员登录界面

后台管理员输入正确的账号和密码之后点击绿色的登录按钮,就可进入美妆平台的后台管理界面,如果输入错误,会有错误提示,可再次重新输入。如图19所示:

图19 后台登录界面图

管理员后台登录界面主要代码如下:

6.7广告轮播界面

在广告轮播界面中,后台管理员可以更改或删除首页的海报。如图20所示:

图20 广告轮播界面图

广告轮播界面主要代码如下:



6.8商品管理界面

管理员在商品管理中,对已上架的美妆产品进行查看、编辑、删除或者设置商品的上架、下架的状态;还可以添加新的美妆产品进行发布,可供用户进行选择。如图21所示:

图21 商品管理界面图

广告轮播界面主要代码如下:

6.9订单管理界面

管理员可以看到所有订单的状态,比如用户待支付订单、商品代发货订单、已发货订单等等;管理员还可以根据订单号、商品名称或者其他字段对订单进行查找的操作。如图22所示:

图22 商品管理界面图

订单管理界面主要代码如下:



6.10分类管理界面

此页面可实现美妆产品的分类管理功能,显示产品的分类列表,后台管理员可以点击“编辑”按钮对分类信息进行修改;点击“删除”按钮,可删除分类信息;点击“查找”按钮,可对已有的标签进行查询;点击“添加”按钮,可添加新标签。如图23所示:

图23 商品分类管理界面图

分类管理界面主要代码如下:


6.11商品统计界面

管理员在商品统计模块中可以根据美妆产品名称或者日期来看产品的销售量或者营业额,后台根据商品的月销售和营业额形成柱状图;可以让管理员清楚的知道一个月的美妆销售量和销售额。如图24、图25所示:

图24 商品统计界面图

图25 商品统计柱状图

美妆商品统计主要代码如下:


6.12网站建议界面

用户对此美妆平台有疑惑的地方可进行留言,后台管理员看到用户的留言之后进行针对性的答复,让用户获得一次满意的购物体验。如图26所示:

图26 网站建议界面图

美妆商品统计主要代码如下:



7.美妆网上销售系统的测试

7.1测试的意义

系统测试是在产品发布前对系统的整体功能进行测试。测试后,可以发现系统的错误以及实际使用系统时出现的问题。这样可以在系统交付前对系统进行改进和完善,有利于防止用户在体验过程中出现不良问题。

在经过前期的一系列调研和设计,一个完整的美妆网上销售系统已经完成,但系统中仍然会存在一些问题,但可通过系统测试可发现问题,然后进行修改,降低系统出故障的可能性,从而减少平台正式发布之后所造成的损失。因此,对本系统做系统测试是十分必要的。

7.2测试的原则

(1)是否满足平台所有的开发功能,实现该实现的功能,不许出现不该实现的功能。

(2)测试的方式包含合理的测试以及不合理的测试。

(3)对每一个测试的结果进行仔细检查,不将错误存留至平台中,不遗漏错误。

(4)严格遵守测试计划,不随意改变原始计划。

7.3功能测试

此系统的测试主要有两部分组成,前台各功能模块的测试以及后台各功能模块的测试。(1)前台各功能测试

运行普通用户注册功能时,有效验证用户注册信息的正确合法性。运行登录功能,注册用户可用账号密码正常登录。执行密码更改功能,用户可以修改个人密码。执行“个人信息修改”功能,以确保用户的个人信息可以正确访问并能够成功修改。在执行将商品加入购物车的操作时,用户可以看到商品的个数、商品的单价、总价等等。在下订单付款完成时,用户可以在我的订单里面查看订单号以及订单详情等信息。

(2)后台各功能模块

运行管理员注册的功能时,有效验证管理员注册信息的合法性。运行登录功能,注册的管理员可以正常登录。执行密码修改功能,管理员可以正常更改个人密码。执行“个人信息修改”功能,以确保管理员的个人信息可以正确访问并能够成功修改。管理员在执行新添加美妆产品时,根据输入产品信息、上传产品图片,点击发布按钮,即可看到新发布的美妆产品。运行商品管理时,管理员可完成对商品的上架、下架、查看商品货存操作。

用户只有在输入正确的账号和密码之后才能进入本系统。如果账号和密码其中有一项输入错误则不能进入系统,平台会有错误提示。用户登录功能测试,如表8所示:

特性

用户登录

目的

登录时输入信息是否合法正确

数据

账号:00000000 密码:000000

编号

操作描述

数据

预期结果

测试结果

测试状态

1

输入用户账号,点击“登录”

账号:000000,密码:00

显示“账号或密码有误!”

显示“账号或密码有误!”

和预期结果一致

2

输入用户账号,点击“登录”

账号:0

密码:0

显示“账号或密码有误!”

显示“账号或密码有误!”

和预期结果一致

3

输入用户账号,点击“登录”

账号:000

密码:0

显示“账号或密码有误!”

显示“账号或密码有误!”

和预期结果一致

4

输入用户账号,点击“登录”

账号:

00000000000

密码:000000

成功进入用户界面

成功进入用户界面

和预期结果一致

表8 用户登录测试用例表

每一次后台管理员发布新的美妆产品时,产品名称和销售的价格是必须要填写的;如果产品没有发布成功的话那就暗示着商品名称和销售价格其一样没正确填写。另外,发布产品时上传的图片格式只能是jpg或png类型。添加美妆产品功能测试,如表9所示:

特性

产品发布

目的

产品发布时输入信息是否合法正确

数据

产品名称:唇釉 价格:55 产品信息(非必填):空 产品图片(必填):chunyou.jpg

编号

操作描述

数据

预期结果

测试结果

测试状态

1

编辑产品信息,点击“发布”

名称:唇釉

价格:55

图片:空

显示“插入图片”

显示“插入图片”

和预期结果一致

2

编辑产品信息,点击“发布”

名称:唇釉

价格:55

图片:

chunyou.ppt

显示“图片格式错误,请重新上传”

显示“图片格式错误,请重新上传”

和预期结果一致

3

编辑产品信息,点击“发布”

名称:唇釉

价格:空

图片:

chunyou.jpg

显示“请输入产品价格”

显示“请输入产品价格”

和预期结果一致

4

编辑产品信息,点击“发布”

名称:空

价格:55

图片:

chunyou.jpg

显示“请填写产品名称”

显示“请填写产品名称”

和预期结果一致

表9 发布产品测试用例表

























结束语

一开始上网自选课题到被老师确定选中,再紧接着指导老师下发任务书,其开题报告的撰写,又经过开题报告的答辩,答辩通过后又对本系统进行资料的收集和调研,学习相关知识,让我对大学时间里学到的专业知识进行了巩固和综合使用,此外还学习了许多新知识,我的专业能力有了很大的提高。对我以后的工作有了很大的帮助。

通过需求分析、功能设计等等调研,完成了美妆网上销售平台的开发。从功能分析、模块设计到最后的代码实现,前前后后大概花了一个月多的时间。这是我第一次开发一个交易平台,也是第一次接触SSM框架。在一开始平台设计的时候,思路是混乱的,都不知道从哪一步开始下手;再加上平台的功能比较多,数据库表与数据库表之间的联系也没有考虑清楚;但是,通过此次自己亲手完成毕设的经历,让我获得了许多有益的知识,也让我有了前所未有的收获。

在毕设开发和撰写论文中,我发现了自身的问题,同时,也纠正了自己的学习习惯并改正了缺点。只有通过自己动手才能获得进步,想起了老一辈说的话——“实践是检验真理的唯一标准”,学会在实际学习工作中将书本上的知识活学活用。

通过此次毕业设计得出的体会:一个系统一定在开发之前做好充足的调研,在设计的时候一定要想全面,要有一定完整性;在对毕设进行开发时,敲代码一定要懂得举一反三、勤思考;虽然说每一种编程语言之间有类似点,但还是有一定的区别;比如有时候方法不一样,但最后呈现的效果是一样的,我们在开发过程中要注意不能出错。
















参考文献

[1]    网页设计与制作教程(HTML+CSS+JavaScript)第2版.机械工业出版社[M].2019.3

[2]    耿祥义,张跃平编著. Java2实用教程[M].清华大学出版社.2017.5

[3]    罗如为. Java Web开发技术与项目实战.水利水电出版社.2019.7

[4]    马建红.JSP应用与开发技术.第三版.清华大学出版社.2018.6

[5]    贺特克著,潘玉琪译.SQL Server 2008从入门到精通[M].清华大学出版社.2016.4

[6]    Java编程思想(第4版) .机械工业出版社[M].2018.6

[7]    Java EE (SSM) 企业应用实战.清华大学出版社[M].2019.8

[8]    朱晓等编著.Java Web开发学习手册[M].电子工业出版社.2017.4

[9]    MySQL 从入门到项目实践(超值版).清华大学出版社[M].2018.9

[10]Java从入门到精通(微视频精编版).清华大学出版社[M].2019.8

 






















致谢

做毕设、写论文的这一学期过的异常的快,转眼间,我的学习生活已进入最后的阶段。

首先我要感谢人工智能与信息技术学院的各位领导和老师,感谢各位老师在我学习上的帮助,能让我充实的度过了美好的本科学习生活。在这里我特别感谢吴丽老师,她是我此次的毕设指导老师,也是教过我Java课程的老师。虽然她平时还要教其他班的学生,但是她对于我们的关心是从不会变少的。在此次的毕业设计和攥写论文中,我每次问老师问题,她都会一看到消息就回复我,有时候怕打字表达不清楚,还会在腾讯会议上一对一仔细详细的帮我解答。从一开始的毕设选题到最后的论文完成,吴老师花了很多心血,如果没有老师的指导,我也不可能完成此次的毕设。

此次的毕业设计和论文对我来说是一次很好的实践机会,在平常课堂上学的理论知识都是表面的,只有通过自己的实践操作,才能知道哪一部分的理论知识是自己还没有掌握的,后期还需要多看视频、多理解。自己实践过,才能记得更加清楚。

我还要感谢本科阶段教过我们课程的任课老师,他们课前认真备课,课堂上对知识全神贯注的讲解,让我学到了许多专业知识。我们班的辅导员在我们身上花了很多的时间,学院一有大事就会组织全班同学开班会,时刻提醒我们不能违反校规,时刻关心我们班同学的身体心理情况,及时做好辅导工作。平时学习中,同学之间的互帮互助,团结友爱,让我在一个充满爱的班级中学习生活。正是有了你们的陪伴,短短的本科生活,让我有着难忘的回忆。

我还要感谢我的父母,让我接受本科教育;正是父母的支持和关心,让我有不断向前的动力。更要感谢学校,出资为学校图书馆新添最新工具书,让我获得了无穷无尽的知识,拓宽了视野,提高知识储备量。我认为人生还有很长的路要走,在这一路上,我们始终要坚持,走向下一个山峰。

最后,我要感谢参加审阅和论文答辩小组的老师们,您们辛苦了。

好博客就要一起分享哦!分享海报

此处可发布评论

评论(0展开评论

暂无评论,快来写一下吧

展开评论

您可能感兴趣的博客

客服QQ 1913284695