网上图书管理系统设计文档格式.docx
- 文档编号:17296986
- 上传时间:2022-12-01
- 格式:DOCX
- 页数:31
- 大小:500.49KB
网上图书管理系统设计文档格式.docx
《网上图书管理系统设计文档格式.docx》由会员分享,可在线阅读,更多相关《网上图书管理系统设计文档格式.docx(31页珍藏版)》请在冰豆网上搜索。
文中主要阐述了个性化页面生成系统的系统结构及工作原理;
通过ASP页面实现了图书管理系统的主要功能;
分析了系统实现中的特殊性、难点和重点,并对部分关键代码加以注释。
关键词:
图书管理,SQLServer, ASP
20世纪90年代以来,图书馆发生了有史以来最为迅猛、最为激动人心的巨变。
因特网把图书馆推向了全方位网络化的新阶段,并深刻地影响着图书馆,从业务运作、管理模式到服务方式都在发生根本性变化。
网络环境给传统图书馆服务方式带来了一系列变化,一些传统的服务项目将逐渐为电子手段取代,它打破了时间、空间的限制,从原来的“定时制”转变成“24小时全日制”,读者即使不到图书馆照样可以享受到图书馆的服务。
它实现了以往手工操作阶段所无法实现的服务功能。
网上图书管理系统是典型的MIS管理系统。
具有操作简便,界面美观,管理代码化、条码化、标准化等特点,并支持网络远程交换数据,便于统一管理。
网上图书管理系统其具体有以下优点:
(1)先进的阅览方式
读者可以方便阅览图书资源,并可以对自己喜欢的书目加书签、发表评论等,还可以使用搜索功能对存放位置的书籍检索。
(2)科学的图书馆管理模式
系统采用多种主动推荐方式,客户结合灵活多样的高级检索,能轻松的找到所需要书籍信息;
通过客户意见反馈系统,系统可以随时把握客户的各种新的需求和及时与读者进行网上互动交流;
通过完善的信息发布系统,客户可以及时得到图书馆最新动态和新闻,掌握行业动向;
后台结构化管理模式,涵盖了栏目设置、图书资料编辑、用户管理、基础信息管理等等,为图书馆的电子化管理提供了一套良好的管理模式。
(3)人性化的操作界面
一个网站,能否吸引顾客的经常光顾,界面的美观也显得非常重要。
本系统的设计充分体现图书馆经营者的审美观,更好的展示图书馆独特的个性和特色。
1、系统设计
图书管理系统主要提供网上的图书阅览平台,其功能主要包括:
1)对图书资源进行分类,发布到网上供读者阅读
2)为读者提供图书检索功能
3)读者能方便地阅览电子图书
4)读者能建立书鉴
5)提供读者论坛功能
6)对读者用户进行用户帐号、密码及权限等的管理
1.2设计思想
实现一个简单的图书管理系统,结构如图1所示,页面通过ASP脚本程序访问数据库和文件系统。
ASP页面
数据库
文件系统
图1系统结构设计
1.3系统功能分析与设计
图书管理系统的功能模块划分如图2所示:
图2系统功能模块划分
1)登录/注册
若你是第一次访问本系统,则需要先注册一个用户,然后登录才能进入主界面。
2)权限管理
权限管理包括两个部分:
一是对用户的管理,用户注册后系统分配给用户默认级别,二是系统管理员分配给书目的阅读权限级别。
两者结合起来,就实现对用户的权限管理。
3)密码管理
用户注册登录后若有必要,可以修改自己的密码。
4)图书分类浏览
图书按照其内容进行分类,把相关的类别排列在一起,最深分三级,读者可以按照类别分别查找,逐级浏览,方便迅速找到感兴趣的主题。
5)图书搜索
在读者阅读目的很明确的情况下,如果知道某本书的书名、作者、出版社等信息或了解其中的某个关键字,就可以利用图书搜索功能。
6)书评
他人对书的评价往往对阅读有很大的帮助。
书评可帮助选择阅读的对象,而且方便读者的交流。
图书管理系统为读者提供发表意见的园地、对图书进行打分,同时读者可以对别人的评论发表自己的看法。
从而更好地得到读者对某本书的评价和反馈。
7)书签
若读者对某本书没有看完等原因要经常访问该书,则就可以用书签功能,读者可以把以后还需访问的书目做上书签,以后就能方便地阅读了。
8)十大热门
读者希望看到最热门的图书,就可以通过系统提供的十大热门选项,快速找到最热门的十大书籍。
9)管理用户
对与管理员来说,管理用户功能能够方便的显示用户信息,管理员能够对某个用户的注销和注册管理员。
10)管理书评
管理员可以对有必要删除的书评可以使用删除功能
11)管理书目
为了对目录、图书修改的方便,此模块提供管理员对目录的添加与删除、图书的添加与删除功能。
2、数据库设计与实现
2.1数据库的需求分析
根据系统要求,可以列出以下数据项和数据结构。
1)用户信息表:
存放用户信息,数据项包括用户名称、密码、权限、访问次数等。
2)书目信息表:
存放书目信息,数据项包括书目名称、作者、存放位置、访问级别、所属类别等。
2)书目类别信息表:
对书目的类别以及类别之间的包含关系进行描述,数据项包括书目类别名称、上级类别等。
3)书评信息表:
存放书评信息,数据项包括书评标题、评论者、评论书目、内容、评分、时间等
4)书评回复表:
存放对评论进行回复的信息,数据项包括作者、内容、时间等
5)书签信息表:
存放书签信息,数据项包括内容和所属者等
6)下面是系统的E-R图该:
7)
1:
N
N:
M
1
图3系统的E-R图
2.2数据库逻辑设计
根据需求分析,可以列出以下数据项和数据结构。
1)用户信息表
用户信息表(users)的结构如表1所示:
表1用户信息表(users)
列名
数据类型
长度
说明
name
char
50
(主键)用户名
passwd
密码
type
int
4
权限级别
times
访问次数
其中,name为唯一标识。
户的级别是使用数字来表示的,1表示管理员,从2以上每个数字分别表示一种用户级别,数字越大,用户权限越小。
具体的实现方式是通过和书目的阅读权限级别进行比较,例如:
某本书的权限是4,那么只有级别为1,2,3和4的用户可以阅读。
访问次数是用来对用户权限级别的管理,访问次数增多,级别也增大。
例如:
用户级别为5,访问次数超100后,他的级别会升为4,同样道理,200次后级别就为3了。
依此类推,最大级别就是2了,因为1是管理员。
用户信息表的一些初始化为:
admin
123
001
5
2)书目信息表
书目信息表(bookdetail)的结构如表2所示:
表2书目信息表(bookdetail)
bookid
Int
(主键)书目编号
Char
书名
author
作者
Int
阅读次数
dir
存放路径
indentify_num
书目权限级别
parent_type
父结点类别
publish_com
出版社
类别(父结点id)
Bookid为唯一标识。
这里的存放路径指的是书目在服务器上存放的相对路径,所有的书目都存放在服务器的library目录下,因此这些书目的dir属性都是以“\library”开头的。
如果服务器上的目录存放在不同的目录下,那么dir的属性应该以相应的目录开头。
父结点类别表示的是所在的上级类别,类别(type)表示的是该书所在上级书目类别的标号,在一个书目类别下面可以有多个书目,但是每个书目只属于一个书目类别。
我们可以在书目类别表中了解关于书目类别的详细介绍。
书目信息表的一些初始化为:
proteldxp电路设计制版入门与提高
雪茗斋
18
\library\proteldxp电路设计制版入门与提高。
htm
6
3
人民邮电出版社
675
13
世界文化遗产
17
\library\世界文化遗产。
3)书目类别表
书目类别表(bookwarelist)的结构如表5所示:
表3书目类别表(bookwarelist)
id
(主键)书目类别标号
title
类别名称
parent
上级类别名
parent_id
上级类别编号
type_id
类别标识
上级类别标识
书目的类别是一个树型结构,类的下面包含若干子类,同时类的下面还可以包含若干书目。
类和子类的从属数据关系是通过书目类别表来实现的,类和书目的从属数据关系是通过书目信息表来实现的。
书目类别的一些初始化为:
书库
-1
经济法律
2
文学经典
科技书籍
31
计算机
42
软件
从图中可以看出,“书库”是最上层的类,它包括“经济法律”、“文学经典”、“科技书籍”等子类。
而“科技书籍”又包括“计算机”等子类,“计算机”又包括“软件”等子类。
其中id为唯一的标识。
type_id表示该类所在的级别,用单个数字表示,可以有0,1,2和3这些数字。
0级就是指最上级的那层,即“书库”,1级就是0层的下级,依此类推,最深可以延续到第3级。
假如某级以下没有子类,则其下面可能就是所存放的书目了。
有了type_id就可以更好地管理类别,使得结构清晰明了。
然而为了解决子类与父类联系问题,我们在表中增加了parent_id一项,由于id是唯一地标识,则parent_id可以唯一地指定一个父类。
4)书评信息表
书评信息表(bookcomment)的结构如表4所示:
表4书评信息表(bookcomment)
commentid
(主键)评论编号
username
评论者
评论标题
booktitle
评论书名
settime
评论时间
detail
Nvarchar
4000
内容
书目编号
grade
评分
书评信息表的初始化为:
leixiafeng110
不错啊
时代周刊封面上的中国人物
2006-5-2213:
08:
25
不错啊!
5)书评回复表
书评回复表(commentresponse)的结构如表5所示:
表5书评回复表(commentresponse)
(主键)回复编号
回复者
时间
评论编号
书评回复表没有必要做初始化工作。
6)书签信息表
书签信息表(bookmark)的结构如表6所示:
表6书签信息表(bookmark)
markid
(主键)书签标号
用户名
书签信息表没有必要做初始化工作。
3、后台数据库的配置
本系统的开发是在WindowsxpProfessional下开发的,开发数据库使用的是SQLServer2000。
具体配置步骤如下:
1.新建一个空数据库,取名为mydb。
2.在mydb中建立表users,bookdetail,bookwarelist,bookcomment,commentresponse,bookmark。
3.完成初始化工作,数据格式在2。
2小节已经详细说明。
4.建立一个ODBC数据源,名称为mysite,使用SQLServer的登录ID验证方式,用户名和密码分别为:
sa和1234。
并使数据源指向mydb,如图4,图5所示。
图4建立ODBC数据源图5SQLServer的登录
4、前端网络页面的设计与开发
在建立了后台数据库和整体设计的基础上,本章将按功能模块对页面的具体设计和实现继续进行讨论。
4.1系统公用页面
系统公用页面包括以下3个文件:
global.asa文件、权限检查文件identify.asp和出错提示页面error.asp。
4.1.1
global.asa文件可以对Application和Session对象的开始和结束时间定义函数。
我们把数据库链接的字符串放在Application(“dsn”)对象中。
这样就可以在每次网站启动时,Application(“dsn”)就被赋值。
Global.asa文件的实现方法如下:
<
scriptlanguage=VBScriptRUNAT=Server>
SubApplication_OnStart
Application("
dsn"
)="
dsn=mysite;
uid=sa;
pwd=1234"
endSub
<
/script>
4.1.2
在用户访问系统每一个页面的时候,都应该检查用户是否正确登录,以防止没有正确登录的用户通过指定URL的方式非法进入系统。
其实现方法如下:
%
if(isempty(session("
username"
))orlen(session("
))=0)then
Response。
Redirect("
error。
asp"
)
endif
%>
用户正确登录后的用户名放在session(“username”)中,因此就可以通过检查session(“username”)的方法来判断用户是否正确登录。
如果用户正确登录后,则继续执行。
否则页面重定向到error.asp文件。
对非法登录的用户给出错误信息,要求重新登录。
图6提示出错页面
4.2登录/注册页面
如图7所示,该页面是本系统的默认页面,凡是想进入系统的人都需要通过此页面进行登陆。
用户输入正确的用户名和密码,就可以登录到系统中。
如果用名和密码错误,则提示错误信息。
另外还提供注册链接,提供注册新用户。
图7登陆界面图8注册页面
此模块涉及到的asp文件如下:
●index.asp:
登录表单页面
●password.asp:
用户身份验证页面
实现方法如下:
1)
当用户进入系统,首先访问的是index.asp页面。
在该页用户以前的登录身份信息将被清,无论以前用户是否正确登录,都需要在该页重新输入用户名和密码。
下面是该文件的部分代码源代码,主要作用是设定网页过期时间。
Response。
Expires=-9999‘设定页面过期时间,确定本页不被缓存’
Session.Abandon()‘当用户进入登录页面的时候,系统将清除其以前的登录身份信息’
2)
此文件处理由index.asp提交的用户名和密码的登录信息,首先判断提交的数据不为空,然后才做验证过程。
系统对数据库进行检索,以确认密码是否正确。
假如验证通过,则为用户的访问次数(times)加1,在这个过程中相应地为用户级别进行处理,处理原则参照2.2节中的用户信息表一讲。
该文件的源代码为:
%flag=0
uname=request.Form("
uname"
pass=request.Form("
pass"
ifuname<
>
"
andpass<
then
setdbConn6=Server.CreateObject("
ADODB.Connection"
)‘建立数据库的连接’
dbConn6.OpenApplication("
)‘登陆数据源’
commandtext="
select*fromuserswherename='
&
uname&
'
andpasswd='
pass&
setdbRS=dbConn6.Execute(commandtext)
ifdbRS.EOFthenflag=0
elseflag=1
endif
selectcaseflag
case1session("
)=dbRS("
name"
session("
password"
passwd"
session("
usertype"
type"
ifdbRS("
)<
1then
sql1="
updateuserssettimes=times+1wherename='
dbConn6。
Executesql1
endif
times=dbRS("
times"
)+1
iftimesmod100=0anddbRS("
)>
2then
sql2="
updateuserssettype=type-1wherename='
dbConn6.Executesql2
endif
response.Redirect("
frame。
dbRS.Close
case0response.write("
用户名不存在或密码错误!
ahref='
index。
asp'
返回<
/a>
endselect
4.2.2用户注册页面,如图18所示。
此文件涉及的asp文件如下:
●login.asp:
注册表单页面
●logindel.asp:
注册处理页面
login.asp文件提供读者注册功能,读者通过输入用户名、密码、确认密码后,系统根据用户提交的数据进行判断,判断读者输入的用户名是否已经存在、确认密码是否正确等。
具体做法是通过logindel.asp实现的,此文件用来处理从login.asp提交来的用户注册信息。
其程序流程图为:
图9注册处理程序流程图
4.3主页面
用户登录到系统后看到的主页面,如图10所示。
图10主页面
整个页面分为4个frame,顶部菜单页面xtop.asp,左边两个frame,其中靠上的是左部菜单页面xleft2.asp,靠下的是阅读功能区xl
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 网上 图书 管理 系统 设计