某中学图书馆系统的设计与实现-

某中学图书馆系统的设计与实现-[java毕业论文下载]

某中学图书馆系统的设计与实现

摘  要

图书馆管理系统是典型的管理信息系统,其开发主要包括后台数据库的建立和维护以及前端应用程序的开发两个方面。对于前者,要求建立起数据一致性和完整性强、数据安全性好的库。而对于后者则要求应用程序具有功能完备,易使用等特点。

此图书馆系统以局域网图书馆的需求为背景,分为管理员、老师、学生三种用户。在不同的身份下有不同的功能实现,管理员主要实现图书添加、图书管理、用户管理等功能;老师主要实现借书登记、还书登记;学生身份主要实现的功能包括:个人信息查询、借阅情况、借阅历史查询、超期催还、个人密码修改等功能。此外,电子图书下载和留言板功能不需要身份登录可直接使用。

本系统使用ASP.NET +SQL Server2000进行开发,系统运行结果证明,该图书管理系统可以满足借阅者、图书馆管理员两方面的需要。本文将对该系统的设计过程和功能做详细介绍。

 

关键字:图书管理系统;借阅;下载;ASP.net;C# ;SQL Server2000

 

A Design and Implementation of Middle School Library Management System

Abstract

The Library system is a typical information management system. its development mainly includes the establishment and maintenance of backstage database and development of front application procedure.

This library system takes the local area network library demand as a background, dividing into the manager, teacher, the student three kinds of users. It has the different function under the different status. the manager can manage books and users; the teacher can register the record of borrowing and returning books ; The students can query the individual information , borrowing situation and history information, the term exceeds of the book, revise the personal password and so on. Books downloading and the BBS do not need the status to register to use.  

This system is developed by ASP.NET +SQL Server2000. It is proved that this books management system may satisfied the need of borrower and the library senior manager. This article will introduced the process of design and the function in detail.

 

Key words:Library System;Borrow;Downloading;ASP.net;C#;SQL Server2000

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

目  录

                                         论文总页数:22页

1.引言 1

2.开发及运行环境的选择 1

2.1运行环境的选择 1

2.2 数据库的选择 1

2.3 开发工具的选择 2

2.4 B/S模式 2

3.系统需求设计 3

3.1 用户角色需求 3

3.2 功能需求 3

3.2.1 学生 3

3.2.2 教师 4

3.2.3 管理员 4

3.3 性能需求 4

4.系统设计 4

4.1  本系统的设计目标 4

4.2 系统功能整体设计 4

4.3 数据库表的设计 5

4.4数据库存储过程 6

5.系统设计实现 8

5.1系统首页实现 8

5.2 借阅者服务模块的实现 8

5.2.1 图书查询功能的实现 8

5.2.2 借阅信息查询 11

5.2.3 借阅者个人资料维护功能的实现 11

5.3 电子图书下载功能的实现 12

5.4 留言板功能的实现 13

5.5 图书馆管理员模块的实现 13

5.5.1 图书馆图书借阅、归还功能的实现 13

5.5.2 图书馆管理员图书管理功能的实现 16

5.5.3  图书馆用户信息维护功能的实现 19

     20

参考文献 20

     21

     22

 

 

1.引言

图书是最丰富、最宝贵的信息源和知识源。记载和收集了人类社会的文明史,它为人类社会的科技进步、社会的发展提供了巨大的推动作用。为人类的进步,人类的文明做出了巨大的贡献。在科学技术迅猛发展的今天,在即将到来的信息社会和知识经济时代,人们对图书的需求也就更为迫切。

随着网络的发展,许多行业都进入了信息化。对于传统的图书馆而言,也出现了许多的网上图书馆,方便了读者和管理人员。由于手工的图书管管理工作量大、任务多、服务局限性等等,给学生和老师带来了很多的不便。设计图书馆的管理系统可以提高图书管管理的效率;降低工作人员的工作量;完善图书馆的各项功能。网上图书馆系统应该具有出借还子系统、查询子系统、电子图书下载子系统、留言板以及系统维护子系统等,这几个子系统包括了图书馆管理的主要业务工作,可以全面实现对图书馆的查询、借还、下载、留言等在线功能实现。考虑到图书馆各项业务当中的存在的具体问题系统为各个层次的用户在实际操作方面加强了方便性,在业务规则实现方面更加注重智能化,使用户在使用当中更轻松 ,在系统进入直接的只明途径,这样更加有助于全面提高图书馆的管理效率,改善了书刊的科学管理及工作人员的管理,图书馆各类功能全面实现。

 

2.开发及运行环境的选择

2.1运行环境的选择 

由于本系统是针对学院图书管理而开发的,对运行环境的要求不是太高,服务器端在Windows 2000 或者XP 下安装使用,容易操作且维护简单。客户端可以在Windows 98及以上版本运行使用。

2.2 数据库的选择 

在多种数据库软件中,选择了相对来说比较易用的SQL server 2000作为后台数据库。

Microsoft SQL server是一个高性能的关系型数据库管理系统,它具有客户机/服务器体系结构,能够满足大规模分布式计算环境的需要。

Microsoft SQL server数据库管理系统特点如下:

(1)完全的客户机/服务器体系结构。

(2)简单的图形化管理工具。

(3)丰富的编程接口工具。

(4)多线程体系结构。

(5)SQL server是Microsoft服务器套件BackOffice的成员之一,它与其它软件(Windows 2000、Internet Information Server、Exchange Server等)有机结合,并充分利用它们所提供的服务或功能,从而增强了SQL server数据库系统的功能,同时占用较少的资源。

(6)SQL server数据库系统各种对象的范围更加广泛。

(7)运行中的数据库系统容易受到来自多方面的干扰和破坏。如硬件设备和软件系统的故障,未经授权使用数据库的人偷窃信息,利用计算机进行犯罪活动以及系统对于事务处理不当或程序员的误操作等都可能破坏数据库。SQL Server数据库还可以提供数据的保护功能。 数据库的保护是通过对数据库的恢复、完整性控制、并发控制和安全性控制四个方面实现。

2.3 开发工具的选择 

在多种编程软件中,选择了当前比较流行的ASP.NET作为编程工具。

ASP.NET 是一种建立在通用语言上的程序构架,能被用于一台Web服务器来建立强大的Web应用程序。ASP.NET供许多比现在的Web开发模式强大的的优势。ASP.NET是把基于通用语言的程序在服务器上运行。不像以前的ASP即时解释程序,而是将程序在服务器端首次运行时进行编译,这样的执行效果,当然比一条一条的解释强很多。因为ASP.NET是基于通用语言的编译运行的程序,所以它的强大性和适应性,可以使它运行在Web应用软件开发者的几乎全部的平台上。通用语言的基本库,消息机制,数据接口的处理都能无缝的整合到ASP.NET的Web应用中。ASP.NET同时也是language-independent语言独立化的,所以,你可以选择一种最适合你的语言来编写你的程序,或者把你的程序用很多种语言来写,现在已经支持的有C#(C++和Java的结合体),VB,Jscript。将来,这样的多种程序语言协同工作的能力保护您现在的基于COM+开发的程序,能够完整的移植向ASP.NET。ASP.NET使用一种字符基础的,分级的配置系统,使你服务器环境和应用程序的设置更加简单。因为配置信息都保存在简单文本中,新的设置有可能都不需要启动本地的管理员工具就可以实现。这种被称为"Zero Local Administration"的哲学观念使Asp.NET的基于应用的开发更加具体,和快捷。一个ASP.NET的应用程序在一台服务器系统的安装只需要简单的拷贝一些必须得文件,不需要系统的重新启动,一切就是这么简单。ASP.NET已经被刻意设计成为一种可以用于多处理器的开发工具,它在多处理器的环境下用特殊的无缝连接技术,将很大的提高运行速度。即使你现在的ASP.NET应用软件是为一个处理器开发的,将来多处理器运行时不需要任何改变都能提高他们的效能,但现在的ASP确做不到这一点。

2.4 B/S模式

该系统选用了B/S结构:

浏览器/服务器(Browser/Server)结构,简称 B/S 结构,它是对C/S 结构的一种变化或者改进的结构。在这种结构下,用户界面完全通过 WWW 浏览器实现,一部分事务逻辑在前端实现,但是主要事务逻辑在服务器端实现,形成所谓3-tier 结构。B/S结构,主要是利用了不断成熟的 WWW 浏览器技术,结合浏览器的多种Script语言(VBScript、JavaScript…)和 ActiveX 技术,用通用浏览器就实现了原来需要复杂专用软件才能实现的强大功能,并节约了开发成本,是一种全新的软件系统构造技术。显然 B/S 结构应用程序相对于传统的 C/S 结构应用程序是巨大的进步。B/S结果如图1所示:

 

图1  B/S结构的体系结构

3.系统需求设计

3.1 用户角色需求

根据图书馆系统的特点,本图书馆管理系统的用户应该分为三类,即学生、教师和管理员。

学生登录后可进行在线书籍查询、借阅历史查询、修改密码;教师能手工添加借书、还书记录;管理员则主要负责用户及角色的管理、书籍信息修改、新书加入等。

3.2 功能需求

根据初步的需求分析,系统功能应该主要包括在线查询、借换书登记、用户管理等。以下将按照不同的角色权限对功能进行具体描述:

电子图书下载、留言板支持所有用户使用。

3.2.1 学生

对于学生身份而言,主要包括在线查询、借阅历史查询、超期催还、密码修改四大功能。

(1)在线查询:学生可以任选时间进行在线查询,找到自己需求的书籍信息。

(2)借阅历史查询:学生可以在线查询以前借阅过的书籍。

(3)超期催还:学生可以看到自己的借阅书籍是否超期。

(4)密码修改:学生可以自己修改登录的密码。

3.2.2 教师

对于教师而言,主要包括借阅登记、还书登记功能。

(1)借阅登记:对学生的借阅书籍进行登记。

(2)还书登记:对学生的换书进行登记。

3.2.3 管理员

对于管理员而言,主要包括用户管理、书籍管理、新书添加、密码修改四大功能。

(1)用户管理:管理员可以添加、删除用户;对用户信息进行修改。

(2)书籍管理:对已有的书籍进行信息修改。

(3)新书添加:添加新书。

(4)密码修改:对管理员的密码进行修改。

3.3 性能需求

图书馆管理系统对在线查询有较高要求,所以整个系统应该性能良好、安全可靠。此外系统应当操作简便、界面友好、维护简便。数据库要求运行速度快,稳定性高,安全可靠。

4.系统设计

4.1  本系统的设计目标 

图书管理系统代替了原来的手工操作,从而快速、准确地对读者及图书等各种信息进行管理和维护。具体有四个目标:

(1)支持学校完成并实现规范化的图书管理;

(2)支持高效率的完成图书管理日常工作的运行,其中有新书入库,读者信息建立、读者查询图书等方面的维护更新工作;

(3)使学校的教职工和学生等广大读者更方便快捷的进行图书查询、借阅和电子图书下载。

(4)校园图书管理工作的计算机化,各种读书信息可以通过计算机快速,准确地增加、修改、删除、查询。使管理人员对所有读者信息和图书信息的基本概况一目了然,便于管理。

4.2 系统功能整体设计 

系统开发的总体任务如下:

(1)图书查询模块:包括读者对所需文献的参考,查询等各项工作。

(2)借书、还书模块:主要是处理读者的借书、还书问题。

(3)读者信息维护模块:读者可以自己查看信息、借阅情况、借阅历史、超期催还、修改密码。

(4)电子图书下载模块:主要提供电子图书的下载。

(5)留言板:用户对图书馆的建议和意见。

(6)管理员管理模块:分为用户信息维护、图书信息维护、管理员密码修改3个小模块。

1) 用户信息维护:添加、删除用户,设定用户权限。

2) 图书信息维护:主要是添加新书籍,对丢失等原因造成的图书无法归还的书籍进行删除。

3) 管理员密码修改: 修改当前管理员的密码。

图书馆管理系统的功能模块图 如图 2所示:

 

图2 图书馆管理系统的功能模块图

其中的查询模块、电子图书下载模块、留言板没有用户限制。

4.3 数据库表的设计 

数据库名:LMS;整个数据库共3个表:

表1用户基本信息表的结构(Users): 

表1用户信息表(Users)

列名

数据类型

长度

允许空

字段说明

UID

varchar

50

N

用户帐户

UPassword

varchar

50

N

用户密码

UPower

int

4

N

用户权限

USex

bit

1

N

用户性别

UName

varchar

50

N

用户姓名

UAdress

varchar

50

N

用户地址

UTel

varchar

50

N

用户联系电话

UEmail

varchar

50

N

用户电子邮箱

UCorporation

varchar

50

N

用户单位

 

表2图书信息表的结构(Book):

表2 图书信息表(Book)

列名

数据类型

长度

允许空

字段说明

BID

int

4

N

书籍书目

BName

varchar

50

N

书名

BISBN

varchar

50

N

ISBN号

BAuthor

varchar

50

N

作者

BTheme

varchar

50

N

主题词

BClassifyText

varchar

50

N

书籍类别

BIndex

varchar

50

N

索取号

BPress

varchar

50

N

出版社

BPrice

money

8

Y

书籍价格

BSeriesName

varchar

50

Y

从书名

BDescribe

varchar

50

Y

备注

 

 

表3 借阅情况信息表的结构(BorrowInform):

表3 借阅情况信息表

列名

数据类型

长度

允许空

字段说明

IID

Int

4

N

记录编号

ID

varchar

50

N

用户帐号

IBID

Int

4

N

书籍书目

IBeginDate

datetime

8

N

借书时间

IEendDate

datetime

8

N

还书时间

IState

Int

4

N

是否归还

 

4.4数据库存储过程

规范存储格式,提高存储效率。对于要进行大量数据存储的建立了存储表,如:新书加入、用户加入等。

存储过程作用如下表4:

 

 

 

表4 存储过程表

存储过程

存储过程参数

存储过程说明

BookAdd

CREATE PROCEDURE [BookAdd]

(@BID[int],@BISBN[varchar](50),@BName[varchar](50),@BAuthor[varchar](50),@BTheme[varchar](50),

@BClassifyText[varchar](50),@BIndex[varchar](50),

@BPress[varchar](50),@BPrice[money],

@BSeriesName[varchar](50),@BDescribe[varchar](500))

新书加入

BookDelete

CREATE PROCEDURE [bookdelete]

(@BID[int]) 

删除图书

BookInLibCheck

CREATE PROCEDURE [BookInLibCheck]

@BID INT

图书在馆查询

BookList

CREATE PROCEDURE BookMaxBIDGet

@maxbid

新书查询

BookMaxBIDGet

REATE PROCEDURE [BookModify](@BID[int],@BISBN [varchar](50),@BName[varchar](50),@BAuthor[varchar](50),

@BTheme[varchar](50),@BClassifyText[varchar](50),@BIndex [varchar](50),@BPress[varchar](50),@BPrice [money],

@BSeriesName[varchar](50),@BDescribe [varchar](500))

读取书目最大值

BookModify

CREATE PROCEDURE [BookNotInLibCheck]  @IBID INT

图书信息修改

BookNotInLibCheck

CREATE PROCEDURE [BorrowInformAdd]

(@IUID[varchar](50),@IBID[int],@IBeginDate [datetime],

 @IEndDate[datetime], @IState [int])

图书不在馆查询

BorrowInformAdd

CREATE PROCEDURE [BorrowInformModify]

(@IBID[int],@IState [int])

借书记录添加

ReaderBorrowHis

CREATE PROCEDURE [ReaderBorrowState]

@UID VARCHAR(50)

借阅历史查询

ReaderBorrowState

CREATE PROCEDURE [UsersAdd] (@UID[varchar](50),

 @UPassword [varchar](50),@UPower [int],@USex [bit],

@UName [varchar](50), @UAddress [varchar](50),

@UTel [varchar](50),@UEmail [varchar](50),

@UCorporation [varchar](50))

借阅情况查询

UsersAdd

CREATE PROCEDURE [UsersDelete](@UID[varchar](50))

用户添加

UsersDelete

CREATE PROCEDURE [UsersDetail]

@UID [varchar](50)

删除用户

UsersDetail

CREATE PROCEDURE [UsersList]

用户信息查询

UsersList

CREATE PROCEDURE [UsersModify]

(@UID[varchar](50),@UPower [int],

@UName [varchar](50), @UAddress [varchar](50),

@UTel [varchar](50),@UEmail [varchar](50),

@UCorporation [varchar](50))

用户信息查询

UsersModify

CREATE PROCEDURE [UsersPasswdModify]

(@UID[varchar](50),@UPassword[varchar](50))

用户信息修改

UsersPasswdModify

 

密码修改

 

5.系统设计实现 

5.1系统首页实现

首页画面是为了给用户一个良好的印象,意在让用户直接能理解网站的性质和功能。用户能很快找到自己所需要的信息和服务,容易操作和实现。。系统的首页如图3:

 

图3 图书馆系统首页

用户可以通过不同的链接进入不同的页面。

5.2 借阅者服务模块的实现

5.2.1 图书查询功能的实现

在本系统中,任何人都有权限使用查询功能,不做任何限制。 由于实现的查询功能有多种,如按图书编号、图书名称等字段进行完全体配查找和部分体配的模糊查找。图书查询界面如图4所示:

 

图4 图书查询界面

 

点击确定以后跳转页面显示查询结果,如图5:

 

 

图5  查询结果图

具体代码如下:

public void BindGrid()

{ //从文件Web.config中读取连接字符串

            string strConn = ConfigurationManager.AppSettings["dsn"];

 

//连接本地计算机的LMS数据库

SqlConnection cn= new SqlConnection (strConn);

//根据提交上来的表单创建SQL语句

string booklist="select * from book ";

string strSearchText=Request.Form ["strSearchText"];

string match_flag=Request.Form ["match_flag"];

if(match_flag=="0")//完全匹配

{

if (Request.Form ["strSearchType"].ToString ()=="01") //书目编号

{

booklist=booklist + "where bid="+ strSearchText;

}

else if (Request.Form ["strSearchType"].ToString ()=="02") //题名

{

booklist=booklist + "where bname='"+ strSearchText +"'";

}

else if (Request.Form ["strSearchType"].ToString ()=="03") //作者

{

booklist=booklist + "where bauthor='"+ strSearchText +"'";

}              ……

else

{ Response.Write ("类型选择错误");

Response.End() ;

}

}

else if(match_flag=="1")//模糊匹配

{

if (Request.Form ["strSearchType"].ToString ()=="01") //书目编号

{

booklist=booklist + "where bid ="+ strSearchText;

}

else if (Request.Form ["strSearchType"].ToString ()=="02") //题名

{

booklist=booklist + "where bname like '%"+ strSearchText +"%'";

}

                ……

else

{ Response.Write ("类型选择错误");

Response.End() ;

}

}

//创建SqlDataAdapter对象,调用视图

SqlDataAdapter da=new SqlDataAdapter (booklist,cn);

//创建并填充DataSet

DataSet ds=new DataSet ();

da.Fill (ds);

dgd_booklist.DataSource =ds;

dgd_booklist.DataBind ();

cn.Close (); 

 

5.2.2 借阅信息查询

当用户在图书查询页面找到自己需要的借阅书籍的书目编号,点击查看是否在馆。图书详细信息界面如图6所示:

 

图6 图书详细信息截面

当书籍在馆的时间就可以在管理员那进行借书登记。

5.2.3 借阅者个人资料维护功能的实现

当用户进入读者信息查询页面,界面如图7所示:

 

图7 读者信息查询界面

用户输入正确的用户名和密码就进入维护页面。此功能实现当前借阅者部份资料的修改,但借书证号和身份类别这样的信息不允许修改,这是图书馆管理员模块的功能。只能对密码进行修改。

也可以查询自己的借阅情况,借阅历史,超期催还。如图8:

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

图8 读者个人资料维护

 

5.3 电子图书下载功能的实

当读者需要下载电子图书的时间进入电子图书下载页面,不用登录支持所有用户下载。双击需要下载的电子图书的下载按纽即可以下载电子图书到本地计算机。如图9:

 

图9 电子图书下载

主要代码如下:

<a href="down\大纲.doc">

<asp:Label ID="down1" runat="server" Text="下载"></asp:Label>

<a href="down\sql2K.exe"><asp:Label ID="down2" runat="server" Text="下载"></asp:Label>

 

5.4 留言板功能的实现

如果读者对图书馆有什么意见和建议,可以进入留言板页面写下意见和建议。

如图10:

 

 

图 10 留言板

5.5 图书馆管理员模块的实现 

5.5.1 图书馆图书借阅、归还功能的实现

当读者把借阅的图书拿到老师那进行图书借阅登记时,老师进入图书馆服务界面如图11:

 

 

 

 

 

 

图11 图书馆服务登录界面

登录以后进入借阅登记界面如图12所示:

 

图12 图书借阅登记界面

某中学图书馆系统的设计与实现-[点击下载]

评论