JAVA图书馆管理系统Word文件下载.docx
《JAVA图书馆管理系统Word文件下载.docx》由会员分享,可在线阅读,更多相关《JAVA图书馆管理系统Word文件下载.docx(26页珍藏版)》请在冰点文库上搜索。
![JAVA图书馆管理系统Word文件下载.docx](https://file1.bingdoc.com/fileroot1/2023-4/28/ddb5d016-d012-4ca8-afe6-8d9d1e7c1295/ddb5d016-d012-4ca8-afe6-8d9d1e7c12951.gif)
(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
读者管理
bookManage
图书管理
bookBorrow
图书借还
systemSearch
系统查询
(2)图书借阅表tb_bookBorrow,如表3-2所示。
图书借阅信息实体,用于存储所有图书借阅情况的信息,以准确地记录每本图书的借阅信息。
表3-2图书借阅表
bookBarcode
varchar
50
图书条形码
bookName
20
图书名称
borrowTime
datetime
8
借阅日期
returnTime
应还日期
readerBarCode
读者条形码
readerName
读者姓名
isReturn
是否归还
(3)书架信息表tb_bookcase,如表3-3所示。
图书馆对图书的分类,通常是将不同类型的图书分别放置在相应类型的书架上。
书架信息实体,用于存储图书馆中所有的书架信息。
表3-3书架信息表
bookcaseID
Int
4
是
书架编号
bookcaseName
书架名称
(4)图书信息表tb_bookInfo,如表3-4所示。
不同的图书,会有不同的图书信息。
对这些图书信息进行详细的记录,方便了图书的分类和查询。
图书信息实体,用于存储所有图书的相关信息。
表3-4图书信息表
bookBarCode
100
bookType
int
图书类型
bookcase
书架类别
bookConcern
出版社名称
author
作者名称
price
money
图书价格
borrowSum
借阅次数
(5)图书类型信息表tb_bookType如表3-5所示。
图书馆会有不同类型的图书,为了避免图书归类发生混乱,必须建立一个图书类型信息实体,用于存储图书的类型信息。
表3-5图书类型信息表
typeID
图书类型编号
typeName
类型名称
borrowDay
可借天数
(6)图书馆信息表tb_library,如表3-6所示。
每个事物都会有其自身的历史背景,图书馆也不例外。
为了记录图书馆的历史背景及其相关的信息,需要建立一个图书馆信息实体,用于存储图书馆的有关信息。
表3-6图书馆信息表
libraryName
图书馆名称
curator
馆长名称
tel
联系电话
address
200
联系地址
email
电子邮件
net
网址
upbuildTime
建馆时间
remark
500
备注
(7)读者信息表tb_readerInfo,如表3-7所示。
当有读者借阅图书时,要对读者的各项信息进行记录,以方便归还图书和已借阅图书的历史查询,读者信息实体,用于存储所有借阅图书的读者信息。
表3-7读者信息表
读者名称
sex
char
10
读者性别
readerType
读者类型
certificateType
证件类型
certificate
证件号码
(8)读者类型信息表tb_readerType,如表3-8所示。
在读者群体中,会有不同的分类,例如借阅图书的读者可能是教师、学生和市民等,所以对读者人群进行有效的分类是至关重要的。
读者类型信息实体,用于存储读者的类型信息。
表3-8读者类型信息表
id
类型编号
type
num
可借数量
(9)管理员信息表tb_user,如表3-9所示。
当管理员登录图书馆管理系统时,需要通过登录窗口验证成功后才能进入系统主页。
管理员信息实体,用于存储管理员的登录名称和登录密码。
表3-9管理员信息表
userId
管理员编号
userPwd
管理员密码
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"
//设置书架
//设置鼠标悬停行的颜色
e.Row.Attributes.Add("
onMouseOver"
"
Color=this.style.backgroundColor;
this.style.backgroundColor='
lightBlue'
"
onMouseOut"
this.style.backgroundColor=Color;
}
2图书馆信息主要代码:
usingSystem.Collections;
publicpartialclasslibraryInfo:
System.Web.UI.Page
if(Ses