基于SSH的礼品屋网站的设计与开发.docx
- 文档编号:26141039
- 上传时间:2023-06-17
- 格式:DOCX
- 页数:55
- 大小:3.27MB
基于SSH的礼品屋网站的设计与开发.docx
《基于SSH的礼品屋网站的设计与开发.docx》由会员分享,可在线阅读,更多相关《基于SSH的礼品屋网站的设计与开发.docx(55页珍藏版)》请在冰豆网上搜索。
基于SSH的礼品屋网站的设计与开发
前言
礼品行业企业都建立有完整美观的官方网站,也保持有一定的更新率,这算得上是网络营销基础设施的建设。
一些企业在电子商务与行业网站上投放品牌网络广告,在网络媒体上投放软文,在行业论坛里发帖子,甚至有的帖子能够引发潜在消费者们的跟帖、参与讨论,直接性地推动了品牌的展示与呈现。
不少企业参与到搜索引擎的关键词竞价排名中,根据观察不难看出,参加竞价者多为知名度不太高的企业。
无疑,上述这些策略与手段都是现有礼品企业在网络营销上的走出的重要一步。
但通过对礼品工艺品网络营销长期的关注、研究分析与实践,目前礼品企业在网络营销策略的采用方面还非常犹豫,比较零散,很少有打组合拳的,不敢大胆尝试,或尝度的力度不够。
也正是由于这些原因存在,网络营销对礼品终端销售拉动、品牌知名度提升、渠道开发等方面支持并没有真正到位,作用没有充分发挥出来。
网络营销这种新型武器的威力没能真正地落实到业务中去。
本来这种手段能够更好地帮助礼品企业节省营销成本、突破市场困局,也能够更多地帮助中小礼品工艺品品牌摆脱区域市场的限制、实现同消费者的更亲密地接触,但由于策略的不完整、推行的不彻底、创意的缺乏,以及组合拳没打起来,礼品工艺品企业能够从网络营销中得到的好处还非常有限。
这就需要我们去认真研究,寻找让网上礼品营销的最佳突破口,这样来实现企业的良性发展。
随着互联网日益深入社会生活,以网站作为信息交流平台,进行内外信息交流,已成为大众的迫切需要。
礼品屋传承花意,为亲人朋友送去心意已经成为某种时尚。
礼品屋为大众开辟了更为方便之门,快捷方便,为大众所喜爱。
礼品屋网站就是为实现客户通过上网,对礼品、礼品信息的浏览、检索、订购,以及礼品、礼品销售商对客户信息、礼品、礼品信息的管理所开发的网络应用软件。
该系统能够较好地满足网上礼品店客户的基本要求,具有较高的实用价值。
第1章开发技术简介
本系统是在Windows7上运行的礼品网上商城模拟系统,系统的整个开发过程在MyEclipse上完成,由于Java的面向对象特点及其开源性能和MySQL小型数据库使用的便捷性,便选择性的使用其进行礼品网上商城模拟系统的开发。
1.1B/S结构
B/S结构即浏览器和服务器结构。
它是随着Internet技术的兴起,对C/S结构的一种变化或者改进的结构。
在这种结构下,用户工作界面是通过WWW浏览器来实现,极少部分事务逻辑在前端(Browser)实现,但是主要事务逻辑在服务器端(Server)实现,形成所谓三层3-tier结构,这种模式统一了客户端,将系统功能实现的核心部分集中到服务器上,简化了系统的开发、维护和使用。
客户机上只要安装一个浏览器(Browser),服务器安装Oracle、Sybase、Informix或SQLServer等数据库。
本系统采用基于B/S的三层结构:
(1)表示层:
实现用户的界面接口。
主要用于展示有好的用户界面以及便于用户的输入操作。
(2)功能层:
实现逻辑功能的算法和处理。
对用户的输入数据或是从数据层获得的数据进行处理。
(3)数据层:
对数据库中数据进行管理操作。
三层架构的优点如下:
(1)提高了代码可维护性:
架构之间层次分明,如果出现问题,可以迅速判断问题起因,这也有利于代码的维护。
(2)便于合理开发:
由于三层架构之间通过接口实现互相调用,程序员可以进行并行开发,提高了开发速度。
(3)增加系统安全性:
每层都具有相应的安全设置,保障了系统的安全性。
1.2SSH框架
集成SSH框架的系统从职责上分为四层:
表示层、业务逻辑层、数据持久层和域模块层,以帮助开发人员在短期内搭建结构清晰、可复用性好、维护方便的Web应用程序。
其中使用Struts作为系统的整体基础架构,负责MVC的分离,在Struts框架的模型部分,控制业务跳转,利用Hibernate框架对持久层提供支持,Spring做管理,管理Struts和Hibernate。
具体做法是:
用面向对象的分析方法根据需求提出一些模型,将这些模型实现为基本的Java对象,然后编写基本的DAO(DataAccessObjects)接口,并给出Hibernate的DAO实现,采用Hibernate架构实现的DAO类来实现Java类与数据库之间的转换和访问,最后由Spring做管理,管理Struts和Hibernate。
Struts2
Struts2看似是从Struts1发展而来,但实际上Struts2与Struts1在框架的设计思想上面还是有很大的区别,Struts2是以WebWork的设计思想为核心,为什么Struts2不沿用Struts1的设计思想,毕竟Struts1在目前的企业应用中还是有非常大的市场在的,那么,来看下Struts1的一些缺点吧:
1.支持的表现层技术单一
2.与ServletAPI严重耦合,这点可以从Action的Execute的方法声明里面就可以看的出来
3.代码依赖Struts1API,有侵入性,这点可以从写Action类和FormBean的时候看的出来,Action必须实现Struts的Action类
基于以上介绍可以看的出,Struts2体系结构与Struts1的体系结构有很大的差别,Struts1是使用ActionServlet做为其中心处理器,Struts2则使用一个拦截器(FilterDispatcher)做为其中心处理器,这样做的一个好处就是将Action类和ServletAPI进行了分离。
Hibernate
Hibernate是数据持久层的一个轻量级框架。
数据持久层的框架有很多比如:
iBATIS,myBatis,Nhibernate,Siena等等,并且Hibernate是一个开源的orm(objectrelationsmapping)框架,提供了查询获取数据的方法,用面向对象的思想来操作数据库,节省了我们开发处理数据的时间。
Hibernate可以应用在任何使用JDBC的场合,既可以在Java的客户端程序实用,也可以在Servlet/JSP的Web应用中使用,最具革命意义的是,Hibernate可以在应用EJB的J2EE架构中取代CMP,完成数据持久化的重任。
优点:
1.Hibernate使用Java反射机制而不是字节码增强程序来实现透明性。
2.Hibernate的性能非常好,因为它是个轻量级框架。
映射的灵活性很出色。
3.它支持各种关系数据库,从一对一到多对多的各种复杂关系。
缺点:
它限制您所使用的对象模型。
(例如,一个持久性类不能映射到多个表)其独有的界面和可怜的市场份额也让人不安,尽管如此,Hibernate还是以其强大的发展动力减轻了这些风险。
其他的开源持久性框架也有一些,不过都没有Hibernate这样有市场冲击力。
Spring
Spring是一个开源框架,是为了解决企业应用程序开发复杂性而创建的。
框架的主要优势之一就是其分层架构,分层架构允许您选择使用哪一个组件,同时为J2EE应用程序开发提供集成的框架。
Spring既是全面的又是模块化的。
Spring有分层的体系结构,这意味着你能选择仅仅使用它任何一个独立的部分,而它的架构又是内部一致。
因此你能从你的学习中,得到最大的价值。
例如,你可能选择仅仅使用Spring来简单化JDBC的使用,或用来管理所有的业务对象。
1.3MVC模式
MVC是目前广泛流行的一种软件开发的设计模式,MVC的全称是Model-View-Controller。
MVC是一框架模式,它将软件开发人为的分为三个模块即:
模型,视图,控制器。
其中模型是即将用于展示的数据,通常有service层或者DAO层提供数据并将其进行一定封装。
视图是用于展示的页面在B/S的软件产品中通常表现为网页页面。
控制器的主要作用是响应用户的请求并将其准确的匹配到处理器上,以JavaEE为例,通常控制器为Servlet。
三个部件相互分工协作,一同完成与用户的交互工作。
视图
视图是用户看到并与之发生交互行为的界面。
对于老式的Web应用程序来说,视图就是由HTML元素组成的界面,在新式的Web应用程序中,HTML依旧在视图中扮演着重要的角色,但一些新的技术已层出不穷,它们包括AdobeFlash和像XHTML,XML/XSL,WML等一些标识语言和Webservices。
这些标识和语言更承担了一些新的功能,有利于展现更强大的内容。
模型
模型表示企业数据和业务规则。
在MVC的三个部件中,模型拥有最多的处理任务。
例如它可能用像EJBs和ColdFusionComponents这样的构件对象来处理数据库,被模型返回的数据是中立的,就是说模型与数据格式无关,这样一个模型能为多个视图提供数据,由于应用于模型的代码只需写一次就可以被多个视图重用,所以减少了代码的重复性。
控制器
控制器接受用户的输入并调用模型和视图去完成用户的需求,所以当单击Web页面中的超链接和发送HTML表单时,控制器本身不输出任何东西和做任何处理。
它只是接收请求并决定调用哪个模型构件去处理请求,然后再确定用哪个视图来显示返回的数据。
1.4MySQL
数据库是数据的集合,数据库对象,包括表参考数据库对象的视图存储过程和触发器等。
数据库通过SQL(结构化查询语言)来操作和管理数据,包括一些基本的操作,如选择,删除,插入,更新语句。
MySQL相比较Oracle这种大型的数据库而言,他是一个多线程多用户的小型关系数据库管理系统,他操作简捷,对电脑配置的要求也不是这么大。
它能够完成各种数据的查询,支持普通的SQL查询语句。
我自己还下载了一个可视化的数据库查看软件Navicat,这样我就可以更加方便的对数据库进行查询以及操作,修改数据库表和项目,并可以创建它们之间的各种关系。
MySQL开发以来,经过多年的发展,MySQL已经成为了一个成熟的数据库技术,在各个领域都有在使用。
MySQL属于特征数据库,数据库文件简单而且小,在启动编程软件的时候不启动数据库服务器进程就可以使用。
第2章系统分析
系统分析,旨在研究特定系统结构中各部分(各子系统)的相互作用,系统的对外接口与界面,以及该系统整体的行为、功能和局限,从而为系统未来的变迁与有关决策提供参考和依据。
系统分析的经常目标之一,在于改善决策过程及系统性能,以期达到系统的整体最优。
系统分析被看作是系统工程的一个重要程序和核心组成部分,以及系统理论的一项应用。
在系统开发生命周期中,系统分析阶段先于系统设计,是系统开发前期不可或缺的工作。
系统分析大量借用数学模型、数学分析、计算机模拟等定量分析方法,试图在具有不确定约束或边界条件的情况下,对系统要素进行综合分析、描述,得出较为准确或合理的结论。
图2-1系统功能用例图
2.1功能需求
该系统实现的功能与淘宝网站类似,其主要是以购买礼品为主,功能包括会员注册、登录、礼品购买、订单的管理、订单的评价等操作。
这不仅仅降低商家的成本,而且为广大消费者提供了便捷。
2.1.1系统总体结构
礼品礼品屋主要包括后台和前台两个大模块。
(1)后台模块包括:
公共数据、会员管理、管理员管理、商品管理、订单管理、公告管理、广告管理。
(2)前台模块包括:
订单管理、购物车、商品展示、支付功能、商品评价。
根据对该系统的具体需求,确定该系统应实现的功能用例如图2-1所示。
2.1.2系统详细结构
1.公共数据管理
公共数据主要是录入一些公共数据,方便其他模块在添加和查询时可以不用手动输入直接就可以在页面上选择。
比如:
在公共数据的大类中添加商品类型,商品类型下添加小类礼品、礼品等,在录入商品信息时选择商品类型就可以不用手动输入直接在页面中选择。
图2-2管理员功能用例图
2.商城管理
商城管理包括:
管理员管理、会员管理、商品管理、订单管理、公告管理、广告管理。
(1)管理员管理
注册为管理员,登入后可以进入到系统的后台进行后台的管理。
确定管理员实现的功能用例图如图2-2所示
(2)会员管理
注册为会员后可以拥有会员的权限,比如:
评论公告、购买商品等。
(3)商品管理
商品管理主要是对商品信息进行管理,可以再次模块录入商品信息、并对添加的数据进行修改、删除、降价等操作。
商品类型分为:
礼品、礼品、蛋糕。
商品种类有:
团购商品、非团购商品。
(4)订单管理
前台会员下单后,数据将录入到订单管理模块。
订单类型分为:
已付款、已发货、申请维权、已完成。
管理员进入到订单管理模块后可以对订单进行发货、退款、及提醒等操作。
(5)公告管理
公告管理模块可以录入公告信息,以便在系统的前台发布公告。
同时还包括对公告评价的管理。
(6)广告管理
广告管理可以录入广告信息,以便在前台显示。
广告类型分为:
闪动广告、标题广告、页边广告。
图2-3客户功能用例图
(7)订单管理
会员在没有登录时不能进入到订单管理页面;会员登入后,进入订单管理,可以对自己的订单进行管理。
为付款的订单可以进行付款,付款未发货的订单可以申请维权,已收到货可以确认收货并对商品进行评价;对已完成的订单可以删除。
确定客户实现的功能用例图如图2-3所示。
3.购物车
购物车是录入会员选中的商品,会员点击购买按钮后选中的商品被添加到购物车。
(1)商品展示
前台页面根据商品的上下架时间显示商品共用户浏览购买。
(2)公告商品评价管理
会员可以对商品和公告进行评价。
2.1.2功能约束条件
1.管理员注册
(1)用户名不能与已有管理员重复;
(2)输入的确认密码需与密码一致;
(3)注册邮箱格式正确;
(4)选择头像文件必须是图片格式;
(5)验证码输入正确。
2.管理员登入
(1)输入的用户名与密码匹配;
(2)如果用户未激活,提示“用户为激活,请尽快激活”;
(3)如果管理员状态为锁住,提示“该账号被冻结”;
3.公共数据管理
(1)添加大类时,大类名称不能与数据库中已有大类名称相同。
(2)添加小类时,小类名称不能与数据库中已有小类名称相同。
(3)添加小类时,必须选择一个大类。
4.会员登入
(1)输入的会员名与密码匹配;
(2)如果用户未激活,提示“用户为激活,请尽快激活”;
(3)如果会员状态为锁住,提示“该账号被冻结。
第3章系统功能设计
系统设计是基于系统分析的基础之上,设计出一个能满足客户要求的系统的过程。
根据需求分析阶段所确定的客户的功能以及性能需求,设计出一个能在计算机环境上实施的具体方案。
系统设计的方法主要包括瀑布法、原型化方法、面向对象方法。
为了增强系统的可维护性与客扩展性,本次设计采用的是面向对象的设计方法,各个类采用UML中的实体类图表示,各个功能模块采用顺序图进行分析展示。
3.1系统框架设计
根据需求分析,本系统用户分为两大类,前台和后台。
前台:
公共数据、区域、人员、商品、订单、公告、广告、医院等子模块;后台:
订单、购物车、关注、消息、评分、积分卷等子模块。
各个模块相互协作完成相应的业务操作。
3.2实体类设计
系统总体结构设计主要从两方面进行介绍:
系统模块类图和数据库表逻辑结构设计,下面依次分类进行阐述。
1.人员管理类,如图3-1所示。
管理员类用户类
图3-1人员类图
2.商品类,如图3-2所示。
图3-2商品类图
3.公告广告类,如图3-3所示
图3-3公告广告类图
4.购物车类,如图3-4所示
图3-4购物车类图
3.3子模块活动图设计
3.3.1管理员注册
用户进入到系统后台管理页面后,如果还没有注册为管理员,点击登入页面的立即注册链接可以进入到管理员注册页面,录入用户名、密码、确认密码、真实姓名、邮箱、选择头像、验证码后,点击确定按钮。
用户注册的邮箱将收到一封用户激活邮件,用户进入邮箱点击激活链接后就可以成功注册一个管理员。
管理员注册活动图如图3-3所示:
用户进入到系统后台管理页面后,如果还没有注册为管理员,点击登入页面的立即注册链接可以进入到管理员注册页面,录入用户名、密码、确认密码、真实姓名、邮箱、选择头像、验证码后,点击确定按钮。
用户注册的邮箱将收到一封用户激活邮件,用户进入邮箱点击激活链接后就可以成功注册一个管理员。
管理员注册活动图如图3-5所示:
图3-5管理员注册活动图
3.3.2管理员登入
用户进入到后台登录页面,输入用户名、密码、验证码,后如果输入信息正确将进入到后台管理主页。
3.3.3.公共数据管理
公共数据模块具有添加大类、修改大类、查询大类、单条删除大类、批量删除大类、添加小类、修改小类、查询小类、单条删除小类、批量删除小类等功能。
管理员进入后台管理系统后,点击导航栏的公共管理,进入到公共管理界面在左侧下拉菜单点击公共数据,选择大类选项进入到大类管理界面。
(1)添加大类
管理员点击添加按钮进入到添加页面、输入大类名称后点击确定按钮,进入大类页面。
(2)修改大类
管理员点击修改大类链接,进入到大类修改页面,页面显示大类名称,管理员可以对其进行修改。
(3)单条删除
管理员点击数据操作栏的删除链接,提示“Areyousure?
”,点击确定可以将该数据删除。
取消则不删除。
(4)批量删除
管理员点击全选按钮,或者手动点击药删除项的复选框,再点击删除按钮,提示“是否删除选择的项”,点击确定后选择的数据将被删除。
取消则不删除。
(5)添加小类
管理员点击添加按钮进入到添加页面,选择所属大类,输入小类名称后点击确定按钮,进入小类页面。
(6)修改小类
管理员点击修改小类链接,进入到小类修改页面,页面显示所属大类,小类名称,管理员可以对其进行修改。
(7)单条删除
管理员点击数据操作栏的删除链接,提示“Areyousure?
”,点击确定可以将该数据删除。
取消则不删除。
(8)批量删除
管理员点击全选按钮,或者手动点击药删除项的复选框,再点击删除按钮,提示“是否删除选择的项”,点击确定后选择的数据将被删除。
取消则不删除。
3.3.4.管理员管理
管理员登入后台管理系统后,点击管理员管理可以进入到管理员管理界面。
管理员管理功能包括:
查看管理员、锁定管理员、解锁管理员、单条删除管理员、批量删除管理员。
管理员登入系统后,自己可以修改自己的信息,可以修改用户名、密码、头像等。
管理员添加在管理员注册已实现。
如图3—6
(1)查看管理员
管理员管理界面可以根据两个条件(用户名、状态)进行查询,三个条件可以是其中国一个,二个。
用户名是采用模糊查询的方式,状态和职位是下拉框的形式,点击搜索按钮后在页面显示符合条件的所有管理员信息,显示信息包括:
用户名、头像、姓名、职位、状态、创建时间、锁定链接、解锁链接、赋权限链接、删除链接、以及批量删除按钮。
(2)修改管理员信息
管理员登入后在页面头部有修改信息链接,点击链接可以进入到修改信息页面,页面首先显示的是未修改前的信息,管理员自己可根据自己的需求进行修改。
(3)锁定管理员
如果该管理的目前状态是正常,则信息显示栏会出现锁定图标点击锁定图标,该管理员将被锁定,信息显示状态变成锁定,出现解锁图标。
(4)解锁管理员
如果该管理员目前状态是锁定,则信息显示栏会出现解锁图标。
点击解锁图片,该管理员将被解锁,信息显示状态变成正常,出现锁定图标。
(5)单条删除
点击管理员信息显示栏的删除链接,弹出提示框“Areyousure?
”,点击确定按钮可以删除选择的管理员,点击取消则不删除。
(6)批量删除管理员
在管理员信息显示栏勾选复选框,可以点击多个,再点击删除按钮,弹出提示框“是否确认删除所选择的项?
”,点击确定按钮,选择的管理员将被删除,点击消息则不删除。
3.3.5.商品管理
管理员进入商城管理后,点击左侧下拉菜单的商品管理可进入商品管理界面。
商品管理功能包括:
添加商品、修改商品、商品降价、查看商品详细、查询商品、,查看商品评价、单条删除商品、批量删除商品。
(1)添加商品
管理员点击页面添加按钮进入到商品信息添加页面。
添加的信息有:
(基本信息)商品名称、商品类型、是否特价、是否团购、赠送积分、原价、新价、折扣率、起始时间、截止时间、节日、照片(可多张)、库存(可多条)、商品简介。
商品类型选择的是(礼品)将显示添加字段:
颜色、种类、枝数。
商品类型选择的是(蛋糕)将显示添加字段:
口味、尺寸、类型。
商品类型选择的是(公仔)将显示添加字段:
高度、类型。
(2)查询商品
管理员可以根据四个条件查询商品信息(商品编号、商品类型、是否特价、商品名称)。
商品编号和商品名称采用模糊查询的方式,商品类型、是否特价采用下拉框的方式,管理员可以四个条件选择(1,2,3,4)条件进行查询。
显示信息包括:
商品编号、商品名称、团购、图片、价格、库存数量、销量、操作(商品详细、修改、删除)。
(3)修改商品信息
管理员点击商品修改图标,进入到商品修改页面。
页面首先显示该商品没修改前的信息,如果需修改图片这勾选修改图片的复选框,显示商品图片。
如果需修改库存则勾选修改库存的复选框,显示商品库存信息。
不需修改则不勾选。
(4)商品详细
管理员点击商品详细图标进入商品详细页面,页面显示商品全部信息。
(5)查询商品评价
管理员点击商品名称链接,进入到商品评价显示页面。
(6)单条删除商品
管理员点击商品操作栏的删除图标,弹出信息提示框“Areyousure?
”,点击确定删除,则商品信息消失,同时数据库中商品对应的图片、库存、销量、评价信息都删除。
(7)批量删除
管理员勾选商品信息对应的复选框,可以选择多个,点击删除按钮,弹出提示信息框“是否确定删除选择的选项?
”点击确定,则选择的商品信息消失,同时数据库中商品对应的图片、库存、销量、评价信息都删除。
3.3.6订单管理
管理员点击左侧下拉菜单的订单管理,进入订单管理页面。
订单管理功能包括:
查询订单、订单发货、退款、查看订单详细。
添加订单在前台会员下单时生成、不可修改订单。
(1)查询订单
管理员可以根据两个条件查询订单(订单编号,订单状态),点击搜索按钮,页面显示查出的订单。
显示内容包括:
订单编号、地址、收货人、状态、下单时间、详细链接。
(2)订单发货
如果订单状态是已支付完成,管理员点击发货图标,订单状态变为已发货。
(3)退款
会员支付完成后,如果卖家没发货,会员可以再前台订单管理界面,点击退款链接,订单状态变为维权中。
管理员进入后台订单管理页面后,订单操作链接为退款链接。
管理员点击退款链接,页面提示“退款成功”,同时订单操作变为提醒买家退款链接,以积分的形式。
(4)查看订单详情
管理员点击查看订单详情图标,进入到查看订单详情页面,页面显示订单信息、收货信息、支配方式、商品信息。
3.3.7.公告管理
管理点击左侧下拉菜单的广告管理可以进入公告管理界面。
公告管理功能包括:
添加公告、修改公告、查询公告、单条删除公告、批量删除公告、查看公告详情、查看公告详情。
(1)添加公告
管理员进入公告管理界面,点击添加按钮,进入到添加公告页面。
添加的内容包括:
公告标题、公告内容、起始时间、截止时间、公告类型、公告等级。
(2)查询公告
管理员可以根据三个条件查询公告(公告标题、公告类型、公告等级)。
条件可以是(1,2,3)条件。
公告标题采用模糊查询的方式、公告类型和公告等级采用下拉框的方式。
(3)修改公告
管理员点击修改公告图标,进入到修改公告页面,页面显示公告未修改前的信息,管理员可以根据需要修改公告。
(4)查看公告详情
管理员点击公告详情图标,进入到公告详情页面。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 SSH 礼品 网站 设计 开发
![提示](https://static.bdocx.com/images/bang_tan.gif)