基于三层架构网上书店系统分析和设计.docx
- 文档编号:11720384
- 上传时间:2023-03-31
- 格式:DOCX
- 页数:21
- 大小:338.80KB
基于三层架构网上书店系统分析和设计.docx
《基于三层架构网上书店系统分析和设计.docx》由会员分享,可在线阅读,更多相关《基于三层架构网上书店系统分析和设计.docx(21页珍藏版)》请在冰豆网上搜索。
基于三层架构网上书店系统分析和设计
本科毕业论文
基于三层架构的网上书店系统的分析与设计
摘要
随着电子商务的发展,网上购物服务逐渐深入到人们的生活中。
网上书店作为其中重要的一部分,给人们的生活带来了很多方便。
通过网上书店,人们可以足不出户选购自己所需的图书。
该系统主要由前台信息发布和后台管理维护系统两部分构成;在支持整个的运作功能的基础上,能帮助用户对前台进行日常管理和信息发布;本主要实现对书籍的展示和销售,对整个的设计进行了总体描述,详细介绍了网上书店系统从需求分析、概要设计、数据库设计到详细设计的完成过程。
系统用ASP.NET技术实现动态网上书店的开发,充分突出了ASP.NET技术的优越性。
另外,使用ASP.NET三层架构技术使得本系统结构灵活、性能更佳。
在此,着重论述了购物车和购书管理电子商务的具体功能实现、关键技术的使用。
关键词电子商务;网上书店;购物车
第1章绪论
21世纪是电子商务的世纪。
电子商务通过大幅度地降低交易成本、增加贸易机会、简化交易流程、提高服务质量、改善物流电子商务等,极推动了全球经济的发展,并在很大程序上影响着我们的生活方式和工作方式。
众所周知,电子商务的存在与发展都离不开商务网络的支持,各种商务不仅已经成为现代企业的门户,同时也是企业从事电子商务活动必不可少的基础平台。
通过网上图书销售系统的设计来理解如何把一个实体企业网络化,搭建B2C模式的网上交易平台,纵观现在的两大主流开发体系:
Microsoft的.NET体系和SUN公司的以J2EE(Java2EnterpriseEdition)为核心的SUN-ONE(SUNOpenNetworkEnvironment)战略,无论在哪套体系中,基于WEB的技术都在被逐步渐加强,.NET推出了以ASP.NET为代表的WEB开发技术,而在SUN的Java体系中,则有JSP/Servlet/JavaBean与之相抗衡。
本次毕业设计主要采用ASP.NET技术,并综合相关的C#技术,数据库技术和软件工程的理论来完成,其次本系统采用ASP.NET三层架构开发模式增加了系统的灵活性,使得系统可移植性大大提高。
1.1课题背景
电子商务活动利用前所未有的方式将顾客、销售商、供货商联系在一起,能将有价值的信息迅速传递给需要的人们。
网络技术的成熟,促进了信息技术更加广泛的应用,因此建立网上销售充分运用网络技术可满足企业不断增长的供货能力、客户和市场竞争的需求。
电子商务的建立可使企业在商场上不断取得发展的重要技术,并赢得越来越多的客户。
企业也可利用和网络触角伸展到客户的家中,架起一座桥梁,以先进的技术渗透于订货、生产、交货、支付甚至售后服务等整个商务过程。
网络技术引发企业市场的营销战略发生了极深刻的变化,传统的营销理念走向终结,新型的整合营销得到企业和社会的广泛关注。
网络技术增强了企业管理功能,为企业管理提供全新的工具和手段,已成为企业管理的有效手段。
它的功能已不单是提高管理效率,而且还将通过管理的科学化和化,全面增强企业管理功能。
网络经济是用现代信息技术和网络技术,依靠形成的互联网网络进行商务活动,它集金融电子化、管理信息化、办公室自动化于一体。
1.2国外在该方向的研究现状及分析
随着互联网的普及以及近几年来电子商务的发展,网上购物逐渐深入到人们的生活中,给人们带来了极大的便利。
其中网上图书销售系统是电子商务时代的一个典型代表。
目前我国运作和销售较好的大型网上书店,如当当、卓越和旌旗席殊、中国书网网上书店等,这些网上书店各具优势。
在国外,影响较大的网上书店有美国的亚马逊,德国的贝塔斯曼和英国的因特网书店。
英国书业界人士分析,未来英国的网上售书将成为图书销售渠道中的主要渠道。
1.3使用的开发平台
系统开发环境:
WindowsXP、Microsoftvisualstudio2008,
数据库:
MicrosoftSQLServer2005
开发语言:
C#语言、ASP.NET、HTML、CSS
WEB服务器:
Tomcat5.0.19及以上版本
客户端运行环境:
IE4及以上版本
表1-1开发平台
开发环境
WindowsXP、Microsoftvisualstudio2008,
数据库
MicrosoftSQLServer2005
语言
C#语言、ASP.NET、HTML、CSS
WEB服务器
Tomcat5.0.19及以上版本
客户端运行环境
IE4及以上版本
第2章系统总体分析和设计
本章从系统的需求分析、可行性研究、总体设计、数据库的设计等方面入手对整个系统进行了总体的分析说明。
经过一系列的分析整合验证了该学校系统实现的可行性。
同时也给出了整个系统的功能模块图及各模块功能介绍,使得整个系统的整体功能清晰明了。
2.1系统功能概述
本学校主要包括前台客户端系统和后台书店管理系统两部分,主要是实现网上选课、评估、信息录入等功能的系统。
一个典型的网包括:
新闻信息、介绍信息、留言信息、联系方式、教师介绍等模块,本系统也不例外。
2.2需求分析
(1)售前服务
本网上书店比传统书店提供更为丰富的书籍信息,如提供图书的出版信息,可供书目、新书信息、新书介绍等。
互联网具有交互性的特点,为网上书店有效地整合各种信息创造了条件。
首先,网上书店要整合读者与和书店之间的信息,网上书店要让厂家能够及时了解读者的需求动态,也要让读者及时了解的出版动态,而且这种信息交流要做到双向互动;其次,网上书店要整合读者与图书的信息,可以把读者的购书经历及读后感在网上登出,为其他读者提供购书参考。
(2)售后服务
网上书店只是提供了一个虚拟的卖场,配送服务是网上书店营销服务的一个重要容。
当前网上书店的送货方式主要有三种:
一是通过邮局寄送,二是雇用配送公司发送,三是自己组织人员配送。
但是由于人力物力有限,在此本系统对售后服务这个模块不做过多设想。
2.3可行性分析
根据初步调查的结果,可以做出系统开发可行与否的结论。
任何一个工程的立项都需要进行项目的可行性研究,这是保证系统能够正常开发的必要环节。
信息系统开发项目是一项复杂的高科技系统工程,可行性研究也是必不可少的。
2.3.1技术可行性
技术方面:
在大学期间比较重视C#的学习,并有良好的编程经验。
对.NET平台及其开发环境VisualStudio2008相当熟悉,对Web开发相关经验虽有所欠缺但没有太大问题。
有一定的软件工程发面的知识,为项目开发各个环节打下了良好的基础。
硬件方面:
目前一般各企业的办公室和家庭中,基本都已经配备了性能较好的计算机,完全可以满足所需要的配置。
2.3.2经济可行性
根据实际情况,对于开发一套培训机构,从开发费用,运行费用,都在企业和个人的承受围之。
然而,使用该培训机构所带来的帮助是显而易见的,主要表现在:
提高了家长对学校的了解、提高了教师繁琐的工作效率、提高了学生对于各方的信息了解程度。
如:
学生对教师的评估等。
2.3.3实践可行性
新形势、新时代的发展要求,使教学机构的发展朝着规化,标准化,潮流化方向发展。
大多数教学机构具备了建立自己的平台的基础,学校的开发适应了社会发展的趋势,符合教育机构的要求,也加快了科学教育发展的步伐,实践证明,本符合实际需要,具有实践价值,具有较强的生命力。
2.4概要设计
该系统包括前台展示和后台管理两方面的容,因此概要设计包括前台、后台系统功能模块图以及系统功能功能模块简介。
从整体上更加清晰、明了的介绍了本网上书店系统的模块划分和实现功能。
2.5数据库设计与实现
相应的数据库主要包括users(用户信息表)、Article(文章信息表)、Prcture(图片信息表)、Download(下载信息表)、Channel(频道信息管理表)、Announcement(公告信息栏表)6数据库表。
该部分主要从数据库关系图、数据库各表实现两方便来描述数据库的设计和实现。
2.5.1数据库关系图
本小节主要介绍数据库的关系设计。
userID是Users实体的主键,ArticleID是Article实体的主键,PhotovoteID是PhotovoteI实体的主键,DownloadID是Download实体的主键,ChannelID是Channel实体的主键,AnnouncementID是Announcement实体的主键。
详细的关系图如下图2-5-1所示:
(1)user表
(2)Article表
(3)Prcture表
(4)Download表
(5)Channel表
(6)Announcement表
图2-3数据库关系图
2.5.2数据库物理设计
本小节主要讲述数据的物理模型设计,并给出users、Article、Prcture、Download、Channel、Announcement实体的物理模型。
实体的物理模式如下所示:
(1)用户信息表(users表)
Users表用来存储会员注册信息,包括用户名、注册、接收地址等信息。
在表2-1中列出了该表中所包含的字段描述信息。
表2-1users表的数据结构
字段名称
字段类型
字段长度
是否主键
字段描述
UserID
Int
5
YES
用户编码,自增长
GroupID
varchar
50
NO
用户组ID,0为未指定
UserName
varchar
20
NO
用户名
PassWord
varchar
50
NO
密码
Question
text
NO
密码问题
Answer
nchar
6
NO
问题答案
nchar
11
NO
电子信箱
RealName
nchar
11
NO
真实
Sex
nchar
11
NO
性别
birthday
nchar
11
NO
出生日期
IDCard
nchar
11
NO
OfficeTel
nchar
11
NO
办公
HomeTel
nchar
11
NO
家庭
Mobile
nchar
11
NO
手机
(2)文章信息表(Article表)
Article表是用来保存的基本信息有关的数据表,是维护管理文章数据的依据,包括文章的标题,所属类型等详细的信息,在表2-2中列出了该表中所包含的字段描述信息。
表2-2Article表的数据结构
字段名称
字段类型
字段长度
是否主键
字段描述
ArticleID
Int
5
Yes
编码,自增长
Tid
varchar
50
NO
对应的栏目ID
KeyWords
varchar
20
NO
文章关键字
TitleType
int
50
NO
Title
varchar
50
NO
简短标题
FullTitle
varchar
50
NO
完整标题
Intro
text
NO
文章导读
ShowComment
varchar
50
NO
是否显示评论
TitleFontColor
varchar
50
NO
加颜色
TitleFontType
varchar
50
NO
ArticleContent
varchar
50
NO
文章容
Author
varchar
50
NO
作者
Origin
varchar
50
NO
来源
Hits
varchar
50
NO
点击数
(3)图片信息表(Prcture表)
Prcture表是用来保存的基本信息有关的数据表,是维护管理图片数据的依据,包括图片的标题,所属类型等详细的信息,在表2-3中列出了该表中所包含的字段描述信息。
表2-3Prcture表的数据结构
字段名称
字段类型
字段长度
是否主键
字段描述
Id
int
50
YES
编码,自增
ChannelID
varchar
50
NO
ClassID
varchar
50
NO
InfoID
varchar
50
NO
VoteTime
varchar
50
NO
UserName
varchar
50
NO
UserIP
varchar
50
NO
VoteOptions
varchar
50
NO
(4)下载信息表(Download表)
Download表用来记录客户下载的信息,对上传下载文件的存储信息。
在表2-4中列出了该表中所包含的字段描述信息。
表2-4Download表的数据结构
字段名称
字段类型
字段长度
是否主键
字段描述
DownloadID
int
5
YES
自增
Tid
varchar
50
NO
目录分类
KeyWords
varchar
50
NO
关键字
Title
varchar
50
NO
下载名称
DownSize
varchar
50
NO
大小
DownUrls
varchar
50
NO
下载地址
AddDate
datetime
50
NO
更新时间
(5)频道信息管理表(Channel表)
Channel表做为对文章,图片,下载等容进行详细的分类功能,同时能添加模块,实现功能的扩展。
在表2-5中列出了该表中所包含的字段描述信息。
表2-5Channel表的数据结构
字段名称
字段类型
字段长度
是否主键
字段描述
ChannelID
int
5
YES
自增
ChannelName
varchar
50
NO
模型名称
ModelEname
varchar
50
NO
存放目录
InfoVerificTF
varchar
50
NO
会员审核功能
(6)公告信息栏表(Announcement表)
Announcement表做为对学校的最新信息的发布浏览存放功能。
在表2-6中列出了该表中所包含的字段描述信息。
表2-6Announcement表的数据结构
字段名称
字段类型
字段长度
是否主键
字段描述
AnnouncementID
int
5
YES
自增
Title
varchar
50
NO
AddDate
varchar
50
NO
Author
varchar
50
NO
第3章详细设计
本章主要介绍了的详细设计和关键部分具体实现,按照三层架构分层次具体讲述系统各功能模块的实现,并给出必要的参考图片和参考代码。
就各个功能模块的操作步骤、功能、注意事项做详细介绍。
3.1公共类描述
公共类主要用来为各层提供数据支持。
该包括文章信息类(Article类)、用户信息类(user类)、图片信息类(Prcture类)、公告信息类(Announcement类)、下载信息类(Download类)。
该部分以文章信息类(Article类)、用户信息类(user类)为例讲述公共类的实现。
3.1.1文章信息类(Article类)
该类主要实现对文章信息表各字段的封装及规定个字段属性访问器的访问权限。
图3-1为该类的类结构图,表3-1列出了文章信息类的对象属性。
图3-1Article类的类结构图
字段名称
字段类型
字段长度
ArticleID
Int
5
Tid
varchar
50
KeyWords
varchar
20
TitleType
int
50
Title
varchar
50
FullTitle
varchar
50
Intro
text
ShowComment
varchar
50
TitleFontColor
varchar
50
TitleFontType
varchar
50
ArticleContent
varchar
50
表3-1Article类的对象属性
3.1.2用户信息类(user类)
该类主要实现对客户信息表各字段的封装及规定各字段属性访问器的访问权限。
图3-2为该类的类结构图,表3-2列出了用户信息类的对象属性。
图3-2user类的类结构图
表3-2user类的对象属性
属性
字段类型
描述
userName
String
用户名
userPwd
string
用户密码
userEmail
int
userPostcode
double
用户邮编
userphone
int
用户手机
userAddress
string
用户地址
userCity
string
用户所在城市
3.2数据访问层
该层主要是对原始数据(数据库或者文本文件等存放数据的形式)的操作层,而不是指原始数据,也就是说,是对数据的操作,而不是数据库,具体为业务逻辑层或表示层提供数据服务。
主要包括数据库基本操作类(DataBase类)和数据库连接类(SqlConClass类)。
3.2.1数据库操作类(DataBase类)
该类包含了经贸培训学校对数据库的基本操作方法,包括各种返回类型的sql语句执行方法,是其他类的基类。
该类的类结构图如图3-3所示,该类的对象方法如表3-3所示。
图3-3DataBase类的类结构图
表3-3DataBase类的对象方法
方法名称
属性描述
Open
打开数据库连接
close
关闭数据库连接
dispose
释放数据库资源
ExecuteSql
执行Sql语句操作
ExecuteSqlResult
返回查询结果
ExecuteSqlDs
返回数据集信息
ExecuteSqlIntValue
返回类型为int型的第一行第一列
ExecuteSqlObjectValue
返回值为Object型的第一行第一列的结果值
关键代码:
执行sql语句操作代码如下所示:
publicstaticintExecuteSql(stringsql)
{SqlConnectionconn=SqlConClass.getConnect();
SqlCommandcmd=newSqlCommand(sql,conn);
try{conn.Open();
cmd.ExecuteNonQuery();
return0;}
catch(SqlExceptionerr)
{thrownewException(err.Message);}
finally{
cmd.Dispose();//释放资源
conn.Close();}}
返回值为Object型的第一行第一列的结果值的方法的代码如下:
publicstaticobjectExecuteSqlObjValue(stringsql)
{SqlConnectionconn=SqlConClass.getConnect();
SqlCommandcmd=newSqlCommand(sql,conn);
try
{conn.Open();
objectr=cmd.ExecuteScalar();
if(Object.Equals(r,null))
{thrownewException("查询结果为空!
");}
else
{returnr;}}
catch(SqlExceptionerr)
{thrownewException(err.Message);}
finally
{cmd.Dispose();
conn.Close();}}
ExecuteSqlResult、ExecuteSqlDs、ExecuteSqlIntValue等方法的具体代码同上所示,在此不再赘述。
3.2.2数据库连接类(SqlConClass类)
该类中包含了各种数据库的连接方式及数据库连接的测试方法,为该中所有的数据库操作提供连接字符串。
该类的类结构图如图3-4所示,该类的对象方法如表3-4所示。
图3-4SqlConClass类的类结构图
表3-4SqlConClass类的对象方法
方法名称
属性描述
TestConnet
测试数据库连接
getConnect
Windows方式下的数据库连接
getCon
Sql方式下数据库连接
关键代码:
Sql方式下数据库的连接方法实现代码如下所示:
staticpublicSqlConnectiongetCon(Stringserver,StringdataBase,stringaccount,stringpwd)
{SqlConnection=newSqlConnection("DataSource="+server+";InitialCatalog="+dataBase+";uid="+account+"pwd="+pwd);try
{.Open();}
catch(SqlExceptionex)
{Console.WriteLine(ex.Message);}
return;}
数据库连接测试方法的实现代码如下所示:
publicboolTestConnect()
{SqlConnectionconn=newSqlConnection();
conn.ConnectionString="DataSource=.;InitialCatalog=网上书店;IntegratedSecurity=True";
try{conn.Open();
return(conn.State==ConnectionState.Open);}
catch(SqlExceptionerr)
{returnfalse;}
finally{conn.Close();}}
3.3业务逻辑层描述
业务逻辑层在数据访问层之上,用于访问数据层,从数据层获取数据、修改数据以及删除数据,并将结果返回给表现层。
该层主要包括文章操作类(Article类)、图片信息类(Prcture类)、下载信息类(Download类)、用户操作类(User类)等实体类。
3.3.1文章操作类(Article)
该类包含了图书操作的所有方法,包括各种类型的文章信息的添加、删除、修改、查询方法。
该类的类结构图如下图3-5所示,对象方法如表3-5所示。
图3-5Article类的类结构图
表3-5Article类的对象方法
方法名称
属性描述
AddNewArticle
添加文章
DeleteArticleById
删除指定的文章信息
GetArticleByHits
获得热门文章
GetArticleByType
根据文章类型获得文章信息
GetArticleDetail
根据文章编码获得文章的相关信息
GetArticleTop10
获得最新文章信息
SetHits
更新文章的点击次数
关键代码:
添加新书方法的实现代码如下所
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 三层 架构 网上 书店 系统分析 设计
![提示](https://static.bdocx.com/images/bang_tan.gif)