基于JAVA的网上花店销售系统的设计与实现(附:源码 论文 sql文件)

摘要

随着时代的快速发展,我们的生活已经离不开计算机网络,而电子商务的快速发展正在改变着人们的生活方式。随着各种网上购物平台的不断兴起,人们早已习惯了不用出门就买到自己需要的东西。但是针对鲜花销售这方面的网络平台还很少,因此设计一个网上花店销售系统很有前景。

网上花店销售系统采用JSP+Servlet+JavaBean的MVC模式,将数据对象、业务逻辑以及用户界面分离。该系统分为用户和管理员两个角色。用户注册登录后可以浏览鲜花,浏览公告,购买鲜花,管理员登录后可以对系统进行管理和维护。

网上花店销售系统对于用户来说操作方便,满足了用户随时随地购买鲜花的需求,不仅为用户节省了时间,还提高了用户的购买效率。对于花店老板而言,不仅提高了销售效率还降低了时间和人工成本。

关键词  销售系统;JSP;MVC;网上花店

研究意义

传统的实体鲜花销售存在很多的限制,该系统致力于满足用户随时随地在网上挑选购买鲜花的需求。对于花店老板而言,可以提高工作效率,使网上鲜花管理工作系统化、规范化、自动化,提高整个购买鲜花流程的效率,使总体水平上升到一个新的高度。与传统花店相比,网上花店有其不可比拟的优势。首先网上花店的运营成本较低,职员人数较少,也不需要很大的运营场地。其次网上花店有传播信息迅速、容量大、范围广、可交互等特点。不仅如此,网上花店的建立,可以更好的满足消费者的需求。通过这种网络工具为消费者带来方便,同时促进浏览此网站用户的购买欲,提高销售效率。

网上花店系统给用户提供了一整套完整的网上鲜花订购流程,使用户足不出户直接进行网上购物,给消费者带来了很大的方便。随着人类社会的发展,人际交往变得越来越重要。在这个繁忙的社会,人们很少有时间能见面交流感情,在特殊的日子里送给好友一束鲜花是用于联络感情的很好方式,因此受到广大消费者的欢迎。与此同时,商家也不再需要在商店里被动的等待顾客,完全可以坐在家里就轻松的卖出自己的商品,获得利润。计算机的存储与快速查询功能大大提高了网上花店管理的效率,并且还提高了查询并购买鲜花的精确度。方便快速的操作,不仅可减少从前的漏洞,还可以减少因工作的冗余出现的错误,更重要的是该系统的操作非常简单,推广起来比较容易。

数据流图

数据流图简称DFD,它从数据传递和加工角度,以图形方式来表达系统的逻辑功能、数据在系统内部的逻辑流向和逻辑变换过程,是结构化系统分析方法的主要表达工具及用于表示软件模型的一种图示方法。网上花店销售系统的数据流图如图

基于JAVA的网上花店销售系统的设计与实现(附:源码 论文 sql文件)_第1张图片

在该数据流图中方框表示数据的原点或终点,原点和终点是系统之外的实体。椭圆表示变换数据的处理,也称之为加工,它对数据流进行某些操作或变换。箭头表示数据流,数据流是数据在系统中的运行方向。双杠表示数据存储文件,是用来暂时存储数据的。网上花店销售系统的实体有两个,分别为用户和管理员,用户对应于在网上购买鲜花的顾客,管理员对应于网上花店的老板。此系统中的加工对于用户来说有浏览鲜花、查看分类、管理用户信息、管理购物车、生成并查看订单、查看公告,对管理员来说有鲜花管理、分类管理、用户管理、订单管理、公告管理。此系统中的数据存储包括鲜花信息、分类信息、用户信息、购物车信息、订单信息和公告信息,在实际的实现中应该将这些信息存储在对应的表里,虽然鲜花信息、分类信息、用户信息、订单信息和公告信息是用户和管理员共享的,但是由于权限的不同用户对于鲜花信息、分类信息以及公告信息只有查看的权限,管理员对于这些信息有增、删、改的权限。在数据流图中反映为加工的不同。

用户在系统中可以浏览鲜花、查看分类、管理用户信息、管理购物车、生成并查看订单、查看公告,本系统中用户数据流图如图

基于JAVA的网上花店销售系统的设计与实现(附:源码 论文 sql文件)_第2张图片

图4-2用户数据流图

管理员在系统中可以进行鲜花管理、分类管理、用户管理、订单管理、公告管理,其中管理员可以对鲜花、分类和公告进行添加、修改、查看和删除,对用户进行查看和删除,对订单进行查看和处理。本系统中管理员数据流图如图

基于JAVA的网上花店销售系统的设计与实现(附:源码 论文 sql文件)_第3张图片

系统IPO图

IPO图是输入--处理--输出图(Input-Process-Output)的简称。基本形式是画三个方框,在左边框中列出有关输入数据,在中间框内列出主要处理,在右边框中列出产生的输出数据。网上花店销售系统的输入数据主要是用户信息以及鲜花信息,处理主要针对用户、鲜花分类、鲜花详情、购物车以及订单,输出数据对应于处理过程。该系统IPO图如图

基于JAVA的网上花店销售系统的设计与实现(附:源码 论文 sql文件)_第4张图片

系统功能模块设计

网上花店销售系统一共分为前台和后台两大模块,两个模块之间虽然在表面上是相互独立的,但是在对数据库的访问上是紧密相连的,各个模块访问的是同一个数据库,只是所访问的表不同。

网上花店销售系统的前台功能模块分为:

1、鲜花展示模块

鲜花展示模块主要是向用户展示网上花店的鲜花,主要分为鲜花搜索和鲜花分类两个子模块。用户可以通过鲜花搜索直接查询自己想要了解的鲜花,也可以通过鲜花分类查找某一类的鲜花。

2、公告展示模块

公告展示模块是管理员发布的与网上花店系统相关的公告信息,可以包括系统的使用或者最新的优惠活动等。用户登录系统后,可以查看公告信息,以此来最快的了解系统。

3、购买鲜花模块

购买鲜花模块主要是完成用户在网上的购物的流程。购买鲜花模块分为加入购物车和生成订单两个子模块。

4、用户管理模块

用户管理模块分为用户注册、用户登录、用户修改信息三个子模块。

网上花店销售系统前台功能模块图如图

基于JAVA的网上花店销售系统的设计与实现(附:源码 论文 sql文件)_第5张图片

用户进行购买鲜花时,先进行注册,然后进行登录,登录系统后用户可以浏览鲜花,把需要购买的鲜花加入购物车,把购物车的鲜花生成订单。

用户购买鲜花时序图如图

基于JAVA的网上花店销售系统的设计与实现(附:源码 论文 sql文件)_第6张图片

本网上花店销售系统的实体有管理员,用户,公告,订单,分类,鲜花。下面将分别设计各实体的E-R图。

1、用户E-R图如图

基于JAVA的网上花店销售系统的设计与实现(附:源码 论文 sql文件)_第7张图片

在该E-R图中,对于用户实体,用户可以浏览公告,因此用户实体和公告实体是浏览关系,用户可以选购鲜花,因此用户实体和鲜花实体是选购关系,用户可以查看分类,因此用户实体和分类实体是查看关系,用户可以管理自己的购物车,因此用户实体和购物车实体是管理关系,用户可以查看自己的订单,因此用户实体和订单实体是查看关系,用户在系统中是被管理员管理的,因此用户和管理员是被管理的关系。

管理员E-R图如图

基于JAVA的网上花店销售系统的设计与实现(附:源码 论文 sql文件)_第8张图片

在该E-R图中,对于管理员实体,管理员可以对系统的公告、订单、分类、鲜花进行管理,对已注册的用户进行管理,因此它与其他实体的关系都是管理关系。

系统对象的设计与实现

系统中总共包括七个对象,分别为用户,管理员,公告,鲜花,类别,购物车和订单。系统的类图如图

在实现过程中将这七个对象封装成bean对象,其中管理员和用户的封装对象内容相同,故二者共用一个对象,用属性role进行区分,0表示用户,1表示系统管理员。六个对象对应于代码中的Dingdan.java,Fenlei.java,Gonggao.java,Gouwuche.java,Product.java,User.java。以User.java为例,关键代码如下:

public class User {

private int id;//主键

private String username;//用户名

private String password;//密码

private String xingming;//姓名

private int role;//用户角色 0表示用户,1表示系统管理员

private String dianhua;//手机

private String dizhi;//收货地址

}

系统首页的设计与实现

该系统首页页面风格简单明了,上边横条可以选择注册和登录,左侧有鲜花搜索,鲜花分类,销量排行榜以及花店公告,用户可以根据自己的需求浏览相关内容。页面右侧是鲜花列表,用户可以通过点击相应的链接查看详情或者加入购物车。首页页面的设计如图

基于JAVA的网上花店销售系统的设计与实现(附:源码 论文 sql文件)_第9张图片

系统前台功能的设计与实现

用户注册模块的设计与实现

用户注册需要填写相应的信息,主要包括用户名、密码、确认密码、姓名、收货地址以及手机号码。用户注册页面的设计如图

基于JAVA的网上花店销售系统的设计与实现(附:源码 论文 sql文件)_第10张图片

该页面对应代码中的register.jsp,该页面对输入的每一个数据都有格式上的要求,用户名不能为空且必须是数字,字母或者下划线,密码不能为空且至少6位,确认密码要和密码一致,姓名,收货地址以及手机号都不能为空,手机号码还要符合正确的格式。当用户进行注册时,页面首先会对输入的数据格式进行检验,若输入错误会有相应的提示。除此之外,当用户输入正确的格式的数据之后,点击了注册按钮,系统会在数据库进行比对,若用户名已经被注册,系统也会弹出相应的提示,若用户名还未注册则将数据插入数据库,提示注册成功并跳转到首页。具体的实现过程是在IndexServlet.java中对注册进行逻辑处理,在UserDao.java中对数据库进行操作。

用户登录模块的设计与实现

用户登录需要填写用户名以及密码,登录页面的设计如图

基于JAVA的网上花店销售系统的设计与实现(附:源码 论文 sql文件)_第11张图片

公告浏览模块的设计与实现

用户在首页可以浏览花店公告,通过点击花店公告的标题可以查看花店公告的详细信息。花店公告页面以及公告详情页面设计如图

基于JAVA的网上花店销售系统的设计与实现(附:源码 论文 sql文件)_第12张图片

基于JAVA的网上花店销售系统的设计与实现(附:源码 论文 sql文件)_第13张图片

鲜花列表模块的设计与实现

用户在系统首页的鲜花列表可以浏览鲜花,鲜花列表包括鲜花名,图片,分类名,鲜花价格,以及查看详情和加入购物车两种操作。点击查看详情后页面会跳转到鲜花信息详情页面。鲜花列表页面以及鲜花信息详情页面如图

基于JAVA的网上花店销售系统的设计与实现(附:源码 论文 sql文件)_第14张图片

基于JAVA的网上花店销售系统的设计与实现(附:源码 论文 sql文件)_第15张图片

鲜花列表页面对应代码中的index.jsp,鲜花信息详情页面对应代码中的product.jsp,具体实现方式是当用户点击查看详情时,在IndexServlet.java中用productupdate方法进行具体处理,之后把对象传到product.jsp页面。当用户点击鲜花列表或鲜花信息详情页面的加入购物车时,如果用户已经登录,那么系统跳转到我的购物车页面。否则,系统会提示用户先登录并跳转到登录页面。

用户购物车模块的设计与实现

我的购物车页面,包括鲜花名,单价,购买时间,小计。用户可以修改购买数量或者删除购物车里的东西,也可以点击链接跳转到订单页面。我的购物车页面设计如图

基于JAVA的网上花店销售系统的设计与实现(附:源码 论文 sql文件)_第16张图片

用户订单模块的设计与实现

我的订单页面,包括订单号,收货人姓名,订单状态,生成时间,总价,以及查看订单详情的操作。用户也可以查看和搜索自己的订单。我的订单页面如图

基于JAVA的网上花店销售系统的设计与实现(附:源码 论文 sql文件)_第17张图片

用户信息管理模块的设计与实现

用户可以在个人信息页面对自己的信息进行管理,主要是对姓名,手机号以及收货地址的更改,可以在修改密码页面进行密码的修改。用户信息页面的设计与修改密码的设计如图

基于JAVA的网上花店销售系统的设计与实现(附:源码 论文 sql文件)_第18张图片

系统后台功能的设计与实现

系统后台页面的设计与实现

管理员登录成功后会进入系统后台页面,主要包括左侧的主菜单以及中间的欢迎页面。主菜单包括,分类管理,鲜花管理,公告管理,订单管理,用户管理。系统后台页

基于JAVA的网上花店销售系统的设计与实现(附:源码 论文 sql文件)_第19张图片

分类管理功能的设计与实现

管理员通过此功能可以查看、修改、删除已经存在的分类,也可以增加新的分类。该系统分类管理页面如图

基于JAVA的网上花店销售系统的设计与实现(附:源码 论文 sql文件)_第20张图片

鲜花管理功能的设计与实现

管理员通过此功能可以查看、修改、删除已经存在的鲜花,也可以增加新的鲜花。该系统鲜花管理页面如图

基于JAVA的网上花店销售系统的设计与实现(附:源码 论文 sql文件)_第21张图片

公告管理功能的设计与实现

管理员通过此功能可以查看、修改、删除已经存在的公告,也可以增加新的公告。该系统公告管理页面如图

基于JAVA的网上花店销售系统的设计与实现(附:源码 论文 sql文件)_第22张图片

订单管理功能的设计与实现

管理员通过此功能可以查看和处理订单。该系统订单管理页面如图

基于JAVA的网上花店销售系统的设计与实现(附:源码 论文 sql文件)_第23张图片

用户管理功能的设计与实现

管理员通过此功能可以查看和删除用户。该系统用户管理页面如图

基于JAVA的网上花店销售系统的设计与实现(附:源码 论文 sql文件)_第24张图片


开源项目和资料分享:免费领取系统配套的源码 课件等资料:只需要:点赞+关注+    点击白嫖源码资料包

如果有小白想要入门Java,Python的,但是又不知道学什么 怎么学?可以    私信     我,无私分享Java和Python的网Pan资料~~~

互相分享 与君共勉~~~

大家有什么资源也可以互相分享 ,有什么问题也可以互相讨论~~~

啧~~~你一个 我一个 那我们不得学得风声水起~~~(狗头)

基于JAVA的网上花店销售系统的设计与实现(附:源码 论文 sql文件)_第25张图片

你可能感兴趣的:(java,sql,mvc,eclipse,tomcat)