基于BS结构的网上商城系统的设计与实现Word文档下载推荐.docx

上传人:b****6 文档编号:19037714 上传时间:2023-01-03 格式:DOCX 页数:37 大小:1.06MB
下载 相关 举报
基于BS结构的网上商城系统的设计与实现Word文档下载推荐.docx_第1页
第1页 / 共37页
基于BS结构的网上商城系统的设计与实现Word文档下载推荐.docx_第2页
第2页 / 共37页
基于BS结构的网上商城系统的设计与实现Word文档下载推荐.docx_第3页
第3页 / 共37页
基于BS结构的网上商城系统的设计与实现Word文档下载推荐.docx_第4页
第4页 / 共37页
基于BS结构的网上商城系统的设计与实现Word文档下载推荐.docx_第5页
第5页 / 共37页
点击查看更多>>
下载资源
资源描述

基于BS结构的网上商城系统的设计与实现Word文档下载推荐.docx

《基于BS结构的网上商城系统的设计与实现Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《基于BS结构的网上商城系统的设计与实现Word文档下载推荐.docx(37页珍藏版)》请在冰豆网上搜索。

基于BS结构的网上商城系统的设计与实现Word文档下载推荐.docx

第一章前 言

1.1研究背景

目前很多公司都是从事多年商品批发零售的商品经销商,由于其批发经销经营,大多与各商品供货商合作密切,且批发业务遍及全国各地,无论是从商品价格竞争上还是在商品经营范围以及物流供应链上,都有较大的优势,通过网上销售经营将会使利润扩大化;

同时为了加强公司的组织经营管理,公司内部各部门先后建立起了自己的局域网,并实现了网络互联,建立起企业内部的管理信息系统。

由于近年来,网络经济的崛起,为了加强公司的竞争力与拓展业务的需要,许多公司已经探讨并建立网上商城电子商务网站系统。

网络经济全球化的发展,跨国大公司大企业触角分布全球每一个角落,相对于较强竞争者,电子商务能够解决我们所面临的许多问题和困难,如我们的规模,营销网络小,企业效率低等,如何取得突破口,赢得市场?

电子商务不受空间与时间制约的优点给我们提供了契机,通过构建自己的电子商务网站开辟更广的市场空间;

与此同时,我们也受到国内同行的竞争,如何取得竞争优势,打破地域限制,抢占市场、赢得市场,这也就是我们构建电子商务网站的外部竞争需求因素。

另一方面,构建电子商务网站,可以促使公司业务重组,使商品流、物流、资金流等有机结合,加速公司内部的运作效率,并深刻地改变着企业的营销方式,向网络化转变,节省经营费用;

同时,通过构建企业电子商务网站,不仅建立了公司的企业文化,而且能树立公司形象,建立起了企业的品牌效应。

公司对这些经营管理效益的追求成为构建电子商务网站的内部经营管理需求因素。

在传统的购物方式四出寻找商品所化费的时间、付出的交通费用以及体力上的透支相对于越来越烦忙的人们来说是一种浪费,随着Internet的普及以及人们生活质量的提高,消费者渐渐意识到网上购物方便快捷的优越性,成为一支新兴的重要的不断壮大的消费队伍,因此,公司构建电子商务网站,是适应消费者消费方式转变的需要。

赢得消费者才能赢得市场,有市场的企业才能生存发展。

因此,公司构建电子商务网站是加强企业竞争力,开拓市场,赢取新的网络经济制高点的重要举措能。

1.2电子商务网站发展现状

从国际范围看,我国的信息化程度很低。

目前个人计算机的市场保有量仅为1500万台,其中还有一部分是不能上网的计算机,平均每个企业和政府部门还不到一台。

网络运行速度慢、网络运营资费高、习惯利用电子商务获取商机的人数少等都制约着电子商务的发展。

但我国的电子商务发展势头强劲。

从1998年由IT业界和媒体宣扬电子商务的概念开始算起,在短短几年间,电子商务已从启蒙阶段迅速进入实施阶段,新的电子商务网站像网上商店、商城、专卖店、拍卖店,网上定票、旅游、教育、医疗以及各种电子商务资讯和交易站点等,如雨后春笋般涌现出来。

据中国电子商务网的统计,截至到今年年初,国内的网上商店已发展到5000多家,并正以平均每天20家以上的速度增长。

发展的区域也从北京、上海、广州、杭州等少数城市向沿海和内地各大城市扩展,许多传统行业的工业和商业企业已开始登上电子商务的舞台。

网民数量急剧增加,已发展到2.1亿人(电子商务规模化应用所需的数量)。

同时,境内外风险资金大量介入,国内知名网站如“新浪”“搜狐”“8848”“阿里巴巴”等都相继获得境内外上千万美元的投资。

更为重要的是,从政府到企业界,从社会各方面到一般消费者,对电子商务的发展前景和巨大潜力认识愈来愈清楚,其中政府积极支持电子商务发展是关键中的关键[1]。

1.3论文内容安排

本文是基于B/S模式的网上商城系统,论述了系统方案选择,利用Struts框架中的MVC模式的实现和所涉及的软硬件各方面的介绍。

第一章介绍网站创建背景,研究现状,需求分析以及内容分析。

第二章介绍B/S模式,MVC模式,数据访问技术、开发工具和语言的选择

第三章讨论系统的功能,画出流程图,模块图,结构图并进行数据库的设计。

第四章完成对系统进行功能模块的设计,并对一些系统实现的代码、界面进行介绍。

最后是结束语总结在这段时间内的学习心得和感想。

第二章构建系统的相关技术概述

2.1B/S(Browser/Server)结构

伴随着Internet的迅速发展,计算机技术正在由基于C/S(client)模式的应用系统转变为基于B/S(Browser/Server)模式的应用系统[2]。

过去,网络软件的开发都采用C/S(client)模式,在这种模式下,主要的业务逻辑都集中于客户端程序,因此,必然导致以下问题:

(1)系统安装、调试、维护和升级困难。

由于客户端的硬件配置可能存在差异,软件环境也可能各不相同,因此,在安装时,必须对每一个客户端分别进行配置,同样,在软件升级时也要对客户端分别处理。

(2)在整个系统中,业务逻辑和用户界面都集中到了客户端,必然会增加安全隐患。

正是由于以上C/S模式的客户端程序在部署和维护时面临的问题,人们逐渐接受了基于浏览器(Brower)/服务器(Server)结构的系统,即B/S模式。

在此模式中,最核心的一点就是用通用的浏览器取代了原来的客户端程序。

B/S模式虽然只对C/S模式做了少许变动,但带来了巨大的好处:

(1)应用程序在部署、升级、维护时,只需要在服务器端进行配置就可以了;

(2)所有的配置工作都集中在服务器端,提高了系统的安全性;

在B/S这种结构下,用户工作界面是通过WWW浏览器来实现,极少部分事务逻辑在前端(Browser)实现,主要事务逻辑在服务器端(Server)实现,这就形成所谓三层3-tierB/S结构。

见图2-1所示。

图2-2:

三层B/S结构图

这样就大大简化了客户端电脑载荷,减轻了系统维护与升级的成本和工作量,降低了用户的总体成本(TCO)。

以目前的技术看,局域网建立B/S结构的网络应用,并通过Internet/Intranet模式下数据库应用,相对易于把握、成本也是较低的。

它是一次性到位的开发,能实现不同的人员,从不同的地点以不同的接入方式(比如LAN,WAN,Internet等)访问和操作共同的数据库;

它能有效地保护数据平台和管理访问权限,服务器数据库也很安全。

随着浏览器技术植入操作系统内部,这种结构更成为当今应用软件的首选体系结构。

2.2MVC模式

2.2.1MVC模式的概念

MVC(ModelViewControl)模型-视图-控制器,本来是存在于Desktop程序中的,M是指数据模型,V是指用户界面,C则是控制器。

使用MVC的目的是将M和V的实现代码分离,从而使同一个程序可以使用不同的表现形式。

比如一批统计数据你可以分别用柱状图、饼图来表示。

C存在的目的则是确保M和V的同步,一旦M改变,V应该同步更新。

MVC是XeroxPARC在八十年代为编程语言Smalltalk-80发明的一种软件设计模式,至今已被广泛使用。

最近几年被推荐为Sun公司J2EE平台的设计模式,并且受到越来越多的使用ColdFusion和PHP的开发者的欢迎[3]。

MVC的功能图如图2-2所示。

如何处理应用程序的界面变得越来越有挑战性。

MVC一个大的好处是它能为你的应用程序处理很多不同的视图。

在视图中其实没有真正的处理发生,不管这些数据是联机存储的还是一个雇员列表,作为视图来讲,它只是作为一种输出数据并允许用户操纵的方式。

2.2.2MVC如何工作

MVC是种设计模式,它强制性的使应用程序的输入、处理和输出分开。

使用MVC应用程序被分成三个核心部件:

模型、视图、控制器。

它们各自处理自己的任务。

MVC的功能图

(1)视图:

是用户看到并与之交互的界面。

对老式的Web应用程序来说,视图就是由HTML元素组成的界面,在新式的Web应用程序中,HTML依旧在视图中扮演着重要的角色,但一些新的技术已层出不穷,它们包括MacromediaFlash和象XHTML,XML/XSL,WML等一些标识语言和Webservices.

(2)模型:

表示企业数据和业务规则。

在MVC的三个部件中,模型拥有最多的处理任务。

例如它可能用象EJBs和ColdFusionComponents这样的构件对象来处理数据库。

被模型返回的数据是中立的,就是说模型与数据格式无关,这样一个模型能为多个视图提供数据。

由于应用于模型的代码只需写一次就可以被多个视图重用,所以减少了代码的重复性。

(3)控制器:

接受用户的输入并调用模型和视图去完成用户的需求。

所以当单击Web页面中的超链接和发送HTML表单时,控制器本身不输出任何东西和做任何处理。

它只是接收请求并决定调用哪个模型构件去处理请求,然后用确定用哪个视图来显示模型处理返回的数据。

现在我们总结MVC的处理过程,首先控制器接收用户的请求,并决定应该调用哪个模型来进行处理,然后模型用业务逻辑来处理用户的请求并返回数据,最后控制器用相应的视图格式化模型返回的数据,并通过表示层呈现给用户[4]。

2.3数据访问技术

系统采用JDBC-ODBC桥数据驱动程序,以纯Java的方式来连接数据库,为访问不同的数据库提供统一的接口。

JDBC数据库驱动程序是把JDBC调用翻译成厂商专用API的调用。

开放数据连接(ODBC)最初是为微软操作系统上的SQL提供API标准,后来也在其他的平台上提供了支持。

ODBC为直接访问数据定义了一组函数,而不是在客户应用程序中嵌入SQL。

JKBC-ODBC桥在JKBCAPI和ODBCAPI之间提供了一个桥梁,这个桥把标准的JDBC调用翻译成对应的ODBC调用,然后通过ODBC库把它们发送到ODBC数据源[5]。

2.4开发工具和语言的选择

本系统是基于B/S模式的应用程序,采用面向对象的方法实现本系统。

而Java语言是一个支持网络计算的面向对象程序设计语言。

Java语言吸收了Smalltalk语言和C++语言的优点,并增加了其它特性,如支持并发程序设计、网络通信、和多媒体数据控制等。

Java语言的优良特性使得Java应用具有无比的健壮性和可靠性,这也减少了应用系统的维护费用[6-7]。

Java对对象技术的全面支持和Java平台内嵌的API能缩短应用系统的开发时间并降低成本。

Java的编译一次,到处可运行的特性使得它能够提供一个随处可用的开放结构和在多平台之间传递信息的低成本方式。

特别是Java企业应用编程接口(JavaEnterpriseAPIs)为企业计算及电子商务应用系统提供了有关技术和丰富的类库[8]。

所以选择java为开发该系统的编程语言。

Eclipse是个java开发的IDE,很受欢迎,开源的东西没有一个标准的IDE象VS2005这样的,所以很多IDE争霸市场,目前为止Eclipse算是个胜利者。

Eclipse有很多插件,用来完善它的各种编辑功能,你可以完全不用插件,但所有的代码都得你自己写。

所以用eclipse就是用它的各种插件生成代码然后调用jre编译[9]。

jre就和Eclipse没关系了。

至于发布到tomcat下就更和eclipse没关系了,不过eclipse有tomcat插件可以方便发布[10]。

当然只是“方便”而不是必须。

就象插秧一样,可以手插,不过用插秧机那就会更方便快捷了。

在做此系统时就选用了Eclipse+tomcat。

2.5本章总结

本章总结了系统的总体方案,系统将采用B/S模式架构,用MVC设计模式进行模块划分,表示模块用JSP、ActionForm、Struts客户化标签来编写,控制器主要是些ActionServlet、Action,模型模块主要是Javabean[11]。

软件开发采用了面向对象的软件开发方法,并用java作为系统开发语言,确定软件开发的各种软硬件条件。

第三章系统的总体设计

3.1程序功能实现流程设计

网上商城网站主要实现网上购物的整个流程,用户进入网上商城网站,先注册登记成为会员,填写有关会员的资料,注册成功后使用其注册的帐号登录(只有登录后才可以使用网上下单定购功能);

通过网站上的商品查询和浏览功能,查找相关商品,浏览商品的信息;

找到想要的商品后,会员便可以使用下单功能,把想购买的商品先放进购物篮,然后再找其它商品;

会员在找到全部想要的商品后,点击结帐按钮,进行结帐服务;

在下单的过程中,会员可查询购物篮里面的下单的商品项,并可以删除订购项目和修改订购的数量。

会员在网上商城网站购物的整个购物流程如图3-1所示。

图3-1:

网站购物与交易处理流程图

3.2系统的模块设计

经过对网上商城网站功能与网站构建目标的分析,网上商城网站功能由三大部份组成:

会员登记、商品浏览、订购服务。

各功能分解成若干子模块分工合作共同完成,其功能模块图如图3-2所示。

图3-2:

网上商城网站功能模块图

3.3系统的结构设计

此网上商城系统采用MVC框架,图3-3基本勾勒出了一个基于Struts的应用程序的结构,从左到右,分别是其表示层(view)、控制层(controller)、和模型层(Model)。

其表示层使用Struts标签库构建。

来自客户的所有需要通过框架的请求统一由叫ActionServlet的servlet接收(ActionServletStruts已经为我们写好了,只要您应用没有什么特别的要求,它基本上都能满足您的要求),根据接收的请求参数和Struts配置(struts-config.xml)中ActionMapping,将请求送给合适的Action去处理,解决由谁做的问题,它们共同构成Struts的控制器。

Action则是Struts应用中真正干活的组件,开发人员一般都要在这里耗费大量的时间,它解决的是做什么的问题,它通过调用需要的业务组件(模型)来完成应用的业务,业务组件解决的是如何做的问题,并将执行的结果返回一个代表所需的描绘响应的JSP(或Action)的ActionForward对象给ActionServlet以将响应呈现给客户。

图3-3:

网上商城网站系统结构图

3.4数据库的设计

网上商城网站系统为了实现网站功能,设计了数据库(netstore),各表结构如下:

会员表:

包括系统编号,用户名,登录密码,真实姓名,邮箱5个字段。

结构如图3-4所示。

图3-4:

会员表结构图

订单表:

包括系统编号,订单号,商品编号,商品数量4个字段。

结构如图3-5所示。

图3-5:

订单表结构图

订单明细表:

包括订单号,会员用户名,收货人姓名,收货人地点,收货人邮编,收货人电话,订单日期,订单状态8个字段。

结构如图3-6所示。

图3-6:

订单明细表结构图

商品表:

包括商品编号,商品名称,商品数量,商品信息,商品价格,商品小图片,商品大图片7个字段。

结构如图3-7所示。

图3-7:

商品表结构图

3.5本章小结

本章首先对系统流程进行了简要分析,做出系统的流程图;

接下来又功能划分结构,做出了系统的结构图;

最后分析了整个项目的数据结构和逻辑,搭建好系统所需的的数据库,为以后代码的编写提供很好的准备。

第四章系统的代码实现

在前几章中,详细介绍了B/S模式,Struts框架中的MVC模式,以及数据库连接的技术。

本章就依据以上知识和系统流程图、模块图,介绍系统的主要实现步骤。

在MVC模式下,系统被分为模型,视图,控制器三个模块,每个模块包含的文件都是相对独立的,与其他模块里的代码耦合度大大降低[12]。

其代码文件构成结构如图4-1所示。

下面来介绍系统的代码实现,由于代码较多,主要是客户层的主要代码实现,其中对于购物车部分代码将做详细介绍。

4.1系统主界面

index.jsp主页面主要是由顶部栏top.jsp,功能栏link.jsp,搜索栏search.jsp,主

图4-1:

代码文件构成结构图

题部分success.jsp,底部栏bottom.jsp5个页面构成。

页面如图4-2所示。

<

html>

<

head>

<

title>

网上商城-网您想要的东西!

/title>

linkhref="

images/style.css"

type="

text/css"

rel="

stylesheet"

>

/head>

bodytopmargin="

0"

marginheight="

divid="

bodywith"

<

jsp:

includepage="

top.jsp"

/>

link.jsp"

search.jsp"

tablewidth="

100%"

height="

1"

<

tr>

<

td>

/td>

/tr>

/table>

cellspacing="

cellpadding="

tdid="

zhong"

<

success.jsp"

bottom.jsp"

/div>

/body>

/html>

图4-2:

系统主界面

4.2注册部分的主要实现

只有注册后并且登录的用户才可以进行购买,否则只能进行商品的浏览的搜索。

注册页面的部分关键代码如下:

……

html:

formaction="

/register"

onsubmit="

returnvalidateRegisterForm(this)"

focus="

reg_name"

styleId="

form1"

table>

tralign="

center"

tdcolspan="

2"

H2>

bean:

messagekey="

page.register.state"

/h2>

tdalign="

right"

page.register.reg.reg_name"

textproperty="

size="

15"

fontcolor="

red"

*必填<

/font>

page.register.reg.reg_pwd"

passwordproperty="

reg_pwd"

17"

*必填,6-16个字符<

Tr>

page.register.reg.reg_repwd"

reg_repwd"

/Tr>

trheight="

50"

inputtype="

image"

src="

images/reg.gif"

name="

imageField"

/>

left"

&

nbsp;

&

imgrc="

images/reset.gif"

border="

onclick="

theReset()"

alt="

点击重填"

style="

CURSOR:

hand"

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 自然科学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1