毕业课程设计报告图书管理系统.docx
- 文档编号:28792386
- 上传时间:2023-07-19
- 格式:DOCX
- 页数:45
- 大小:26.57KB
毕业课程设计报告图书管理系统.docx
《毕业课程设计报告图书管理系统.docx》由会员分享,可在线阅读,更多相关《毕业课程设计报告图书管理系统.docx(45页珍藏版)》请在冰豆网上搜索。
毕业课程设计报告图书管理系统
(此文档为word格式,下载后您可任意编辑修改!
)
******学院
计算机科学系
《数据库与信息管理》课程设计报告
题目:
《图书管理系统》
班级:
姓名:
学号:
指导老师:
设计时间:
2009.04.20~2009.06.01
图书管理系统分析报告
一、需求分析报告
1.引言
1.1编写目的
本需求的编写是为了研究利用大型数据库做基础的图书管理系统软件的开发途径和应用方法。
同时它也是进行项目策划、概要设计和详细设计的基础,是维护人员进行内部维护,信息更新,验收和测试的依据。
1.2项目背景
本项目的名称:
图书管理系统。
图书管理系统这任务提出与开发者为某学生的课程设计,用户是学校图书馆。
本产品是针对电脑管理图书的需求设计的,可以完成读者登记、图书添加、读者借还书、图书修改等。
1.3相关定义
数据字典:
它是数据的信息的集合,即对数据流图中包含的所有元素的定义的集合。
其作用是为设计人员提供关于数据描述的信息。
数据字典应该由对以下四类元素的定义组成:
数据流、数据流分量(即数据元素)、数据存储、处理。
2.需求概述
2.1目标
“图书管理系统”主要提供图书信息和读者基本信息的维护以及借阅等功能。
本系统是提高图书管理工作的效率,减少相关人员的工作量,使学校的图书管理工作真正做到科学、合理的规划,系统、高效的实施。
2.2用户类和特征
最高用户是图书管理员,图书管理员需要进行用户的创建、修改和删除等工作,要求具备计算机知识,如权限管理等。
2.3运行环境
1.操作系统:
WindowsXP
数据库管理系统:
MySQL5.0.45
开发工具:
MyEclipse7.0
软件平台:
ApacheTomcat6.0
2.客户端软件选择:
Web浏览器
3.功能需求
登录系统:
注销用户、系统退出。
管理:
用户管理、图书管理、读者管理、借阅管理。
查询:
图书查询、读者查询、借阅查询。
报表打印:
所有图书、借出图书、库存图书、所有读者。
帮助:
使用说明、关于。
另外:
1.做个有条形码的借书证,方便借书还书。
2.在编目和流通这两块一定要改善,用计算机管理。
3.对库能够灵活设置。
4.做个借期超过要求罚款的功能,不同类的书罚款各不相同。
5.软件系统安全上要有一定的保障。
6.增加各种尽可能多的统计功能。
7.安装磁条,增加图书安全性。
3.1确定执行者
执行者是与系统交互的外部实体,它既可以是人员,也可以是外部系统或硬件设备。
执行者可以直接确定“图书管理员”负责使用系统的主要功能,“读者”从系统中获取所需的信息。
3.2确定用例
用例描述了一个完整的系统事件流程,其重点在于执行者与系统之间的交互而不是内在的系统活动,
并对执行者产生有价值的可观测结果。
在这个“图书管理系统”中的用例图如下所示。
“图书管理系统”用例图
3.3编写用例文档
用例图不能提供用例所具有的全部信息,为此需要使用文字描述那些不能放在图形上的信息。
用例文档是关于执行者与系统如何交互的规格说明,要求清晰明确,没有二义性。
在描述用例时,应该只注重外部能力,不涉及内部细节。
下面给出本例中的用例稳当。
1.图书信息的维护用例
用例名:
图书信息的维护。
参与执行者:
图书管理员。
入口条件:
图书管理员已经登陆到该系统中。
事件流:
当有新入库时,图书管理员在录入页面输入书的信息,单击“提交”按钮,系统将书的信息保存到数据库中;当某一本图书的信息需要修改时,图书管理员通过输入查询条件,搜索出该书时,单击“修改”按钮,系统在可编辑状态显示图书的当前信息,图书管理员修改具体信息,单击“保存”按钮,系统将更新数据库中该书的信息;当需要删除一本或多本图书时,图书管理员查找到需要删除的图书记录,单击“删除”按钮,系统提示“确定要删除?
”对话框,当管理员选择“是”时,系统将删除数据库中相应图书的信息,反之,则不做任何操作。
出口条件:
系统将数据库中的信息进行相应的操作:
添加图书信息时,将新的图书信息保存在数据库中;修改图书信息时,将数据库中该图书的信息做相应的更新操作;删除图书信息时,则删除数据库中的相应图书记录。
异常事件:
在图书进行修改和删除时,先查出需要进行处理的图书记录,如果数据库中不存在符合条件的记录,查询无结果时,则无法进行修改和删除操作。
2.读者信息的维护用例
用例名:
读者信息的维护。
参与执行者:
图书管理员。
入口条件:
图书管理员已经登陆到该系统中。
事件流:
当有新的读者时,图书管理员在录入页面输入书的信息,单击“提交”按钮,系统将读者的信息保存到数据库中;当某一读者的信息需要修改时,图书管理员通过输入查询条件,搜索出该读者信息时,单击“修改”按钮,系统在可编辑状态显示读者的当前信息,图书管理员修改具体信息,单击“保存”按钮,系统将更新数据库中该读者的信息;当需要删除一个或多个读者时,图书管理员查找到需要删除的读者记录,单击“删除”按钮,系统提示“确定要删除?
”对话框,当管理员选择“是”时,系统将删除数据库中该读者的信息,反之,则不做任何操作。
出口条件:
系统将数据库中的读者信息进行相应的操作。
添加读者信息时,将新的读者信息保存在数据库中;修改读者信息时,将数据库中该读者的信息做相应的更新操作;删除读者信息时,则删除数据库中的相应读者记录。
异常事件:
在进行修改和删除读者信息时,先查出需要进行处理的读者记录,如果数据库中不存在符合条件的记录,查询无结果时,则无法进行修改和删除操作。
3.图书信息的查询用例
用例名:
图书信息查询。
参与执行者:
图书管理员、读者。
入口条件:
无。
事件流:
通过交互界面输入查询条件搜索图书记录。
出口条件:
若有符合条件的课程信息,则系统显示这些图书信息。
否则系统提示用户重新输入查询条件。
4.读者信息的查询用例
用例名:
读者信息的查询。
参与执行者:
图书管理员。
入口条件:
用户已经登陆到该系统中。
事件流:
通过查询界面输入查询条件搜索该读者记录。
出口条件:
若有符合条件的读者信息,则系统显示读者信息。
否则系统提示用户重新输入查询条件。
5.借书用例
用例名:
借书。
参与执行者:
管理员、读者。
入口条件:
图书管理员已经登陆到该系统中。
事件流:
图书管理员在借书界面,输入图书编号好读者证号,单击“保存”按钮。
出口条件:
系统将这条借书记录保存到数据库中。
异常事件:
如果图书为入库,则数据库中不存在该图书编号,提示“该书未入库”;如果数据库中不存在该读者证号,也相应给出提示。
6.还书用例
用例名:
还书。
参与执行者:
图书管理员、读者。
入口条件:
图书管理员已经登陆到该系统中。
事件流:
图书管理员在还书页面,输入图书编号,单击“还书”按钮。
出口条件:
系统将删除数据库中的该条借书记录。
异常事件:
如果数据库中不存在这本书的借阅记录,提示“非本管借出的图书”,如果数据库中不存在该读者证号,也相应给出提示。
7.口令管理用例
用例名:
口令管理
参与执行者:
图书管理员、读者。
入口条件:
用户已经登陆到该系统中。
事件流:
用户单击“修改密码”按钮,在口令修改页面输入新的密码,单击“保存”按钮。
出口条件:
数据库中的密码被修改成最新的密码。
4.非功能需求
4.1性能需求
学校对系统性能无特殊的要求,只要查询图书的时候没有明显的延迟就可以了,查询的时间不要超过3秒钟。
条件、假定和限制:
1)系统最小寿命:
系统应该能在无重大改动的条件下正常运行5年以上。
2)对设备的要求:
要求计算机稳定性良好,整套系统经济实惠。
3)可以利用的信息和资源:
图书管已经配置了所有的计算机,以及网络设备,操作人员将使用winxp
4)图书管员工受过较好的计算机方面的培训,在调研的时候感觉有不少员工有计算机方面的专业经验。
5)编目要参照中图法。
4.2安全性需求
对于图书管理系统的图书量会非常大,所以在对这些图书导入和查询时要保证速度。
在图书借阅过程中又要保证事务的完整性。
对于整个系统,需要完整的权限控制,防止某些人恶意攻击系统,修改原始记录,同时对于数据库中的数据需要定时备份,防止系统数据丢失。
此外,系统要求用户在登陆时需要身份验证。
5.故障处理
在正常情况下,应不出错。
一旦发生意外,比如掉电、网络不通等,也应保证系统数据不会丢失。
6.外部接口需求
6.1硬件接口
较小除硬盘外,基本没有与外界硬件的联系,不过考虑到数据库大量数据的备份等要求可以保持与磁带机和光盘刻录机的接口,这点较易实现。
6.2软件接口
这里主要考虑软件与操作系统的接口,考虑到文档处理的需要有可能可以包括与较常用的办公软件的接口。
例如microsoft的office系列。
另外用户还有用户所需要的软件接口,这些应在用户需求定义时明了。
二、设计分析报告
1.建立分析的对象模型
tb_borrow
idint
rederidint
bookidint(10)
borrowTimedate
backTimedate
operatorvarchar(30)
ifbacktinyint
(1)
“图书管理系统”类信息图如下图所示。
tb_booktype
idint
typenamevarchar(30)
daysDate
tb_bookinfo
idint
barcodeint
booknamevarchar(70)
typeidint
authorvarchar(30)
translatorvarchar(30)
ISBNvarchar(30)
pricefloat(8,2)
pageint
bookcaseint
inTimeDate
operatorvarchar(30)
deltinyint
(1)
tb_publishing
ISBNvarchar(20)
pubnamevarchar(30)
tb_bookcase
idint
namevarchar(30)
tb_giveback
idint
readeridint(11)
backTimedate
operatorvarchar(30)
tb_namager
idint
namevarchar(30)
PWDvarchar(30)
tb_purview
idint
syssettinyint
(1)
readersettinyint
(1)
booksettinyint
(1)
borrowbacktinyint
(1)
sysquerytinyint
(1)
tb_readertype
idint
namevarchar(50)
numberint(4)
tb_reader
idint
namevarchar(20)
sexvarchar(4)
barcodevarchar(30)
vocationvarchar(50)
brithdaydate
paperTypevarchar(10)
paperNOvarchar(20)
telvarchar(20)
emailvarchar(100)
createDatedate
operatorvarchar(30)
remarktext
typeidint(11)
tb_library
idint
librarynamevarchar(50)
curatorvarchar(10)
telvarchar(20)
addressvarchar(100)
emailvarchar(100)
urlvarchar(100)
createDatedate
introducetext
注意:
(1)tb_booktype类中的id对应tb_bookinfo类中的typeid。
(2)tb_publishing类中的ISBN对应tb_bookinfo类中的bookcase。
(3)tb_bookcase类中的id对应tb_bookinfo类中的bookcase。
(4)tb_manager类中的id对应tb_purview类中的id。
(5)tb_borrow类中的bookid对应tb_bookinfo类中的del。
(6)tb_giveback类中的id对应对应tb_bookinfo类中的del。
(7)tb_reader类中的id对应tb_borrow类中的id。
(8)tb_reader类中的id对应tb_giveback类中id。
(9)tb_readertype类中的id对应tb_reader类中的typeid。
3提供交互界面的类
book.jsp:
图书档案管理页面。
book_add.jsp:
添加图书信息页面。
book_detail.jsp:
图书详细信息页面。
book_Modify.jsp:
修改图书信息页面。
book_ok.jsp:
图书信息修改成功页面。
bookBack.jsp:
图书归还页面。
bookBorrow.jsp:
图书借阅页面。
bookcase.jsp:
书架设置页面。
bookcase_add.jsp:
添加书架信息页面。
bookCase_Modify.jsp:
修改书架信息页面。
bookQuery.jsp:
图书档案查询页面。
bookRenew.jsp:
图书续借页面。
bookType.jsp:
图书类型设置页面。
bookType_add.jsp:
添加图书类型信息页面。
bookType_Modify.jsp:
修改图书类型信息页面。
borrowQuery.jsp:
图书借阅查询页面。
bremind.jsp:
借阅到期提醒页面。
library_modify.jsp:
图书馆信息页面。
login.jsp:
图书馆管理系统主界面页面。
manager.jsp:
管理员设置页面。
manager_add.jsp:
添加管理员页面。
manager_Modify.jsp:
权限设置页面。
parameter_modify.jsp:
参数设置页面。
pwd_Modify.jsp:
更改口令页面。
reader.jsp:
读者档案管理页面。
reader_add.jsp:
添加读者信息页面。
reader_detail.jsp:
读者详细信息页面。
reader_Modify.jsp:
修改读者信息页面。
readerType.jsp:
读者类型管理页面。
readerType_add.jsp:
添加读者类型信息页面。
readerType_Modify.jsp:
修改读者类型信息页面。
3.数据库设计
表名:
tb_booktype
表1图书类型信息表
字段名
字段定义
数据类型
是否允许为空
是否主键
id
图书类型的自然主键
int
√
typename
类型名称
varchar(30)
days
可借天数
Date
表名:
tb_publishing
表2出版社信息表
字段名
字段定义
数据类型
是否允许为空
是否主键
ISBN
ISBN号
varchar(20)
pubname
出版社名称
varchar(30)
表名:
tb_bookcase
表3书架信息表
字段名
字段定义
数据类型
是否允许为空
是否主键
id
书架的自然主键
int
√
name
书架名称
varchar(30)
表名:
tb_manager
表4管理员信息表
字段名
字段定义
数据类型
是否允许为空
是否主键
id
管理员的自然主键
int
√
name
管理员名称
varchar(30)
PWD
管理员密码
varchar(30)
表名:
tb_bookinfo
表5图书信息表
字段名
字段定义
数据类型
是否允许为空
是否主键
id
图书的自然主键
int
√
barcode
条形码
int
bookname
图书名称
varchar(70)
typeid
类别ID
int
author
作者
varchar(30)
translator
翻译者
varchar(30)
ISBN
ISBN号
varchar(30)
price
单价
float(8,2)
page
页码
int
bookcase
图书类型
int
inTime
录入时间
Date
operator
操作员
varchar(30)
del
是否删除
tinyint
(1)
表名:
tb_purview
表6权限信息表
字段名
字段定义
数据类型
是否允许为空
是否主键
id
权限的自然主键
int
√
sysset
系统设置
tinyint
(1)
readerset
读者设置
tinyint
(1)
bookset
图书设置
tinyint
(1)
borrowback
图书借还
tinyint
(1)
sysquery
系统查询
tinyint
(1)
表名:
tb_borrow
表7借阅信息表
字段名
字段定义
数据类型
是否允许为空
是否主键
id
借阅的自然主键
int
√
rederid
读者ID
int
bookid
图书ID
int(10)
borrowTime
借阅时间
date
backTime
归还时间
date
operator
操作员
varchar(30)
ifback
是否归还
tinyint
(1)
表名:
tb_giveback
表8借还信息表
字段名
字段定义
数据类型
是否允许为空
是否主键
id
借还的自然主键
int
√
readerid
读者ID
int(11)
bookid
图书ID
int(11)
backTime
归还时间
date
operator
操作员
varchar(30)
表名:
tb_readdertype
表9读者类型信息表
字段名
字段定义
数据类型
是否允许为空
是否主键
id
读者类型的自然主键
int
√
name
类型名称
varchar(50)
number
可借数量
int(4)
表名:
tb_parameter
表10系统参数信息表
字段名
字段定义
数据类型
是否允许为空
是否主键
id
系统参数的自然主键
int
√
cost
花费
int
validity
有效期限
int
表名:
tb_reader
表11读者信息表
字段名
字段定义
数据类型
是否允许为空
是否主键
id
读者的自然主键
int
√
name
读者名称
varchar(20)
sex
性别
varchar(4)
barcode
条形码
varchar(30)
vocation
职业
varchar(50)
birthday
出生日期
date
paperType
有效证件
varchar(10)
paperNO
证件号码
varchar(20)
tel
联系电话
varchar(20)
电子邮箱地址
varchar(100)
createDate
建档时间
date
operato
操作员
varchar(30)
remark
备注
text
√
typeid
类型
int(11)
表名:
tb_library
表12图书馆信息表
字段名
字段定义
数据类型
是否允许为空
是否主键
id
图书馆的自然主键
int
√
libraryname
管理员名称
varchar(50)
curator
馆长
varchar(10)
tel
联系电话
varchar(20)
address
地址
varchar(100)
电子邮箱地址
varchar(100)
url
网站
varchar(100)
createDate
建馆时间
date
introduce
介绍
text
4.用户图形界面
用户界面设计采用图形用户界面。
5.系统登陆界面
打开浏览器并输入:
;
importorg.apache.struts.action.ActionMapping;
importorg.apache.struts.action.ActionForm;
importjavax.servlet..ActionForward;
importcom.actionForm.BookForm;
importorg.apache.struts.action.Action;
importcom.dao.BookDAO;
importjava.util.Date;
publicclassBookextendsAction{
privateBookDAObookDAO=null;
publicBook(){
this.bookDAO=newBookDAO();
}
publicActionForwardexecute(ActionMappingmapping,ActionFormform,
HttpServletRequestrequest,
HttpServletResponseresponse){
Stringaction=request.getParameter("action");
System.out.println("\nbook*********************action="+action);
if(action==null||"".equals(action)){
request.setAttribute("error","您的操作有误!
");
returnmapping.findForward("error");
}elseif("bookAdd".equals(action)){
retur
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 毕业 课程设计 报告 图书 管理 系统