基于SSM的有爱花店系统的设计与实现

摘要

       近年来,中国进入了互联网+的新时代,在满足基本物质生活需要的基础上,人们更加崇尚精神文明和生活质量。越来越多人喜爱在网上购物,网上买花也逐渐成为潮流,因此网上花店应运而生。本系统是用IDEA为编译开发工具,选用java为系统开发语言,采取MySQL数据库作为数据存储实现的。本系统前端界面采用Bootstrap框架构建,然后jQuery美化,给用户带来舒适的视觉效果。本系统实现了电子商务平台网上交易的基本功能,用户通过简单的操作即可在线购买自己心仪的花卉品种,减少了用户的时间花费,为用户带来了便捷。

相关技术说明

  1. 框架:SSM(Spring,SpringMVC,Mybatis)
  2. 前端用户页面:BootStrap、Html+Css、jquery、javascript、ajax等技术(模板网站中下载)
  3. 后端管理员页面:Bootstrap、Echars、amazeui
  4. 数据库:MySQL5.7
  5. 架构:B/S架构
  6. IDE:Intellij IDEA
  7. 其他:Maven,Git

用例分析

      主页用例分析:用户在成功登陆系统后,可以查看系统主页的花卉商品,系统主页为用户展示了当前较为受大众喜爱的花卉,还有按照花卉品类分类的花卉,用户也可以根据花卉名称搜索自己想要查找的花卉品种。用户用例图如图3-1所示。

修改密码用例分析:用户可以通过系统修改密码功能修改个人账号密码,用户设定密码可以数字、字母、特殊字符的混合来作为个人登录的密码,这样的密码往往比较安全,这样是从用户角度来保障账号的安全,系统层面会对用户的个人密码进行加密处理,防止明文密码泄露。

购物车的用例分析:用户可以将有意向购买但不是立即购买的商品加入到购物车中,等需要购买时再进行支付;系统允许用户删除购物车中失效的或再也不想购买的花卉品种。

订单用例描述:订单信息包含花卉的名称、数量、下单的时间、总价、收货人地址等信息,每条订单都记录了准确丰富的信息,有利于用户对订单的查阅和记忆。

按照上面的描述可把使用此前台的角色划分为游客和用户。用户在未注册前使用前台就是游客,此时可以选择注册账号成为用户可以进行更多的操作,前台只允许游客注册账号和查看主页的操作,当游客注册成功后,就可以以用户的身份登录。游客用例图如图3-2所示。

管理员登录用例分析:当管理员登录后台管理平台时,系统需要校验管理员的登录信息是否准确。

管理员管理用户信息用例分析:管理员可以查看用户列表,系统不允许管理员对用户信息进行随意的编辑。

管理员管理品类信息用例分析:管理员可以对花卉品类信息执行新添、编辑、删除、查看的操作。

管理员管理花卉信息用例分析:管理员可以查看花卉列表、添加新品种花卉、删除冗余的的花卉、编辑花卉的信息(图片、描述、定价)。

管理员管理订单信息用例分析:管理员可以查看系统上所有用户的订单信息,分析订单的状态,并对不同状态下的订单做出对应的解决方案。管理员用例图如图3-3所示。

数据库设计

数据库概念模型实质上是现实世界到机器世界的一个过渡阶段。数据概念模型不关心实现方式和细节,而是在意数据在系统中的各个处理过程的状态。例如:用户这个实体可以利用这个系统查用户的昵称、住址等信息,查看购物车,修改个人密码,然后,达到实体和虚体之间的联系,通过概念模型就可以很方便的将这种关系表达出来了。系统全局E-R图,如图所示。

系统实现

本系统出于对用户信息安全性考虑,用户登录必须用账号密码登录系统,并且完善个人信息,系统对用户的个人密码进行加密之后与数据库的密码进行比较,保证密码的安全性。若为新用户,需要注册账号后才能登录,否则不能进入系统。用户登录界面如图所示。

用户登录系统时,前端通过ajax访问后端接口,并将用户输入的账号密码发给后端,后端通过mybatis访问数据库查询该用户的身份信息,验证用户输入的账号、密码(进行加密)与数据库是否匹配,如果账号密码均符合则允许登录;反之若用户名不存在或密码不正确则不允许登录。

花店首页

localhost:8080

主页为用户展示了系统丰富多样的花卉品种和热销的花卉,用户亦可根据花卉名对花卉进行搜寻。

展示主页时,后端将管理员设置的品类信息、花卉信息从数据库中查询出来,将花卉信息按照不同的品类分类封装返回给前端展示。主界面图如图5-2所示。主页花卉图如图所示。

副页面

登录页面

后台页面

localhost:8080/admin

用户名:admin

密码:admin

 

再次声明,原博客地址被恶意举报下架,对作者造成了很大影响,我相信CSDN是个公平公正的平台,能够维护平台作者的权益。

 

具体项目演示和部署视频:https://www.bilibili.com/video/av76425435

项目由本人设计,由于下载区下架了程序源码,所以需要的小伙伴可以进群下载,有什么部署问题可以留言或者群中讨论。

QQ群:671408308

 

 

  • 3
    点赞
  • 21
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
1.鲜花展示以及用户模块:分别针对消费者,店长,总经理等不同角色进行不同页面,与库存表相关联 (1)针对消费者展示花的文字信息,以及图片,并展示购买按钮,选择分店进行下单。 (2)针对店长角色,在花的展示页面显示新增、修改、下架按钮,针对下架的商品店长有权限在待上架中操作鲜花上架。 (3)针对总经理,只展示鲜花展示页面,不显示任何操作。 (4)数据库查询出来的数据返回前台,将鲜花名称,花语,价格使用foreach循环放入div,展示到前台页面。(5)使用c:if标签判断登录用户角色,展示角色对应按钮。 (6)通过修改鲜花状态的字段来实现鲜花上下架功能。 (7)vip购买,显示折扣并显示折后价,普通用户没有。 (8)店长对本店客户的信息维护,总经理对所有店的客户的信息维护。 2.分店模块:与订单表,员工表相关联 (1)针对分店进行增删该查。 (2)在新增分店时指定分店店长,指定人员是从员工表中查出的非店长员工, 指定后要关联新增的分店Id并且要更改该员工对应的角色表。 (3)更改分店店长,指定的人员是从当前的分店中找出的,并且在指定新店长后,需要将原店长的角色指定回普通员工,这些涉及4表的更改。 3.员工以及前台页面模块:分别关联用户表,分店表(1)针对员工进行的增删改查。 (2)总经理登录可以看到所有分店的员工,分店店长登录只能看到自己店面的员工。 (3)可以调动员工到不同的分店,可以针对员工进行请假,请假的同时,工作天数会少一天,还有一个开除员工的选项。 (4)加入httpclient调用天气的接口,使用了H5和easyui来美化前台的皮肤。 4.库存管理以及前台页面模块:分别关联订单表,分店表,员工表,角色表,鲜花表 (1)不同角色登录可以看到不同的库存,总经理登录可以看到所有分店所有花材的库存,而分店店长登录只能看到本店花材的库存。(2)店长登录可以针对鲜花表增加的鲜花进行库存的新增。 (3)对外开放鲜花的webservice接口,添加时间控件的小部件。 (4)Bug的查找以及页面的美化。 5.订单以及javamail、POI模块:分别关联分店表,库存表,员工表,用户表,顾客表,供应商表,花材表,分为供应商订单和顾客订单 (1)顾客订单,顾客新增时可以新增鲜花订单,通过分店以及花材Id定位到库存,顾客可以进行订单的修改和退货。 (2)店长登录看到顾客订单后,确认发货顾客订单就不可以修改,同时库存也会相应减少。 (3)店长登录可以新增供应商订单,同时可以修改和退货。 (4)供应商登录可以看到订单,发货后相应库存会增加。 (5)顾客订单新增时,会判断用户是否为VIP来确定订单金额,并且会针对分店库存进行订单数量限定。 (6)POI报表打印以及javaMail发送邮件功能。 6.数据分析模块:关联库存表,分店表,订单表,员工表,用户表,角色表 (1)店长登录时,看到的所有数据,库存,销售金额,销售数量都是以本店的花朵为基础进行的查询。 (2)经理登录时,看到的所有数据是以分店为基础进行的查询。 7.供应商以及mongoDB模块:关联了供应商表,用户表,角色表 (1)进行普通的增删该查,条件查询。(1)进行普通的增删该查,条件查询。 (2)在spring中集合mongoDB,通过AOP切点切入mongoDB。 (3)针对log记录进行查询,可以查询正常以及异常的日志状态,以及时间区间,名字条件查询。 8.登陆和注册模块:关联了用户表,角色表,顾客表,员工表,供应商表 (1)注册时会选择需要注册的角色,供应商注册时会需要验证邮箱。 (2)任何角色注册时,都会进后台判断真实信息是否可以匹配,可以匹配才能注册。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值