JAVA图书馆管理系统.docx

上传人:b****5 文档编号:14281228 上传时间:2023-06-22 格式:DOCX 页数:28 大小:485.44KB
下载 相关 举报
JAVA图书馆管理系统.docx_第1页
第1页 / 共28页
JAVA图书馆管理系统.docx_第2页
第2页 / 共28页
JAVA图书馆管理系统.docx_第3页
第3页 / 共28页
JAVA图书馆管理系统.docx_第4页
第4页 / 共28页
JAVA图书馆管理系统.docx_第5页
第5页 / 共28页
JAVA图书馆管理系统.docx_第6页
第6页 / 共28页
JAVA图书馆管理系统.docx_第7页
第7页 / 共28页
JAVA图书馆管理系统.docx_第8页
第8页 / 共28页
JAVA图书馆管理系统.docx_第9页
第9页 / 共28页
JAVA图书馆管理系统.docx_第10页
第10页 / 共28页
JAVA图书馆管理系统.docx_第11页
第11页 / 共28页
JAVA图书馆管理系统.docx_第12页
第12页 / 共28页
JAVA图书馆管理系统.docx_第13页
第13页 / 共28页
JAVA图书馆管理系统.docx_第14页
第14页 / 共28页
JAVA图书馆管理系统.docx_第15页
第15页 / 共28页
JAVA图书馆管理系统.docx_第16页
第16页 / 共28页
JAVA图书馆管理系统.docx_第17页
第17页 / 共28页
JAVA图书馆管理系统.docx_第18页
第18页 / 共28页
JAVA图书馆管理系统.docx_第19页
第19页 / 共28页
JAVA图书馆管理系统.docx_第20页
第20页 / 共28页
亲,该文档总共28页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

JAVA图书馆管理系统.docx

《JAVA图书馆管理系统.docx》由会员分享,可在线阅读,更多相关《JAVA图书馆管理系统.docx(28页珍藏版)》请在冰点文库上搜索。

JAVA图书馆管理系统.docx

JAVA图书馆管理系统

1系统开发环境

1.1开发背景

随着社会的发展,每天都有数以十万、百万计的图书/期刊问世,图书馆的图书和期刊也在迅速的增加。

面对这些数量庞大的图书管理,需要处理复杂的读者信息,频繁的借还图书信息,图书增减信息,如果仍然采用传统的人工管理方法,既费时费力,更容易出错[1]。

信息技术的发展给图书的管理带来了新的机遇。

使用图书管理系统对图书馆进行管理,这不仅解决了一系列的弊端和问题,更加提高了工作效率。

1.2开发工具

1.2.1ASP.NET语言的发展

1996年,ASP1.0诞生,它的诞生给Web开发界带来了福音。

它作为IIS的附属产品免费发送,并且不久就在Windows平台上广泛使用[2]。

早期的Web开发是十分繁琐的,以至于要制作一个简单的动态页面都需要编写大量的代码才能完成,而ASP却允许使用VBScript这样简单的脚本语言,执行嵌在HTML网页中的代码,在进行程序设计时可以使用它的内部组件来实现一些高级的功能。

它的最大贡献在于它的ADO(ActiveXDataObject),使得对数据库的操作十分简单,进行动态网页设计也变成了一件轻松的事情[3]。

1998年,微软发布了ASP2.0。

与ASP1.0的主要区别在于它的外部组件是可以初始化的。

这样,在ASP程序内部的所有组件都有了自己的独立内存空间,并可以进行事务处理。

2000年,随着Windows2000的发行,它内带的ASP3.0也开始流行。

与ASP2.0的主要区别是它使用了COM+,并且效果提高,版本稳定。

2000年7月,ASP.NET发行。

ASP.NET不是ASP的简单升级,而是微软推出的新一代ActiveServerPages。

ASP.NET是微软发展的新的体系结构.NET的一部分,其中全新的技术架构会让每个人员的编程生活变得更为简单,Web应用程序的开发人员使用这个开发环境可以实现更加模块化、功能更强大的应用程序的编程[4]。

1.2.2ASP.NET语言的特色

网页的交互作用是通过CGI来实现的。

CGI程序的伸缩性不是很理想,因为它为每一个正在运行的CGI程序开一个独立进程。

解决方法就是将经常用来编写CGI程序的语言的解释器编译进你的Web服务器[5]。

ASP.NET是MicroSoft.NET的一部分,作为战略产品,微软为ASP.NET设计了这样一些策略:

易于写出结构清晰的代码,代码易于重用和共享,可用编译类语言编写等等,目的是让程序员更容易的开发出Web应用程序,满足计算向Web转移的战略方向的需要[6]。

ASP.NET不仅仅是ActiveServerPage(ASP)的下一个版本,而且是一种建立在通用语言上的程序构架,能被用于一台Web服务器来建立强大的Web应用程序。

ASP.NET提供许多比现在的Web开发模式强大的优势。

1.2.3SQLServer2000

SQLServer是一个关系数据库管理系统,它最初是由MicrosoftSybase和Ashton-Tate三家公司共同开发的,于1988年推出了第一个OS/2版本,在WindowsNT推出后Microsoft与Sybase在SQLServer的开发上就分道扬镳了[7]。

Microsoft将SQLServer移植到WindowsNT系统上,专注于开发推广SQLServer的WindowsNT版本,Sybase则较专注于SQLServer在UNIX操作系统上的应用。

在本书中介绍的是MicrosoftSQLServer以后简称为SQLServer或MSSQLServer。

SQLServer2000是Microsoft公司推出的SQLServer数据库管理系统的较新版本,该版本继承了SQLServer7.0版本的优点同时又比它增加了许多更先进的功能,具有使用方便可伸缩性好与相关软件集成程度高等优点,可跨越从运行MicrosoftWindows2000的膝上型电脑到运行MicrosoftWindows2000的大型多处理器的服务器等多种平台使用[8]。

1.3应用环境

1.3.1硬件环境

(1)能够运行Windows系统的高档PC台式机,笔记本电脑。

1.3.2软件环境:

(1)中文WindowsXP操作系统。

(2)MicrosoftVisualStudio2005集成开发环境。

(3)IIS5.1服务器。

(4)MicrosoftSQLServer2000数据库服务器。

2系统需求分析

2.1系统目标

(1)设计界面友好、美观、数据存储安全、可靠。

(2)基本信息设置保证图书信息和读者信息的分类管理。

(3)强大的查询功能,保证数据查询的灵活性。

(4)实现对图书借阅、续借、归还过程的全程数据信息跟踪。

(5)设置读者借阅和图书借阅排行榜,为图书管理提供真实的数据信息。

(6)提供借阅到期提醒,使管理者可以及时了解到期的图书借阅信息。

(7)提供管理员修改自己密码的功能,保证系统的安全性。

(8)提供灵活、方便的权限设置功能,使整个系统的管理分工明确。

(9)采用人机对话的操作方式,方便管理员的日常操作。

(10)系统最大限度地实现了易维护性和易操作性。

2.2流程图

根据系统的需求分析和可行性分析,画出图书馆管理系统的系统流程图,如图2-1所示。

图2-1系统流程图

2.3系统功能结构

根据图书馆管理系统的特点,可以将其分为系统设置、读者管理、图书管理、图书借还、系统查询等5个部分,其中各个部分及其包括的具体功能模块如图2-2所示。

图2-2系统功能模块

2.4文件夹结构组织

系统完成后的文件夹结构组织,如图2-3所示。

图2-3系统文件夹

3数据库设计

通过对系统进行需求分析、系统流程图以及系统功能结构的确定,设计数据库,名称为db_tsrj,共9个表[11]。

(1)管理员权限设置表tb_admSet,如表3-1所示。

只有系统分配的用户才能操作图书馆管理系统,而用户的权限又各不相同。

表3-1管理员权限设置表

字段名

数据类型

长度

主键否

描述

userName

Varchar

80

管理员名称

systemSet

bit

1

系统设置

readerManage

bit

1

读者管理

bookManage

bit

1

图书管理

bookBorrow

bit

1

图书借还

systemSearch

bit

1

系统查询

(2)图书借阅表tb_bookBorrow,如表3-2所示。

图书借阅信息实体,用于存储所有图书借阅情况的信息,以准确地记录每本图书的借阅信息。

表3-2图书借阅表

字段名

数据类型

长度

主键否

描述

bookBarcode

varchar

50

图书条形码

bookName

varchar

20

图书名称

borrowTime

datetime

8

借阅日期

returnTime

datetime

8

应还日期

readerBarCode

varchar

50

读者条形码

readerName

varchar

20

读者姓名

isReturn

bit

1

是否归还

(3)书架信息表tb_bookcase,如表3-3所示。

图书馆对图书的分类,通常是将不同类型的图书分别放置在相应类型的书架上。

书架信息实体,用于存储图书馆中所有的书架信息。

表3-3书架信息表

字段名

数据类型

长度

主键否

描述

bookcaseID

Int

4

书架编号

bookcaseName

varchar

80

书架名称

(4)图书信息表tb_bookInfo,如表3-4所示。

不同的图书,会有不同的图书信息。

对这些图书信息进行详细的记录,方便了图书的分类和查询。

图书信息实体,用于存储所有图书的相关信息。

表3-4图书信息表

字段名

数据类型

长度

主键否

描述

bookBarCode

varchar

100

图书条形码

bookName

varchar

100

图书名称

bookType

int

4

图书类型

bookcase

int

4

书架类别

bookConcern

varchar

100

出版社名称

author

varchar

80

作者名称

price

money

8

图书价格

borrowSum

int

4

借阅次数

(5)图书类型信息表tb_bookType如表3-5所示。

图书馆会有不同类型的图书,为了避免图书归类发生混乱,必须建立一个图书类型信息实体,用于存储图书的类型信息。

表3-5图书类型信息表

字段名

数据类型

长度

主键否

描述

typeID

Int

4

图书类型编号

typeName

varchar

50

类型名称

borrowDay

Int

4

可借天数

(6)图书馆信息表tb_library,如表3-6所示。

每个事物都会有其自身的历史背景,图书馆也不例外。

为了记录图书馆的历史背景及其相关的信息,需要建立一个图书馆信息实体,用于存储图书馆的有关信息。

表3-6图书馆信息表

字段名

数据类型

长度

主键否

描述

libraryName

varchar

80

图书馆名称

curator

varchar

80

馆长名称

tel

varchar

100

联系电话

address

varchar

200

联系地址

email

varchar

100

电子邮件

net

varchar

200

网址

upbuildTime

datetime

8

建馆时间

remark

varchar

500

备注

(7)读者信息表tb_readerInfo,如表3-7所示。

当有读者借阅图书时,要对读者的各项信息进行记录,以方便归还图书和已借阅图书的历史查询,读者信息实体,用于存储所有借阅图书的读者信息。

表3-7读者信息表

字段名

数据类型

长度

主键否

描述

readerBarCode

varchar

50

读者条形码

readerName

varchar

50

读者名称

sex

char

10

读者性别

readerType

varchar

50

读者类型

certificateType

Varchar

50

证件类型

certificate

Varchar

50

证件号码

tel

Varchar

50

联系电话

email

Varchar

50

电子邮件

remark

varchar

500

备注

(8)读者类型信息表tb_readerType,如表3-8所示。

在读者群体中,会有不同的分类,例如借阅图书的读者可能是教师、学生和市民等,所以对读者人群进行有效的分类是至关重要的。

读者类型信息实体,用于存储读者的类型信息。

表3-8读者类型信息表

字段名

数据类型

长度

主键否

描述

id

int

4

类型编号

type

varchar

50

类型名称

num

varchar

50

可借数量

(9)管理员信息表tb_user,如表3-9所示。

当管理员登录图书馆管理系统时,需要通过登录窗口验证成功后才能进入系统主页。

管理员信息实体,用于存储管理员的登录名称和登录密码。

表3-9管理员信息表

字段名

数据类型

长度

主键否

描述

userId

int

4

管理员编号

userName

varchar

50

管理员名称

userPwd

varchar

50

管理员密码

 

4主要模块设计

4.1网站首页设计

管理员通过“系统登录”模块验证后,可以登录到图书馆管理系统的主页。

系统主页主要包括Banner信息栏、导航栏、借阅排行榜和版权信息等4个部分[12]。

网站首页运行效果,如图4-1所示。

图4-1网站首页

4.2系统设置

4.2.1图书馆信息

图书馆信息记录图书馆的各种相关信息,图书馆信息的E-R图,如图4-2所示。

图4-2图书馆信息E-R图

根据图书馆E-R图设计出图书馆信息页面,选择“系统设置”/“图书馆信息”命令,进入到图书馆信息页面,页面运行,如图4-3所示。

图4-3图书馆信息页面

4.2.2管理员设置

管理员设置模块主要包括查看管理员列表、添加管理员、管理员权限设置和删除管理员4个功能。

选择“系统设置”/“管理员设置”命令,进入到管理员设置页面。

在此页面中将显示所有管理员的名称和管理员拥有的权限[13]。

管理员设置页面,如图4-4所示。

图4-4管理员设置页面

单击“添加管理员”连接按钮将弹出添加管理员页面对话框,在此对话框中可以添加新的管理员,新添加的管理员默认拥有图书借还权限和系统查询权限,如图4-5所示。

图4-5添加管理员图4-6权限设置

单击“权限设置”链接按钮将弹出管理员权限设置,在此对话框中可以设置某一个管理员所拥有的权限,如图4-6所示。

单击“删除”按钮可以删除某一个管理员信息。

4.2.3书架设置

书架信息设置,可以帮助对图书进行分类,也可以快速进行图书查找。

书架信息的E-R图,如图4-7所示。

图4-7书架信息E-R图

根据信息E-R图设计出的书架设置。

选择“系统设置”/“书架设置”,进入到书架设置页面,页面如图4-8所示。

图4-8书架设置页面

在该页面中,单击“添加书架信息”可以添加书架,单击“修改”按钮可以修改已有书架的信息,单击“删除”按钮可以删除空书架,如果该书架有图书,则弹出提示对话框,禁止删除。

4.3图书借还模块

在图书借还模块中,主要应该有图书借阅、图书续借和图书归还这3个功能。

在图书借阅页面中,输入读者条形码,点击“查找读者”按钮,下面可以显示出系统中已经存在的读者的各种信息。

页面设计如图4-9所示。

图4-9图书借阅页面

图书续借模块中,根据输入的读者条形码,显示出读者的信息和读者借阅未还的图书信息,如果想续借某本书,则输入图书条形码,单击“查找”,然后在该图书中点击“续借”,该页面的运行效果如图4-10所示。

图4-10图书续借页面

图书归还模块中,根据输入的读者条形码,显示出读者的信息和读者借阅未还的图书信息,如果归还某本书,则输入图书条形码,单击“查找”,然后在该图书中点击“归还”,该页面的运行效果如图4-11所示。

图4-11图书归还页面

4.4更改口令模块

在该模块中,可以修改管理员的密码,进入到更改口令模块中,输入管理员名称和旧密码,可以重新设置密码。

页面运行效果如图4-12所示。

图4-12更改口令页面

 

5

系统功能测试

5.1系统测试的意义

系统测试是系统开发周期中的一个十分重要的环节。

在系统开发周期中的各个阶段采取了严格仔细的审查,但是仍然会有很多的错误,在系统运行之前需要对系统的各项功能进行严格的测试,以便使问题及时更早的暴露出来,这样才能在投入使用时减少损失,否则到那时再纠正就会付出更大的代价[14]。

5.2系统测试内容

(1)登录测试

正确输入管理员名称和管理员密码,点击“确定”按钮,就会进入到系统首页。

点击“关闭”系统则提示是否要关闭当前窗口。

(2)图书馆信息测试

登录成功后,进入首页面,点击“系统设置”/“图书馆信息”,进入到图书管信息页面,在该页面中显示出图书馆的信息。

(3)管理员设置测试

点击“系统设置”/“管理员设置”,进入到管理员设置页面,在该页面中可以添加管理员、权限设置和删除三个功能。

点击添加管理员,弹出添加管理员对话框,输入系统中已有的登录名称和未有的登录名称,不同的登录密码和确认密码,点击添加,查看效果。

(4)书架设置测试

点击“系统设置”/“书架设置”,进入到管理员设置页面。

在该页面中分别测试添加书架信息,修改和删除三个功能。

(5)读者类型管理测试

在读者类型管理页面中,分别测试添加读者类型信息管理,修改和删除功能。

(6)读者档案管理测试

在读者档案管理测试中,有添加读者信息,修改读者信息和删除读者信息者三个功能,在每个功能中输入不同的数据,查看运行效果。

(7)图书类型设置测试

在图书类型设置的页面中需要分别测试添加图书类型信息,修改和删除功能。

(8)图书档案设置测试

在该页面中,测试打印图书信息、添加图书信息,修改和删除功能。

(9)图书借阅测试

在图书借阅中,输入不同的数据,测试查找读者和查找图书功能。

(10)图书续借测试

在这个页面中,输入不同读者条形码和图书条形码,测试续借功能。

(11)图书归还测试

在图书归还中,测试归还功能。

(12)图书档案查询测试

选择不同的查询条件,输入不同的信息,测试搜书功能。

(13)图书借阅查询测试

选择不同的查询条件,输入不同的信息,测试图书借阅的信息。

(14)更改口令测试

在该页面中,测试管理员口令的更改。

(15)退出系统测试

点击退出系统,则进入到登录页面中[15]。

6代码

系统主要代码:

1网站首页主要代码:

usingSystem;

usingSystem.Data;

usingSystem.Configuration;

usingSystem.Web;

usingSystem.Web.Security;

usingSystem.Web.UI;

usingSystem.Web.UI.WebControls;

usingSystem.Web.UI.WebControls.WebParts;

usingSystem.Web.UI.HtmlControls;

usingSystem.Data.SqlClient;

publicpartialclass_Default:

System.Web.UI.Page

{

protectedvoidPage_Load(objectsender,EventArgse)

{

if(Session["userName"]!

=null)//判断用户是否登录

{

bindBookInfo();//调用自定义方法用来绑定图书借阅排行

}

else

Response.Redirect("entry.aspx");//跳转到登录页面

}

protectedvoidbindBookInfo()

{

stringsql="selecttop10*fromtb_bookInfoorderbyborrowSumdesc";//设置SQL语句

gvBookTaxis.DataSource=dataOperate.getDataset(sql,"tb_bookInfo");//获取图书信息数据源

gvBookTaxis.DataBind();//绑定GridView控件

}

protectedvoidgvBookTaxis_RowDataBound(objectsender,GridViewRowEventArgse)

{

if(e.Row.RowIndex!

=-1)//判断GridView控件中是否有值

{

intid=e.Row.RowIndex+1;//将当前行的索引加上一赋值给变量id

e.Row.Cells[0].Text=id.ToString();//将变量id的值传给GridView控件的每一行的单元格中

}

if(e.Row.RowType==DataControlRowType.DataRow)

{

//绑定图书类型

stringbookType=e.Row.Cells[3].Text.ToString();//获取图书类型编号

stringtypeSql="select*fromtb_bookTypewhereTypeID="+bookType;

SqlDataReadertypeSdr=dataOperate.getRow(typeSql);

typeSdr.Read();//读取一条数据

e.Row.Cells[3].Text=typeSdr["typeName"].ToString();//设置图书类型

//绑定书架

stringbookcase=e.Row.Cells[4].Text.ToString();//获取书架编号

stringcaseSql="select*fromtb_bookcasewherebookcaseID="+bookcase;

SqlDataReadercaseSdr=dataOperate.getRow(caseSql);

caseSdr.Read();

e.Row.Cells[4].Text=caseSdr["bookcaseName"].ToString();//设置书架

//设置鼠标悬停行的颜色

e.Row.Attributes.Add("onMouseOver","Color=this.style.backgroundColor;this.style.backgroundColor='lightBlue'");

e.Row.Attributes.Add("onMouseOut","this.style.backgroundColor=Color;");

}

}

}

2图书馆信息主要代码:

usingSystem;

usingSystem.Data;

usingSystem.Configuration;

usingSystem.Collections;

usingSystem.Web;

usingSystem.Web.Security;

usingSystem.Web.UI;

usingSystem.Web.UI.WebControls;

usingSystem.Web.UI.WebControls.WebParts;

usingSystem.Web.UI.HtmlControls;

usingSystem.Data.SqlClient;

publicpartialclasslibraryInfo:

System.Web.UI.Page

{

protectedvoidPage_Load(objectsender,EventArgse)

{

if(Session["userName"]!

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

当前位置:首页 > IT计算机 > 电脑基础知识

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2