网上书店系统设计文档.docx

上传人:b****3 文档编号:4698395 上传时间:2022-12-07 格式:DOCX 页数:31 大小:1.23MB
下载 相关 举报
网上书店系统设计文档.docx_第1页
第1页 / 共31页
网上书店系统设计文档.docx_第2页
第2页 / 共31页
网上书店系统设计文档.docx_第3页
第3页 / 共31页
网上书店系统设计文档.docx_第4页
第4页 / 共31页
网上书店系统设计文档.docx_第5页
第5页 / 共31页
点击查看更多>>
下载资源
资源描述

网上书店系统设计文档.docx

《网上书店系统设计文档.docx》由会员分享,可在线阅读,更多相关《网上书店系统设计文档.docx(31页珍藏版)》请在冰豆网上搜索。

网上书店系统设计文档.docx

网上书店系统设计文档

(此文档为word格式,下载后您可任意编辑修改!

摘要

随着Internet的迅速发展,电子商务将成为21世纪主流的商业模式。

网上书店是随着这些网络技术的发展而出现的一种新型图书销售渠道。

它通过人与电子通信方式的结合,依靠计算机网络,以通讯技术为基础,实现图书销售的网上交易。

网上书店同传统的店面书店相比,网上书店的经营方式和销售渠道是全新的;它24小时的全天候和全方位服务是店面书店所不能比及的;成本低廉更是开设网上书店的主要原因。

而与其他商品相比,书籍运送几乎不怕碰撞碎裂,不具时效性;同时书本具有功能单一,形式简单,易于判断和选择而独具优势,最适合于网上交易;再次是单价低,降低了消费者第一次在网络购物的门槛,所以网上书店成了电子商务的先锋。

本设计尝试用ASP.NET在网络上架构一个网上书店,以使每一位顾客不用出门在家里就能够通过上网来轻松购书。

本网上书店系统是在VisualStudio.Net平台上运用ASP.NET技术来实现的。

其主要功能有:

用户管理,用户信息显示,维护用户信息、图书分类查找,图书检索,图书评论,网站管理等,具有一般书店必须具有的功能,但是这种网上书店的诸多好处:

方便购买、金额小、风险小、用户容易决定;讯息的完整性以及很少出现质量问题和退货现象等,这些优点一般书店是无法比拟的。

为用户购买和查看图书提供了优越和便利的条件。

关键词:

ASP.NETADO.NETSQLServer网上书店

目录

摘要

1设计内容、目的与要求1

1.1设计内容1

1.2设计目的1

1.3设计要求1

2需求分析2

2.1需求分析2

2.2系统功能描述3

2.3功能模块划分3

3数据库设计5

3.1实体图5

3.2数据表的创建6

3.3数据表关系图8

4功能模块的具体设计与实现9

4.1配置Web.config9

4.2设计Web用户控件9

4.3用户注册模块10

4.4用户登陆模块11

4.5显示图书信息12

4.5.1首页default.aspx12

4.5.2图书详细信息页面13

4.6显示用户信息14

4.6.1用户详细信息页面15

4.6.2用户信息修改页面15

4.7发表评论16

4.8后台管理18

4.8.1图书管理18

4.8.2用户管理20

4.8.3评论管理20

4.9用户阅读历史统计21

5测试结果与分析23

总结26

参考文献28

1设计目的、内容和要求

1.1设计内容

1、对《网上书店系统》进行需求分析,并给出数据库的设计和软件体系结构图,见附件1;

2、程序设计和实现(流程图设计、源程序编辑、编译、调试、测试)

3、编写设计报告,答辩

1.2设计目的

1、 通过使用所学的动态网站建站技术开发一个完整的动态网站,深化所学的内容和技术;

2、了解和掌握开发一个实际项目的基本方法和步骤;

3、 培养学生的动手能力、编程能力;鼓励学生的创新思维;

4、掌握基本的程序调试方法和排错方法;

5、培养学生对同样代码的实现,考虑算法优化问题;

1.3设计要求

1、基本要求:

代码实现要体现OOA程序设计的思想

代码实现需以动态网站开发的技术为主

代码要能调试通过并运行,体现优化的思想

2、创新要求:

在基本要求达到后,可进行创新设计

2需求分析

当前,世界经济正在开始新一轮的增长,经济全球化趋势不断增强,以信息技术产业为先导的“新经济”方兴未艾,电子商务对传统的商务活动带来了巨大的冲击,它突出的标志就是增加贸易机会,降低贸易成本,简化贸易流程,提高贸易效率。

电子商务极大地改变了商务模式。

带动了经济结构的变革。

本次设计的网上书店系统就是一个典型的web电子商务系统。

2.1需求分析

系统主要包括用户对功能的需求和网站管理员对功能的需求,参考设计要求,及系统的可行性分析,确定了这两种需求的功能如下:

2.1.1用户对功能的需求

.网站主页面简洁美观,易以操作。

.具备友好的用户界面,提供适当的操作提示,如用户登录时的密码错误等。

.网站主页显示各个分类信息及一些比较畅销的新书信息,显示论坛新帖。

以便用户方便查看有那些新书。

.单本图书的详细资料页面显示同类图书的畅销榜,同一作者的畅销榜,购买了同一本书的读者此外还购买的图书。

.可按作者,或者书名,或者出版社搜索图书,查看图书的信息。

可按用户名查看、浏览用户的个人信息(包括个人相片的上传,显示)。

.用户注册登录后可以查看图书、下载图书等功能,可以修改自己的个人资料及密码,还可以对某本书发表评论、回复别人的评论。

用户可以查询自己的个人阅读历史。

2.1.2网站管理员对功能的需求

运营一个网上书店系统,仅仅具有前台的功能是不够的,网站管理员还必须对系统的数据进行维护,包括图书信息、分类信息、以及用户的个人信息的维护。

图书、分类和用户信息维护不外乎数据的增加、删除和修改等操作。

网站管理员可通过后台管理界面,修改密码,添加、删除用户,添加新书、编辑、修改、删除图书的详细资料。

2.2 系统功能描述

根据上面的分析,网上书店需要实现的基本功能包括前台功能和后台功能,整个系统的功能点罗列如下:

新用户注册、用户登录、查看用户信息、维护用户信息、查看客户信息、维护客户信息等,下面分别对各部分的功能进行描述。

2.2.1前台管理实现的功能

新用户注册

用户注册成为本站会员,要求用户个人填写自己的一些基本信息。

用户登陆

由于此系统涉及不同角色的用户,因此要对不同登录用户分配不同的登录首页。

例如,管理员登陆后可以对网站的后台进行管理,而普通用户只能具有一般的权限。

用户查看、浏览个人注册信息(包括个人相片的上传,显示)

当用户注册成功后,可以通过用户名查看自己的个人信息。

个人信息包含基本信息和个人相片。

用户个人信息修改,密码维护功能

用户注册成功登录后可以修改自己的个人信息包括登录密码。

用户查询、浏览书籍信息

用户可以选择一个查询方式去查找图书,并浏览该图书的相关信息。

用户查看书、下载书籍

用户可以浏览书本信息列表,包括书本编号、书名、作者、书本价格、出版社以及其他用户对这本书的评论。

读书讨论功能:

发表帖子,回复帖子

看过某本书后用户可以对这本书发表自己的评论,同时还可以回复其他用户对该书的评价。

用户查询个人阅读历史

用户还可以随时查询自己看过那些书了,以便找到自己想要的书籍。

退出登录

当用户处理完自己想做的事情时,可以退出系统。

2.2.2后台管理实现的功能

用户管理:

网站管理人员对用户注册信息的维护和管理。

添加新书:

网站管理员可以向书库中添加新的书籍。

管理站内书籍内容:

编辑,修改,删除

管理员可以对书库里的书籍信息进行编辑、修改和删除等操作。

管理用户帖子:

修改、删除

管理员还可以对用户发表的帖子进行管理,包括:

修改和删除等。

2.3功能模块划分

网上书店系统可以划分为9个模块,划分结果如下。

新用户注册

用户登录:

用户登录系统,并划分用户的权限。

用户信息查看:

用户可以输入自己的用户名和密码查看自己的信息、增加、修改、删除自己的信息。

用户信息管理:

管理员查看用户的信息、增加、修改、删除用户信息。

查看图书信息:

一般用户查看图书的信息。

图书信息管理:

管理员查看图书的信息、增加、修改、删除图书信息。

添加新书:

管理员向书库添加新书

用户阅读历史统计:

统计用户所查看过的所有书籍。

退出系统。

整个系统的功能模块划分结构图,如图2.1所示。

图2.1系统功能模块划分结构图

3数据库设计

3.1实体图

、用户E-R实体图

用户的实体具有用户ID、密码、姓名、地址、电话、E-mail7个属性,E-R图如图3.1所示。

 

图3.1 用户E-R实体图

、图书E-R实体图

图书的实体具有编号、书名、作者、价格、出版社等几个属性,E-R图如图3.2所示。

图3.2 图书E-R实体图

、评论E-R实体图

评论的实体具有评论编号、评论内容、等6个属性,E-R图如图3.3所示。

图3.3评论E-R图

3.2数据表的创建

本项目使用SQLServer作为数据库,其中数据库名为Bookstore,该数据库中共涉及到5个数据表的应用,分别为如下:

●Userer:

保存注册用户的信息

●Book:

保存图书信息

●Kind:

保存图书的分类信息

●Reviews:

保存所有对图书的评论信息

●Read:

保存所有用户的阅读历史

.用户信息表

用户信息表(labusers)用于存放企业信息管理系统中所有用户的信息,用户管理是每个管理系统中必不可少的,也是比较重要的一部分,本系统中进行了较详细的设计,表中各个字段的数据类型、大小以及简短描述如表3.1所示。

表3.1用户信息表

字段名

数据类型

大小

字段描述

userID

int

4

用户ID,作为主键

userName

Varchar

50

用户姓名

userPwd

Varchar

12

记录用户登陆时的密码

address

Varchar

200

用户的地址

Tell

Varchar

20

用户电话

userImage

Varchar

50

用户照片的地址

E-mail

Varchar

50

用户Email

.图书信息表

图书信息表(labBook)用于存放网上书店系统中所有图书的信息,图书信息的管理是系统中比较重要的内容,本系统中进行了较详细的设计,表中各个字段的数据类型、大小以及简短描述如表3.2所示。

表3.2图书信息表

字段名

数据类型

大小

字段描述

book_ID

int

4

图书编号,唯一标识

book_Name

varChar

50

图书名称

typeID

int

4

图书所属类别的编号

book_Author

varchar

50

图书作者

Publisher

varChar

100

图书的出版社

Publisherdate

datetime

8

图书的出版时间

bookPrice

money

8

图书价格

book_Image

varchar

50

图书的预览图片地址

book_descnbe

varchar

500

备注信息

.图书类别表

图书类别表(labtypes),用于存放图书类别的编号及类别名称。

方便用户按类别查找书籍,如表3.3所示。

表3.3图书类别表

字段名

数据类型

大小

字段描述

typeID

int

4

类别编号,自动递增型

typeName

varchar

50

类别名称

.评论信息表

评论信息表(Reviews),用于存放用户发表的评论的一些相关信息(图书编号、评论标题、评论内容、评论时间等),通过发表评论用户可以把自己的看法和建议留给管理员,以便改善不足之处;因此,是网上书店系统中必不可少的一个部分,如表3.4所示。

表3.4评论信息表

字段名

数据类型

大小

字段描述

ReviewsID

int

4

评论编号(主键),自动递增

BookID

int

4

被评论的图书的编号

UserName

varchar

50

发表评论的用户名

Title

varchar

100

评论标题

Content

varchar

500

评论内容

time

datetime

8

评论时间

.阅读历史信息表

阅读历史信息表(labRead),用于存放用户的阅读历史信息,方便用户查看自己的阅读历史,如表3.5所示。

表3.5阅读历史信息表

字段名

数据类型

大小

字段描述

ReadID

int

4

阅读记录编号

UserID

int

4

用户编号

BookName

varchar

50

图书名称

ReadDate

datetime

8

阅读时间

3.3 数据表关系图

在网上书店系统中各数据表的关系图,如图3.4所示。

在Book数据表中,Kinds数据表的Kind_ID字段作为外键。

在Reviews数据表和Read数据表中,Book数据表的BookID字段和User数据表中的UserID字段作为外键。

图3.4数据表关系图

4功能模块的具体设计与实现

本系统主要包括11个功能模块,分别是用户登陆,新用户注册,用户查看图书的详细信息,用户查看自己的信息,用户修改自己的信息,用户查看自己的阅读历史,用户对自己看过的书发表评论,添加新书,修改图书的详细信息,用户管理,评论信息管理,其中后面四个是实现后台管理功能的;各个模块的具体实现过程将在本章一一介绍。

4.1配置Web.config

修改Web.config配置文件,添加appSettings节点,设置数据库连接字符串,配置错误处理以及用户信息验证。

修改后的Web.config文件代码如下:

设置customErrorsmode="off"始终显示详细的ASP.NET错误信息

配置ASP.NET使用的安全身份验证模式,以标识传入的用户。

4.2设计Web用户控件

在设计该网站时,为了保证整个网站界面风格的一致性,部分界面采用Web用户控件技术。

其中被使用次数最多的是作为页眉的top.ascx和页脚di.ascx这两个用户控件。

其中,top.ascx用户控件的设计主要包含两张图片;而di.ascx主要包含了一些描述作者联系方式的文字。

如图4.1所示。

图4.1页眉、页脚用户控件图

4.3用户注册处理

如果访问该网站的网友希望能够查看本网站上的电子书或者想对本网站上的书籍发表自己的评论和看法,则必须首先注册成为会员。

本网站中用户注册由Register.aspx实现。

在该页面中使用到了许多标准服务器端控件和数据验证控件,以确保用户输入的信息有效。

该页面的设计视图如图4.3所示。

图4.3Register.aspx页面的设计视图

添加“提交”按钮单击事件,代码如下:

protectedvoidtijiao_Click(objectsender,EventArgse)//“提交”按钮的单击事件

{

stringsql1="selectcount(*)fromtbluserwhereuserName='"+TextBox1.Text+"'";

inti=int.Parse(Class1.SelOne(sql1));

if(i==0)

{//上传照片

filename=FileUpload1.FileName.ToString();

stringfilepath=Server.MapPath("image");

FileUpload1.SaveAs(filepath+"\\"+filename);

//数据库中插入一条新记录

stringsql="insertintotbluser(userName,userPwd,trueName,address,telephone,Email,sex,userType,userImage)values('"+TextBox1.Text+"','"+TextBox2.Text+"',,'"+TextBox5.Text+"','"+TextBox6.Text+"','"+TextBox7.Text+"','"+xingbie+"','"+0+"','"+filename+"')";

Class1.ExecSql(sql);

Response.Write("alert('提交成功');");

在Register.aspx页面中,用户输入了信息后单击“注册”按钮提交信息,如果数据合法,则将执行按钮单击事件中的代码,将用户输入的信息添加到数据库。

注意,该系统要求每个用户具备唯一的用户名。

因此,在填写相关信息之前,应该先填好用户名后单击“检测用户名是否可用”,系统会给出相应的提示,以便增加注册成功的几率。

4.4登陆模块的设计

一旦用户注册成功以后,用户再次访问本系统时不需要重新注册,而只要记住自己所注册的帐号,到登陆界面login.aspx进行登陆即可。

用户名和密码不能为空,另外该页面还提供了一个填写校验码的功能,当填写的校验码不正确时也不能正常登陆;同时,该页面还提供了新用户注册的链接,方便没有注册的用户链接到注册页面进行注册。

login.aspx在设计视图下如图4.4所示。

图4.4login.aspx页面的设计视图

添加按钮单击事件denglutm_Click代码,代码如下:

stringsql_user=string.Format("selectcount(*)fromtbluserwhereuserName='"+tbuser.Text+"'anduserPwd='"+tbpwd.Text+"'");

intusercount=int.Parse(Class1.SelOne(sql_user));

if(TextBox1.Text.ToLower()!

=Request.Cookies["CheckCode"].Value.ToString().ToLower())

{Response.Write("alert('验证码错误!

');");}

else{

Session["userlogin"]=tbuser.Text;

stringuserinfo=Session["userlogin"].ToString();

DataTabledt=Class1.ExecSel("select*fromtbluserwhereuserName='"+userinfo+"'");

intid=Convert.ToInt32(dt.Rows[0][0]);

stringinfo="select*fromtbluserwhereuserID="+id;

DataTabledatatable=Class1.ExecSel(info);

}

当单击“登陆”按钮以后,先建立与数据库的连接,然后建立命令对象,在本项目中,建立与数据库连接的字符串及建立命令对象的代码都是写在公共类class1.aspx.cs里面的,然后再依据用户的ID来获取用户的详细信息,并保存到Session中。

4.5显示图书信息

显示图书信息的页面包括首页Default.aspx显示所有图书的信息及各个图书类别的图书列表,图书详细信息页面bookinfo.aspx,另外,图书搜索结果页面findbook_result也用于显示图书信息,各个页面设计将在本节作详细介绍。

4.5.1首页Default.aspx

首页Default.aspx页面的功能相对较简单,主要是用一个gridview控件显示所有图书的信息及各个图书类别的图书列表和一些导航按钮。

左边是一个图书分类的树形导航图,当网友浏览首页时,单击左边的图书分类,将打开对应类别的图书列表页面。

图书列表显示是依据所选择的图书类别参数来显示该类别的所有图书信息。

在设计该页面时还利用了母版页,这样,布局设计比较方便,节省了大量的时间。

该页面的设计视图如图4.5所示。

图4.5首页设计视图

在本页需要编写代码实现的功能主要就是图书分类的这个树图,当用户点击左边的图书分类,将打开对应类别的图书列表页面,代码如下:

protectedvoidtwtype_SelectedNodeChanged(objectsender,EventArgse)

{stringtypeid=twtype.SelectedValue;

SqlDataSource1.SelectCommand=string.Format("select*fromtblBookwheretypeID='"+typeid+"'");

GridView1.DataBind();

}

由于该页面是本网站的首页,所以任何访客都能访问,但是像“发表评论”和“查看电子书”功能必须登录后才有权限使用。

4.5.2图书详细信息页面

Bookinfo.aspx页面负责显示图书的具体信息,用户通过对自己所需商品详细资料的查阅,从而准确地判断买或不买。

该页面运行的效果图如图4.6所示。

这一页面主要用到了1个table大控件和一个按钮(button)及一个Image控件,按钮用来让用户点击后返回用户主页面。

显示功能的实现是通过sql语句将后台数据库中book表里的图书信息传递到前台页面的。

图4.6Bookinfo.aspx页面设计视图

实现该功能的主要是依据一个Request对象来传值,当单击“详情”按钮时,Request对象就把该书的编号保存下来,然后把该编号书籍的所有信息显示在相应的地方,具体功能代码如下:

protectedvoidPage_Load(objectsender,EventArgse)

{

stringBID=Request["bid"].ToString();//Request传值

stringsql="select*fromtblBookwherebookID="+BID;

DataTabledt=Class1.ExecSel(sql);

Label1.Text=dt.Rows[0][1].ToString();

Label2.Text=dt.Rows[0][2].ToString();

Label3.Text=dt.Rows[0][3].ToString();

Label4.Text=dt.R

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

当前位置:首页 > 高等教育 > 研究生入学考试

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

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