Java基于ssm(可以转springboot项目哦)开发的美妆商城系统,主要是卖化妆品的系统,用户可以浏览商品,加入购物车,下单,在个人中心管理自己的订单。管理员可以管理自己的商品,发布商品,上下架商品,管理订单等。
可用eclipse或者idea打开,跟开发工具没关系,都可以运行。
演示视频 https://www.bilibili.com/video/BV1kq4y197Xt/?share_source=copy_web&vd_source=ed0f04fbb713154db5cc611225d92156
代码讲解视频
https://www.bilibili.com/video/BV1kq4y197Xt/?p=2&share_source=copy_web&vd_source=ed0f04fbb713154db5cc611225d92156
https://www.bilibili.com/video/BV1kq4y197Xt/?p=3&share_source=copy_web&vd_source=ed0f04fbb713154db5cc611225d92156
Ssm(spring+springMVC+myibats)+ajax+bootscrap+css+jq+js+图片剪裁和压缩 +highcharts+simditor图文编辑器
首页,搜索商品,详情页,可选择尺寸,衣服颜色,根据不同规格显示不同的商品价格,加入购物车,立即购买,评价列表展示,商品详情展示,商品评分,分类商品,标签查询,更多分类查询 ,特价商品查询,网站建议
用户:
登录(密码MD5加密),注册,修改密码,收货地址管理,购物车,确认支付订单修改收货地址,添加备注,待支付订单,待发货订单,待收货订单,待评价低订单,已完成订单,申请退款订单,已退款订单,取消订单,删除订单,查看评价信息,我的购物车(可修改购买数量,可删除,可批量付款,也可单个付款)
管理员:
商品分类管理(排序),商品标签管理,商品管理(可灵活设置商品尺寸没规格参数和不同的价格,图文混合编辑),订单管理(未付款,待发货,待确认,待评价,已完成,待退款,已退款,查看评价。订单没有合并,是一个商品一个订单那哦),用户管理 ,商品月销售统计(拍下即减),统计图,导出月销量excel,轮播,网站建议回复
java开发的美妆化妆品电商商城系统论文
目 录
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所示: