网上图书管理系统设计.docx
- 文档编号:29234974
- 上传时间:2023-07-21
- 格式:DOCX
- 页数:35
- 大小:2.15MB
网上图书管理系统设计.docx
《网上图书管理系统设计.docx》由会员分享,可在线阅读,更多相关《网上图书管理系统设计.docx(35页珍藏版)》请在冰豆网上搜索。
网上图书管理系统设计
毕业设计说明书
学院
计算机科学与技术学院
专业
计算机科学与技术
题目
基于WEB的图书管理系统
的设计与实现
摘要:
Internet技术的迅速发展,使得互联网在中国逐步普及,人们对网络的需求也日益增长,利用计算机实现图书的管理势在必行。
基于上述背景以及信息化时代发展需求,在借鉴现有网上图书管理系统的基础上,本文采用SQLServer2005和ASP.NET技术开发了一个基于B/S架构的功能较完善的网上图书管理系统。
该系统主要包括用户信息管理、图书信息管理、图书借阅、图书归还等功能模块。
关键词:
网上图书管理系统,ASP.NET,C#,B/S结构,SQLServer2005
Abstract:
Internettechnologyisdevelopingrapidly,makingthegradualpopularizationoftheInternetinChina,people'sincreasingdemandonthenetwork,themanagementofcomputerbooksisimperativetoachieve.Basedontheabovebackgroundanddevelopmentneedsofinformationage,learningfromexistingonlinelibrarymanagementsystem,basedonthispaper,SQLServer2005andASP.NETtechnologydevelopmentwhichisbasedonB/Sstructurefeaturesbetteronlinelibrarymanagementsystem.Thesystemincludesuserinformationmanagement,libraryinformationmanagement,booklending,returnbooksandotherfunctionalmodules.
Keywords:
onlinelibrarymanagementsystem,,c#,b/sstructure,sqlserver2005
1引言
1.1系统开发背景
随着计算机技术的飞速发展,其应用方面已渗透到社会生活的各个领域。
它已经成为我们学习和工作的得力助手。
在学校,尤其是在一些高校,图书是学校的一项重要资源,图书的管理也是学校的一项常规性的重要工作。
而长期以来,学生图书管理都是依赖人工进行的。
现今,有很多的学校都已经开始使用计算机进行图书信息管理,并且起得良好的效果。
近年来我校招生情况越来越好,所以图书管理工作越来越繁重,但由于种种原因,管理人员并没有增加,因此原有的人工管理工作已不能适应现行的工作需要。
同时,陈旧的人工管理也不利于推广计算机应用。
为使图书管理工作科学化、规范化,就必须采用计算机辅助管理。
1.2系统开发意义与目标
作为一名学生的我,很多时候都使用到了学校里面的图书管理系统,图书管理系统能让我快捷的查询到自己想要的书籍,能够轻松的知道到该书是否在馆,避免了跑到图书馆而借不到书的窘境。
同时图书管理系统也为图书管理者提供了充足的信息和快捷的查询手段,大大的降低了管理者的工作量,提高了工作效率。
而且随着图书数量的增长,图书信息的查找、更新和维护都会带来很多麻烦,但有了图书管理系统,这些问题都能很好的得到解决。
在当今时代,企业信息化管理是一种不可逆转的趋势,计算机对图书的管理是手工管理无法达到的高度。
例如:
图书快速查询,快速查看图书排行,还有计算机存储量大,保密性好,寿命长等等。
这些优点都能够大大的提高图书管理者的工作效率,也是图书馆的科学化、正规化管理,与世界接轨的重要条件。
1.3系统开发工具简介
1.3.1SQLserver2005简介
SQLServer2005是Microsoft公司开发的关系数据库管理系统,是为了创建电子商务,数据仓储解决方案而设计的关系型数据管理与分析系统,提供了功能全面的,操作简单的图形化界面。
SQL(StructuredQueryLanguage),即结构化查询语言,是关系数据库的标准语言,它是一个综合的,功能极强同时又简单易学语言。
SQL集数据查询、数据操纵、数据定义和数据控制功能与一体。
1.3.2ASP.NET简介
2000年ASP.NET1.0正式发布,2003年ASP.NET升级为1.1版本。
ASP.NET1.1发布之后更加激发了Web应用程序开发人员对ASP.NET的兴趣,并且对网络技术有着巨大的推动作用。
本着“减少70%代码”的目标,微软公司在2005年11月又发布了ASP.NET2.0。
ASP.NET2.0的发布是.NET技术走向成熟的标志,它在使用上增加了方便、实用的新特性,使Web开发人员更加快捷方便地开发Web应用程序,不但执行效率大幅度提高,对代码的控制也做得更好,以高安全性、易管理性和高扩展性等特点著称。
微软还推出了3.5版本,使网络程序开发更倾向于智能开发,运行起来更像Windows下的应用程序一样流畅。
ASP.NET是目前主流的网络开发技术之一,具有许多优点和新特性,具体介绍如下:
(1)高效的运行性能
由于ASP.NET应用程序采用页面脱离代码技术,即前台页面代码保存到.aspx文件,后台代码保存到.cs文件,这样当编译程序将代码编译为.dll文件,ASP.NET在服务器上运行时,可以直接运行编译好的.dll文件,并且ASP.NET采用缓存机制,从而提高运行ASP.NET的性能。
(2)简易性和灵活性
很多ASP.NET功能都可以扩展,这样可以轻松地将自定义功能集成到应用程序中。
例如,ASP.NET提供程序模型为不同数据源提供插入支持。
(3)可管理性
ASP.NET中包含的新增功能使得管理宿主环境变得更加简单,从而为宿主主体创建了更多增值的机会。
(4)生产效率
使用新增的ASP.NET服务器控件和包含新增功能的现有控件,可以轻松、快捷地创建ASP.NET网页和应用程序。
新增内容(诸如成员资格、个性化和主题)可以提供系统级的功能,此类功能通常会要求开发人员进行大量的编写代码工作。
新增数据控件、无代码绑定和智能数据显示控件已经解决了核心开发方案(尤指数据)问题。
1.3.3C#简介
C#是一种安全的、稳定的、简单的、优雅的,由C和C++衍生出来的面向对象的编程语言。
它在继承C和C++强大功能的同时去掉了一些它们的复杂特性(例如没有宏和模版,不允许多重继承)。
C#综合了VB简单的可视化操作和C++的高运行效率,以其强大的操作能力、优雅的语法风格、创新的语言特性和便捷的面向组件编程的支持成为.NET开发的首选语言。
1.3.4B/S简介
B/S(Browser/Server)结构即浏览器和服务器结构。
它是随着Internet技术的兴起,对c/s结构的一种变化或者改进的结构。
在这种结构下,用户工作界面是通过www浏览器来实现,极少部分事务逻辑在前端实现,但是主要事务逻辑在服务器端实现,形成所谓三层结构。
这样就大大简化了客户端载荷,减轻了系统维护与升级的成本和工作量,降低了用户的总体成本。
B/S结构最大的优点是:
在任何地方进行操作而不用安装任何专门的软件。
B/S结构的主要特点是分布性强、维护方便、开发简单且共享性强、总体拥有成本低。
但数据安全性问题、对服务器要求过高、数据传输速度慢、软件的个性化特点明显降低,这些缺点是有目共睹的,难以实现传统模式下的特殊功能要求。
例如通过浏览器进行大量的数据输入或进行报表的应答、专用性打印输出都比较困难和不便。
此外,实现复杂的应用构造有较大的困难。
虽然可以用ActiveX、Java等技术开发较为复杂的应用,但是相对于发展已非常成熟C/S的一系列应用工具来说,这些技术的开发复杂,并没有完全成熟的技术工具供使用。
2系统的分析与设计
2.1可行性分析
所谓可行性分析是指从技术上、经济上、使用上来分析需解决的问题是否存在可行性。
其目的是在尽可能短的时间内用尽可能小的代价确定问题是否有解。
1.技术可行性:
就现在拥有的硬件和软件资源来看,基本能满足要求。
开发人员现有的技术水平虽然不是很高,相信通过自身努力和同学的帮助,在规定期限内能基本完成系统的开发任务。
2.经济可行性:
充分利用学校机房的开发工具和环境,大大降低了开发经费。
而开发的主要目的还是巩固所学知识,增强实践能力。
3.使用可行性:
使用可行性主要指使用方式(操作方式)是否是用户能接受的。
我会尽量使系统界面友好,操作方便,功能符合企业管理的需求。
4.管理可行性:
系统在管理上要求简单、快捷,对图书预定,图书查询,图书借阅与归还,图书信息等要素进行有效的系统的管理。
从基层的信息录入到修改、删除、查询,层层递进,提高了管理的工作效率和安全性、准确性。
2.2需求分析
需求分析是对用户需求的真正明确,是对要解决的问题的彻底理解。
在解决问题之前要理解问题,只有真正的理解问题才能更好的解决问题。
需求分析就是给系统分析、设计人员一个和用户交流来理解问题的机会—了解用户究竟需要什么。
所以,设计人员必须认识到:
在整个需求分析以及系统设计过程中,用户参与的重要性,通过各种方法展开调查分析。
在需求分析阶段中,根据收集信息了解现有情况分析出网上图书管理系统需要具备的一般功能。
一个好的图书管理系统必须能够便于使用,比如读者能够快捷安全的进行图书查询和网上预定。
管理员对于图书和预定情况能够方便管理。
2.3概要设计
根据需求分析,本系统会员可以查看图书信息,图书排行信息,新书上架等,而管理员在后台可以管理添加会员,管理添加图书等多种其他功能。
主要可分为以下几个功能:
(1)会员登录功能:
会员登陆后才可以实现图书查询及预定功能。
(2)管理员登陆功能:
管理员登陆后才可以对会员,图书等实行管理。
(3)图书查询功能:
用户可以根据图书类别或者图书的书名直接搜索所需要的图书。
(4)图书预定功能:
该项功能是为了方便会员预定图书而设立的。
(5)图书分类列表:
图书都会有很多品种。
当用户需要某种类型的图书的时候,可以使用该功能看到所有属于该图书类型的图书。
(6)图书排行:
该功能是为了让读者迅速找到图书馆借阅量比较高的书。
(7)图书详细信息功能:
该功能是为了使用户了解图书的详细信息而设立的。
(8)预定管理功能:
方便管理员对所有预定图书的管理。
(9)会员管理:
对会员信息进行管理。
(10)图书管理:
管理员可以删除和添加新的图书。
2.4系统功能结构图
图书管理系统管理系统前台功能结构图:
用户登录
图书管理
借还管理
管理员登陆
会员登陆
图书信息增加
图书信息删除
信息查询
图书
借出信息
图书归还信息
个人信息
图书信息
借还信息
用户注册
预定系统
图书管理系统
图2-1:
功能模块
2.5数据库设计
2.5.1数据库具体实现
数据库的设计通常是以一个已经存在的数据库管理系统为基础的,常用的数据库管理系统有Access,SQLServer2005,Oracle等。
根据需求和业务流程,本系统采用了SQLServer2005数据库管理系统。
在SQLServer2005数据库管理系统中新建名称为book的数据库,本系统使用的所有数据信息将存储于该数据库中。
在设计过程中考虑数据完整性约束。
数据库上的完整性的约束条件一般有以下两类:
(1)属性值的约束
这类约束是对属性取值的类型、范围、精度等的限制,和属性的语义有关。
(2)数据之间联系的约束。
这类约束反映了数据之间存在的联系,在关系数据模型中指多个属性或多个元组之间联系的约束。
比如,属性之间的函数依赖、多值依赖。
顾客所点的菜品应是菜单中存在的;每位工作人员一定属于某个部门,有一定的职位等等。
在许多数据模型中都是表明了数据之间的某些依赖关系的,或者是隐式或者是显式的。
2.5.2系统E-R图设计
(1)系统会员及管理员实体E-R图
会员、管理员
密码
……
姓名
ID
图2-2系统用户实体E-R图
(2)图书信息实体E-R图
图书信息
图书名称
书架号
ID
图书种类
图2-3图书信息实体E-R图
(3)书架信息E-R图
书架名称
书架信息
书架编号
图2-4图书书架信息E-R图
(4)图书详细信息实体E-R图
图书详细信息
图书名称
ID
是否在库
……
图2-5图书详细信息实体E-R图
(5)图书分类实体E-R图
所属种类
图书分类
ID
图2-6图书分类实体E-R图
2.5.3数据库模型设计
数据库结构设计的好坏直接影响到信息管理系统的效率和实现的效果。
合理的设计数据库结构可以提高数据存储的效率,保证数据的完整统一。
管理员则需要对会员、
图书等信息进行查询、添加、修改、删除操作。
利用SQLServer2005新建一个名为book的数据库,在数据库中创建一系列表:
(1)Bookcase:
书架基本信息,包括书架编号、书架名称等信息。
表2-1书架基本信息表
字段名称
数据类型
长度
主键否
描述
bookcaseid
int
32
是
书架编号
bookcasename
varchar
50
否
书架名称
(2)bookinfo:
书籍信息表,包括图书编号、图书类型、图书名称、图书状态、图书所在书架、借阅时间、借阅次数等信息。
表2-2图书信息表
字段名称
数据类型
长度
主键否
描述
b_id
bigint
50
是
图书编号
b_kind
varchar
50
否
图书种类
b_name
varchar
50
否
图书名称
state
bit
1
否
图书状态
userid
int
32
否
用户编号
bookcaseid
int
32
否
所在书架号
count
int
32
否
点击次数
time
datetime
否
借阅时间
(3)managerinfo:
管理员信息表,包括订用户编号、用户姓名、用户密码等字段。
表2-3管理员信息表
字段名称
数据类型
长度
主键否
描述
id
int
32
是
用户编号
username
varchar
50
否
用户姓名
password
varchar
50
否
用户密码
(4)userinfo:
会员信息表,包括用户编号、用户名字、用户密码、性别、年龄、身份证号等信息。
表2-4会员信息表
字段名称
数据类型
长度
主键否
描述
Userid
int
32
是
用户编号
username
varchar
50
否
用户姓名
password
varchar
50
否
用户密码
sex
nchar
10
否
性别
age
int
32
否
年龄
personid
varchar
18
否
身份证号
job
varchar
50
否
职业
phone
varchar
50
否
电话
varchar
50
否
邮箱
3系统主要功能模块的实现
3.1主要功能页面
(1)首页(Default.aspx):
所有访问者都能看到的页面,显示有会员登陆、图书查询、管理员登陆和图书排行等。
图3-1系统首页
(2)管理员登录主要用于后台登录时对图书、会员等的删除和添加等管理,登录用户必须通过合法的登录名及密码才可以进入系统后台。
图3-2管理员登录框
代码如下:
publicpartialclassmanagerlogin:
System.Web.UI.Page
{
staticstringuserName;
protectedvoidPage_Load(objectsender,EventArgse)
{
userName=txtName.Text;
}
protectedvoidButton1_Click(objectsender,EventArgse)
{
stringstrConn=ConfigurationManager.AppSettings["conn"];
SqlConnectionConn=newSqlConnection(strConn);
Conn.Open();
stringsql="selectpasswordfrommanagerinfowhereusername='"+userName+"'";
if(!
txtName.Text.Trim().Equals(""))
{
SqlCommandcmd=newSqlCommand(sql,Conn);
SqlDataReaderreader=cmd.ExecuteReader();
if(reader.Read())
{
if(reader[0].Equals(this.txtPass.Text))
{
Session["managerName"]=txtName.Text;
Response.Redirect("manager/managerDefault.aspx");
}
else
{
RegisterStartupScript("false","");
}
}
}
else
{
RegisterStartupScript("false",""
);
}
Conn.Close();
}
}[1]
(3)会员登陆:
主要是会员登陆后可以对书籍进行查询而且可以预定书籍。
代码如下:
publicpartialclassuserlogin:
System.Web.UI.UserControl
{
staticstringuserName;
protectedvoidPage_Load(objectsender,EventArgse)
{
userName=txtName.Text;
}
protectedvoidButton1_Click(objectsender,EventArgse)
{
stringstrConn=ConfigurationManager.AppSettings["conn"];
SqlConnectionConn=newSqlConnection(strConn);
Conn.Open();
stringsql="selectpasswordfromuserinfowhereusername='"+userName+"'";
if(!
txtName.Text.Trim().Equals(""))
{
SqlCommandcmd=newSqlCommand(sql,Conn);
SqlDataReaderreader=cmd.ExecuteReader();
if(reader.Read())
{
if(reader[0].Equals(this.txtPass.Text))
{
Session["username"]=txtName.Text;
Response.Redirect("Default.aspx");
}
else
{
}
}
}
else
{
}
Conn.Close();
}
}[2]
3.2基础功能模块类
基础功能模块:
该模块处理全部的业务逻辑,它接受前台页面传来的全部请求,向数据访问层传入SQL语句并接受所返回的所有数据。
3.2.1书籍添加删除管理
图书基本资料管理主要实现用图书基本资料的添加、修改、删除以及各种查询方式。
(1)图书添加:
管理员登陆后对新进图书进行入馆添加操作。
图3-3图书添加
代码如下:
protectedvoidButton1_Click(objectsender,EventArgse)
{
stringID;
stringselSql="selectbookcaseidfrombookcasewherebookcasename='"+BookCase.SelectedValue.ToString()+"'";
SqlDataReaderda=dataOperate.getRow(selSql);
if(da.Read())
{
ID=da[0].ToString();
stringsql="insertintobookinfo(b_kind,b_name,state,bookcaseid,count)values('"+Kind.SelectedValue.ToString()+"','"+txtBookName.Text+"','"+false+"','"+ID+"','"+0+"')";
dataOperate.execSQL(sql);
RegisterStartupScript("false","");
bind();
GridView1.Visible=true;
txtBookName.Text="";
}
else
{
RegisterStartupScript("false","");}}
protectedvoidbind()
{
stringsql="selectb_id,b_kind,b_name,bookcase.bookcasenamefrombookinfo,bookcasewherebookinfo.bookcaseid=bookcase.bookcaseidandb_name='"+txtBookName.Text+"'";
DataSetds=dataOperate.getDataset(sql,"myTable");
GridView1.DataSource=ds.Tables["myTable"];
GridView1.DataBind();
}[4]
(2)删除书籍管理:
管理员登陆后对丢失书籍或者破损书籍进行出馆删除操作。
图3-4图书删除
代码如下:
protectedvoidGridView1_RowDeleting(objectsender,GridViewDelet
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 网上 图书 管理 系统 设计