WEB的网上书店Word文件下载.docx
《WEB的网上书店Word文件下载.docx》由会员分享,可在线阅读,更多相关《WEB的网上书店Word文件下载.docx(21页珍藏版)》请在冰豆网上搜索。
网上书店的兴起,实际上是Internet电子商务在图书销售行业发展的必然结果。
(一)课题背景
进入21世纪后,人们的日常生活经历了一种非常重要的变化——互联网对人们的影响日益增加。
根据中国互联网信息中心2007年1月23日发布的《第19次中国互联网络发展状况统计报告》显示,中国网民总数已经达到1.37亿,网民平均每周上网时间为16.9个小时,Internet成为人们获取信息的重要手段,电子商务也成为网民使用Internet的一种重要原因,其中23.6%的网民经常使用Internet购物,而其中又有37.9%的网民选择网上支付,这说明电子商务在中国不断发展。
越来越多的企业正在或即将加入到电子商务活动中,这就要求有相应的电子商务系统来满足其发展需要。
随着Internet的发展和电子商务的兴起,网上书店已成为电子商务领域中的重要应用。
这种新型的图书销售形式,不仅给投资者带来了经济效益,也给读者送去了方便,同时对出版业带来了更大的商机,并取得了一定的社会效益和经济效益。
网上书店以其价格低廉、高效、方便、种类齐全的特点,今后必将会进入到人们的日常生活中。
网上书店开发的主要费用支出是软件的配置与电子商务系统开发相关费用,但由于它是一次性较大投资,以后的软件升级服务相对来说开销比较小。
而项目取得的收益则可以预见。
本文介绍了一个典型的网上书店的设计和实现过程。
系统采用了前台浏览、后台管理的模式,用户在前台可以方便快捷地进行商品浏览、查询、购买等操作;
管理员在后台主要完成Web服务器端的公告管理、商品管理、订单管理及用户管理等操作。
系统的总体架构采用三层的浏览器/服务器(Browser/Server,B/S)结构,整个网站主要由浏览器、Web服务器和数据库服务器三个部分组成.本系统的实现主要运用了ASP.NET技术和MicrosoftSQLServer2000数据库。
网上书店的实施将开拓一个新的市场,建立和开发这样的电子商务平台不但可以为购买者提供极大的便利,而且可以扩大商家的业务范围和市场影响力,减少经营成本,提高工作效率。
网上书店的运用也可以推动网上支付、邮政、速递等服务行业的迅速发展。
(二)系统设计目的
系统总体目的是利用计算机系统实现网上书店销售信息化的管理。
具体要求如下:
1.能够对图书信息、客户信息进行管理。
2.能够进行图书入库、入库退货管理。
3.能够进行图书销售管理。
4.能够进行各种查询操作。
5.能够进行与供应商和客户的结账管理。
6.系统采用良好的人机对话模式,界面设计美观、友好。
7.系统运行稳定、安全可靠。
(三)必备技术的介绍
1.web应用概述
由于web应用是网络中客户机/服务器系统的应用,web中的应用内容都会被系统划分为服务器和客户机两部分。
在用户的客户机上,将会运行web应用程序中的客户端程序,这些程序的运行需要使用Internet浏览器这样专用的软件:
在浏览器中键入web应用的服务器地址,页面就会导航到此服务器上。
此时服务器会处理web请求,并将web应用程序编译成浏览器可以理解的语言,返回到客户机的浏览器上,这时用户就可以浏览到web页面。
2.SQLServer2000中的存储过程
SQLServer可以将一些固定的操作集中起来由SQLServer数据库服务器来实现某个任务,这种方法就是存储过程。
SQLServer中的存储过程与其它编程语言中的过程类似,原因是存储过程可以接受输入参数并以输出参数的形式将多个值返回至调用过程或批处理,包含执行数据库操作(包括调用其它过程)的编程语句,能够向调用过程或批处理返回状态值,以表明成功或失败(以及失败原因)。
在系统中使用存储过程可以提高系统的使用性能。
使用SQLServer中的存储过程的优势有:
1.允许模块化程序设计。
2.允许更快执行。
3.减少网络流量。
一个需要数百行Transact-SQL代码的操作由一条执行过程代码的单独语句就可实现,而不需要在网络中发送数百行代码。
4.可作为安全机制使用。
SQLServer存储过程是用Transact-SQL语句CREATEPROCEDURE创建的,并可用ALTERPROCEDURE语句进行修改。
存储过程定义包含两个主要组成部分:
过程名称及其参数的说明,以及过程的主体(其中包含执行过程操作的Transact-SQL语句)。
3.ASP.NET及其调用存储过程
.NET的核心开发产品主要包括VisualStudio.NET、.NETFramework以及基于.NETFramework的ASP.NET。
.NET框架是在.NET平台上进行开发的基础,它与语言无关,开发者可以选择最适合应用程序的语言(如VisualBasic、C#、Jscript或Perl等)进行系统的开发,也可以跨多种语言分割应用程序。
应用ADO.NET技术可实现对数据源对象的应用。
在ADO.NET中,包括两种类型的数据提供者对象,分别为OLEDB数据提供者对象和SQLServer数据提供者对象。
在本系统中应用的数据库为SQLServer数据库,所以数据应用的操作都是使用SQLServer数据提供者对象。
SQLServer数据提供者对象是专门用于SQLServer数据库系统中的。
4.AJAX简介
Ajax(AsynchronousJavaScriptandXML,异步JavaScript和XML)是由AdaptivePath咨询顾问JesseJamesGarrett首先提出来的。
它是web2.0技术的核心,由多种技术组合而成,使用Ajax技术不必刷新整个页面,而直接对页面的局部进行更新,这可以节省网络带宽、提高网页加载速度,从而缩短用户等待时间,改善用户操作体验。
Ajax用来描述一组技术,包括客户端脚步语言JavaScript、异步数据获取技术XMLHTTP、Request、数据互换和操作技术XML、XSLT、动态显示和交互技术DOM及表示技术XHTML和CSS等。
它极大地发掘了web浏览器的潜力,开启了大量新的可能性,总体而言,AJAX应用程序具有以下特点:
1.通过异步模式,提升了用户体验。
2.优化了浏览器和服务器之间的传输,减少不必要的数据迁移,减少了带宽占用。
3.AJAX引擎在客户端运行,承担了一部分本来由服务器承担的工作,从而减少了大用户量下的服务器负载。
这里用户应该知道,Ajax技术应用是受制于浏览器的。
如果是IE5、Mozilla1.0或Safari1.2之前的版本,Ajax技术的使用就失去了效果。
Ajax技术是web2.0技术的重要组成部分,Ajax技术是对传统web技术的一种改良和发展。
在采用Ajax技术的web应用中,大部分操作都在用户没有觉察的情况下,使用异步请求服务器来完成,并没有出现传统web应用程序中的空白屏幕。
而在这期间,用户仍可以在该页面中执行其他操作;
而不像在传统web应用程序中,用户在等待显示服务器返回执行结果之前将不能在该页面中执行任何其他操作。
二、系统设计
(一)需求分析
网上书店是一个极其便捷的购书方式。
对于书店管理员,它可以轻松的添加,删除,修改图书信息,查看和删除订单,修改订单的付款、出货情况。
对于顾客,在登录注册后,可以查询和浏览图书,选购图书,同时用户可以把图书加入购物车中,并根据购物情况选择修改或确认,也可以删除购物车中的图书、修改其数量。
在提交购物车后,可查看详细订单。
网上书店最重要的功能就是图书的销售,以及管理用户的购物车,本系统所要实现的功能如下:
1.用户登录及身份验证功能
在用户信息管理模块中,共包括三部分的内容:
用户登录、用户注册、用户信息修改。
其中每一步都需要信息验证,如果未通过,需要重新填写或者登录,不同用户分配有不同的权限,规定哪些信息是可以修改的,哪些不能修改。
当然不能修改的信息会在每个页面和每个模块的相关位置和操作过程当中提示出来,用户完全可以根据提示完成一次完整的购书活动。
用户登录管理子系统的流程如图2-1-1所示:
图2-1-1用户登录管理流程图
2.图书查询和浏览模块
在图书查询模块中,用户可按照图书类型查询,也可根据图书具体的详细信息进行查询,二者相结合可以使查询功能更加完善,基本上能够满足用户的要求。
在图书查询完成之后,用户可以浏览到图书的详细信息,包括图书的名称、图书作者、出版社、销售价格等等信息,当然,不同用户的权限不同,可以浏览到的信息也就随之有所差异。
此模块功能如图2-1-2所示:
图2-1-2图书查询和浏览模块图
3.购物车模块功能
购物车模块是网上书店系统中最重要的一部分,是网上书店前台销售管理的核心。
在此模块中允许用户对购物车进行管理:
用户可以把商品放入购物车中,也可以增加、修改、彻底删除购物车中的商品,在客户购物的整个过程中,购物车综合了商品浏览查询、会员登录注册,最终生成客户的网上订单等功能。
购物车模块的流程,如图2-1-3所示:
图2-1-3购物车模块图
(二)系统功能设计思路
在开发网上书店系统前,首先需要定义程序的功能,本系统的功能包括:
主界面,用户登录管理,图书查询管理,浏览图书信息,购物车管理等。
图2-2系统功能图
其中用户登录管理的内容包括:
注册用户登录界面,修改注册的信息,没有注册的用户注册成为系统的合法用户。
用户实现书店系统注册后,才可以在登录界面成功实现登录,在登录系统后,用户可修改个人信息。
图书查询可以有两种方法:
按照类型查询,可以将系统中此类型的图书全部查询出来。
详细查询中,用户可以通过作者、出版社或书籍名中的一项、两项或全部条件项进行查询。
浏览图书信息的功能是查看一本图书的详细信息,这些信息包括图书的作者、出版社、原价、售价、库存数量和内容简介等。
购物车功能包括:
将图书添加到购物车、从购物车中删除图书、商品的最终结算和提交。
添加商品到购物车的功能是将一本图书添加到用户的购物车中,并显示购物车现有商品的列表。
将商品添加到购物车后,可通过修改购物车中的“数量”文本框中的数字,并“更新购物车”,实现商品数量的更新。
删除购物车中的商品是通过选择“删除”,然后“更新购物车”来实现。
商品的结算和提交功能是将购物车中的全部商品进行金额的结算,在商品的结算和提交界面中会显示出所有商品的价格总额,以及显示购物车中所有商品的数量和金额,当用户确认这些信息后,单击“提交”可以进行商品的最终结算。
(三)系统运行环境和开发平台
此网上书店系统开发的关键技术是.NET框架和AJAX异步更新技术。
开发语言为C#语言,数据库系统是SQLServer2000。
系统的运行环境:
服务器端:
本系统运行于Windows2000Server(sp3)+IIS5.0+.NETFramework2.0+SQLServer2000(sp3)+IE6.0的环境中。
客户端:
通过IE6.0或者以上版本浏览器进行访问。
(四)系统功能模块设计
一个设计优秀的网站不仅仅取决于对技术的恰当应用,也取决于精细的规划设计和排版设计,使图形与文字完美的结合起来。
设计始终应以顾客作为出发点,让美观明细的界面和便捷的操作流程来吸引更多的客户。
首页是各页面的导航栏,显示最新的图书信息,推荐图书的信息等综合页面,是用户访问网站实现购书、浏览、查询的综合页面。
主页通过模块布局来控制整个页面,本系统主要由用户登录模块、图书查询浏览模块、购物车管理模块和订单模块组成。
这种划分方式和一般网上书店系统的划分方式有一些不同。
一般网上书店系统把功能模块划分为前台模块和后台模块两大部分,这样划分当然有其合理的因素,因为系统划分为前台和后台也就意味着虚拟了两种不同的角色,系统的管理者和系统的使用者。
当然二者的划分并没有什么严格的界限,只是系统分配的权限不同而已。
就本系统而言,并不强调这样的划分方式,而是先从用户的角度来分析本系统功能模块的设计,然后再逐步分析其对应的后台功能模块。
在介绍各个模块之前,先勾勒出整个系统的工作流程。
如图2-4所示:
图2-4系统工作流程图
1.用户登录模块
考虑到整个系统的安全性,只有通过系统验证的合法用户才能进入系统。
所有注册的用户信息都记录在数据库中,采用Session对象存储用户的信息,判断该用户的用户名和密码是否正确,只有输入正确的用户名和密码,才能进入系统,以确保整个购物的安全性。
用户登录模块具体包括用户注册、用户登录和用户信息修改等部分,如果用户想要退出本网站,可以通过注销退出。
登录界面如图2-4-1所示:
图2-4-1用户登录主界面
用户个人信息更新界面如图2-4-2所示:
2.图书管理模块
图书管理模块包括查询图书、浏览图书信息、查询购书情况、查看各种服务条款等。
用户登录网站后,系统以分类浏览的方式显示出书店的所有书籍,包括书籍的简要信息,诸如书名价格、出版社等,点击书名后可显示该书的详细信息,此时用户也可以查看其他读者对该书的书评。
图书的详细信息主界面如图2-4-3所示:
图书浏览查询功能主要实现图书的分类浏览、关键字检索和高级检索。
图书的高级检索需要客户按照书名、作者、出版社等图书信息的组合查询方式,也可以按照网页上显示的各个图书信息的顺序等多种排序规则来查询。
图书查询主界面如图2-4-4所示:
而对于系统内部维护部分,主要功能有图书的添加;
图书的查询;
修改书名、作者、出版社、折扣、数量等图书信息;
删除图书的书名、作者、出版社、SIBN号等信息;
客户填写缺书单,后台应用程序如果发现客户所需的书己到货,则可通过电子邮件的方式通知客户;
统计畅销书,对图书进行统计排名显示以及系统管理员对图书的封面上传等功能。
3.购物车模块
本模块提取成功登录的客户信息。
当客户登录成功之后,将图书添加到购物车、从购物车中删除图书、修改购物车中数量、商品的最终结算和提交。
当客户不慎选取错误的产品项时,当然可通过修改购物车中的“数量”并“更新购物车”,删除购物车中的商品是通过选择“删除”,然后“更新购物车”来实现。
购物车会自动显示修改后商品的价格以及重新计算购物车内所有商品的价格。
在商品的结算和提交界面中会显示出购物车中所有商品的数量和金额,当用户确认后,单击“提交”可以进行商品的最终结算。
该模块是用户在网上购物过程中临时存储购物信息的数据库,是售书系统的核心部分。
4.订单管理模块
对订单的管理是后台管理系统中关键的部分。
管理者可以管理用户提交的所有订单,查看所有的订单,删除某些订单并查看订单明细。
可以改变订单状态,如已受理订单、已收到货款、已发货等。
提交订单的过程就是通过填写用户信息,然后向orderlist和orderinfo两个表中插入记录的过程。
主要分三个步骤:
首先是输入用户的信息,网页会根据会员信息填写订单内容,然后确认用户输入的信息。
最后确认提交后,就将订单数据写入到数据库中,若操作成功,则显示成功信息,并提示顾客订单号,用于今后的订单查询。
后台管理系统处理网上的客户订单,后台管理员的主要任务就是审核客户填写的订单,确认客户所订购图书的库存以及是否收到客户的汇款后修改订单的状态。
主要功能是查询订单信息,编辑订单的状态,删除无效订单等。
订单主界面如图2-4-5所示:
三、数据库设计
数据库设计是指对于一个给定的应用环境,构造最优的数据库模式,建立数据库及其应用系统,使之能够有效的存储数据,满足各种用户的应用需求。
目前涉及数据库系统主要采用的是以逻辑数据库设计和物理数据库设计为核心的规范设计方法。
其中逻辑数据库设计是根据用户要求和特定数据库管理系统的具体特点,以数据库设计理论为依据,设计数据库的全局逻辑结构和和每个用户的局部逻辑结构。
物理数据
库设计是在逻辑结构确定之后,设计数据库的存储结构及其他实现细节。
要实现系统规划的功能,提高系统的性能,首先需要有一个设计合理、功能完善的数据库.考虑到网上书店作为一个商务站点,需要存储大量的数据信息,在本系统中,使用的数据库管理系统是SQLServer2000,数据库服务器安装在本地计算机上,服务器的地址为localhost(本机),创建的数据库为WebBook。
主要涉及到的表包括:
数据表名
数据表描述和说明
Userinfo
注册用户的信息,包括用户的唯一标识,口令,姓名等信息。
Books
图书信息表,记录了图书的信息。
Booktype
图书类型信息表,存放图书所属种类的详细信息。
Shopping
购买商品信息表,存放用户购买商品的信息。
Order
订单信息表,包含了用户购买商品的每张订单信息。
Ordercontent
订单商品信息表,包含了每张订单中包含商品的详细信息。
部分信息表如下:
1.Userinfo表
字段名
数据类型
长度
允许为空
是否为主键
说明
Uid
Char
20
否
是
用户唯一标识符
Password
口令
Name
姓名
Email
Varchar
50
邮箱地址
Card
证件号
2.Books表
Bid
Int
4
唯一标识
Bname
图书名称
Author
作者
Bprint
出版社
Typeid
图书类型
Num
库存数量
Startp
Money
10
图书原价
Salep
销售价格
Show
Nvarchar
5000
图书概述
3.booktype表
图书类型信息表booktype中存放图书所属种类的详细信息。
typeid
int
typename
类型名称
4.shopping表
购买商品信息表中存放了用户购买商品的信息。
id
Shoppingid
购物车id
Bookquantity
图书数量
图书信息
Shoppingdate
datetime
8
购物时间
存储过程是系统开发过程当中,尤其是数据库设计必不可少的重要组成部分,下面是部分存储过程和函数的创建代码:
1.SET_Purchase存储过程
CREATEPROCSET_Purchase(@SUMINT)AS
DECLARE@JsalaryFLOAT--将数量小于@SUM的书生成订单
IF@SUM<
RETURN-1
BEGINTRAN
INSERTINTOPurchase(Bookid,Pubid,Amount)
SELECTBookid,Pubid,Maxsum-AmountFROMbooks
WITH(XLOCK)WHEREbooks.Amount<
@SUM
IF@@ERROR<
>
BEGIN
ROLLBACK
END
COMMITTRAN
GO
2.GET_Order函数
CREATEFUNCTIONGET_Order(@OrderIDINT)RETURNS
@RETSELECTTABLE(订单号INT,图书编号NCHAR(10),订购数量INT,顾客编号NCHAR(18),姓名VARCHAR(50),联系地址VARCHAR(50),联系电话CHAR(12),邮编CHAR(6))
AS