数据库图书管理系统课程设计.docx
- 文档编号:11622283
- 上传时间:2023-03-28
- 格式:DOCX
- 页数:30
- 大小:1.06MB
数据库图书管理系统课程设计.docx
《数据库图书管理系统课程设计.docx》由会员分享,可在线阅读,更多相关《数据库图书管理系统课程设计.docx(30页珍藏版)》请在冰豆网上搜索。
数据库图书管理系统课程设计
数据库系统
课程设计报告
设计题目:
基于Java的图书管理系统
专业
班级
姓名
指导教师
起止时间
一、项目背景
1.1选题背景
图书管理是图书馆都必须面对的工作,使用传统的人工方式管理图书这种方式存在着许多缺点,如效率低,保密性差且较为繁琐。
另外,随着图书资料数量的增加,其工作量也将大大增加,这必将增加图书资料管理者的工作量和劳动强度,这将给图书资料信息的查找、更新和维护都带来了很多的困难。
图书馆面临越来越多的书籍信息、读者信息以及两者间相互联系产生的借书信息、还书信息,用人工管理图书资料,已经不能适应时代的发展,其管理方法将浪费许多人力和物力。
随着科学技术的不断提高,这种传统的手工管理方法必然被以计算机为基础的信息管理方法所取代。
图书管理作为计算机应用的一个分支,有着手工管理无法比拟的优点,如检索迅速,查找方便,可靠性高,存储量大,保密性好,成本低等,这些优点能够极大地提高图书管理的效率。
因此,开发一套能够为用户提供充足的信息查询手段的图书管理系统,将是非常必要的,也是十分及时的。
而且,随着计算机技术的不断应用和提高,计算机已经深入到社会生活的各个角落,计算机软件也在各方面得到广泛的应用。
所以,为了满足图书管理人员对图书馆书籍,读者资料,借还书等进行高效的管理,并结合现在图书馆管理的现状,在工作人员具备一定的计算机操作能力的前提下,编写图书管理系统软件以提高图书馆的管理效率。
图书管理人员可以管理读者的信息,图书的购入,借出,归还以及注销等;可以查询某位读者、某本图书的借阅情况,还可以及时的了解各个环节中信息的变更。
总之,使用该系统之后,图书管理的效率必将会有很大的提高。
1.2系统目标和实现技术
图书管理系统,是一个由人、计算机等组成的能进行管理信息的收集、传递、加工、保存、维护和使用的系统。
其功能一般包括:
图书信息管理、用户信息管理、图书借阅、图书归还、违约与毁坏赔偿、图书借还查询等等。
实现用计算机完成整个图书管理流程,使图书管理信息化,智能化,提高图书的管理水平,促进计算机管理图书的应用,加快图书管理速度,节约各项资源。
通过项目学习和综合实训,熟练掌握运用Java语言进行桌面应用程序开发的基本知识和技能;熟练掌握JAVA的基本语法与JDBC数据库技术的应用;进一步熟悉SQLServer数据库的数据库管理(数据库的创建、备份与恢复、函数与存储过程的应用、数据导入导出、作业的调度等)、表的设计(表的创建、修改、删除,字段的默认值、约束及关系等)、数据的查询处理(insert、update、delete、select语句的应用)等技术;并能结合数据库应用技术和软件工程技术进行桌面应用程序的开发。
二、需求分析
2.1业务流程分析
2.2数据流程分析
<1>顶层数据流图
顶层数据流图如图所示:
图书管理系统顶层数据流图
<2>读者管理数据流程图
读者管理数据流程图如图所示:
图书管理系统读者管理数据流程图
<3>图书管理数据流程图
图书管理系统流程图如图所示:
图书管理系统图书管理数据流程图
<4>借书数据流图
借书数据流程图如图所示:
图书管理系统借书数据流图
<5>还书数据流图
还书数据流图如图所示:
图书管理系统还书数据流图
<6>系统查询数据流图
系统查询数据流图如图所示:
图书管理系统系统查询数据流图
2.3数据字典
字段名称
数据类型
字段大小
字段说明
StuNO
Int
N/A
学生学号
StuName
Varchar
50
学生姓名
StuSex
Varchar
50
学生性别
Class
Varchar
50
所在班级
Derpartment
Varchar
50
所在院系
Tel
Char
11
电话
Permitted
Varchar
50
学生借阅许可
Password
Varchar
50
密码
mgNo
Int
N/A
管理员ID
Permitted
Varchar
50
管理员权限
Password
Varchar
50
管理员密码
BookNO
Int
N/A
图书ID
BookName
Varchar
50
图书名称
Author
Varchar
50
图书作者
Publisherment
Varchar
50
出版社
BuyTime
Varcgar
50
购进时间
Borrowed
Varchar
50
是否借阅
Ordered
Varchar
50
是否预约
Borrowed
Varchar
50
借阅时间
ReturnTime
Varchar
50
归还时间
DelayTime
Varchar
50
超期天数
LBNO
varchar
50
挂失书号
2.4产品功能
登录系统:
读者和管理登录管理:
读者管理(读者增加管理,读者修改管理,读者注销管理)
图书管理(图书增加管理,图书修改管理,图书删除管理)
流通管理(图书借阅,图书归还)
查询:
管理员查询:
管理员可以查询在库图书的信息
读者查询:
读者可以查询自己借书记录
建议:
1.做个有条形码的借书证,方便借书还书。
2.在编目和流通这两块一定要改善,用计算机管理。
3.对库存能够灵活设置。
4.软件系统安全上要有一定的保障。
5.增加各种尽可能多的统计功能。
6.安装磁条,增加图书安全性。
7.图书管理系统软件还必须具有导入,导出数据库功能,方便即时更新修改。
2.5软件功能
软件系统功能
系统功能表
用例名称
描述
读者信息管理
由计算机完成读者信息的存储和维护,并可以随时增加,修改,删除读者信息
图书信息管理
录入图书信息,有计算机完成对图书信息的存储和维护,并可以随时增加,修改,删除图书信息
图书流通管理
对图书基本流通信息的记录,以及图书的借阅,归还
系统查询管理
管理员可以使用该子系统查询所有在库图书的相关信息;读者可以使用该子系统查询自己的借书记录
三、概念结构设计
概要设计是指对用户的需求进行综合、归纳与抽象,形成一个独立于具体DBMS的概念模型,是整个数据库设计的关键。
图书管理系统是一个针对各种独立图书馆图书管理的软件,主要功能是减少过去人工管理的成本,运用现代技术实现大规模图书的从进书到图书流通生命周期结束的全过程的全方位方便快捷管理。
整个系统主要包括读者管理模块,图书管理模块,图书流通管理模块,系统查询模块。
其中,读者管理模块又包括读者增加,读者信息修改,读者注销;图书管理模块包括图书增加,图书信息修改,图书删除;图书流通模块包括图书借阅和图书归还;系统查询模块包括管理员查询在库图书信息,读者查询借书历史记录。
3.1系统软件结构图
系统软件结构图如图所示:
系统软件结构图
3.2图书管理系统H图
图书管理系统H图如图所示:
图书管理系统H图
3.3概要设计
1、编写目的
文档的主要目的是面向系统开发人员和客户,根据该文档的要求和目标描述,使开发人员和客户对系统的具体功能有先期的把握和预期,保证开发人员对系统的需求有准确把握,确保接下来开发的顺利进行以及确保客户能及时地对系统需求提出要求以进行更改。
2、文档范围
本系统主要完成的功能包括
读者信息的维护,也就是读者信息的增加、修改和删除
图书信息的维护,也就是图书信息的增加、修改和删除
图书流通的管理,包括借阅管理,归还管理
系统查询服务,管理员对在库图书信息的查询和读者对自己借阅历史记录的查询
3、系统概述
本系统是一个针对各种独立图书馆图书管理的软件,主要功能是简化过去人工管理的成本,运用现代技术实现大规模图书的从进书到图书流通生命周期结束的全过程的全方位方便快捷管理。
系统主要功能:
1.用户登录
2.用户信息修改:
用户登录后可对自己的登录信息进行设置,如修改密码等。
3.读者信息维护:
包括对读者信息的增、删、改等。
4.图书信息维护:
包括对图书信息的增(进新书)、删(保藏旧书)、改等。
5.图书借阅管理:
包括借出、归还等。
6.图书查询统计:
比如在库信息查询、读者借阅历史记录查询等。
7.用户退出
4、设计约束
1.系统运行于Windows平台
2.Windows系统要求2000/XP及以上
3.本系统只允许特定人数同时在线
4.本系统不支持远程访问
5、设计策略
为了保证系统良好的可扩展性,在设计过程中采取了以下策略:
1、保证各功能模块之间的低耦合度和模块内的高内聚
2、采用增量模型,保持系统的良好可扩展性
3、设计时适当预留空间,支持将来功能扩展
四、逻辑结构设计
4.1界面设计
<1>登录界面
用登录系统主要验证其用户名和密码的正确性。
登录界面如图1-1所示:
系统登录界面
<2>图书预览界面
图书预览界面如图所示:
读者增加界面
<3>图书增加界面
图书增加时,需要输入图书的基本信息来存储,如作者,出版社等。
图书增加界面如图:
图书增加界面
<4>图书入库界面
图书入库界面如图所示
<5>读者删除界面
图书删除界面如图所示:
读者信息修改界面
<6>读者修改密码界面
读者修改密码界面如图所示
4.2程序流程图
<1>登录流程图
登录流程图如所示:
系统登录流程图
<2>图书录入流程图
图书录入流程图如图所示:
图书录入流程图
<3>图书修改流程图
图书修改流程图如图所示:
图书修改流程图
4.3核心算法
首先系统判断用户在主菜单上所输入的功能选择码是否合法,并根据选择码进入相应功能模块。
登录过程
1.读者或管理员输入用户名和密码
2.系统检查读者或管理员输入的基本信息的合法性
3.检查合法时,则允许登录,反之,则拒绝登录并提示信息。
4.结束
读者增加
1.管理员录入数据。
2.系统检查管理员输入的读者基本信息的合法性,如读者类型等。
3.检查错误时,增加失败。
当检查正确后即从读者系统文件中取得读者当前编号和系统日期作为该登记读者的编号和登记日期。
4.将基本信息写入读者数据文件中。
5.结束。
修改读者过程
1.管理员输入要修改的读者编号。
2.系统根据管理员输入的读者编号先从主文件中读出该记录。
如找不到,则提示该读者不存在,反之则继续操作。
3.管理员输入修改数据。
4.检查输入数据合法性,若错误,则提示错误信息,正确则修改主文件该记录。
5.结束。
注销读者记录
1.管理员输入要删除的读者编号。
2.系统根据用户输入的读者编号先从主文件中读出该记录。
如找不到,则提示该读者不存在,反之则继续。
3.管理员确定删除数据。
4.从主文件中删除该记录。
5.结束。
图书增加
1.管理员录入数据。
2.系统检查管理员输入的图书基本信息的合法性,如图书状态,图书类型等。
3.检查错误时,增加失败。
当检查正确后即从图书系统文件中取得图书当前编号和系统日期作为该登记图书的编号和登记日期。
4.将基本信息写入图书数据文件中。
5.结束。
修改图书过程
1.管理员输入要修改的图书编号。
2.系统根据管理员输入的图书编号先从主文件中读出该记录。
如找不到,则提示该图书不存在,反之则继续操作。
3.管理员输入修改数据。
4.检查输入数据合法性,若错误,则提示错误信息,正确则修改主文件该记录。
5.结束。
删除图书记录
1.管理员输入要删除的图书编号。
2.系统根据用户输入的图书编号先从主文件中读出该记录。
如找不到,则提示该图书不存在,反之则继续。
3.管理员确定删除数据。
4.从主文件中删除该记录。
5.结束。
查询过程
1.读者或管理员输入要查询的图书编号。
2.系统根据读者或管理员输入的图书编号先从主文件中读出该记录。
如找不到,则提示没有找到,反之则输出结果。
3.结束。
图书借阅
1.读者录入需借阅的图书编号。
2.系统检查读者输入信息的合法性,如该图书是否已借阅,已收藏等。
3.检查错误时,则提示错误存在。
当检查正确后即可借阅图书。
4.修改图书主文件中的图书状态,借阅日期。
5.写图书借还文件记录。
6.结束。
图书归还
1.读者录入需归还的图书编号。
2.系统检查读者输入信息的合法性,如该图书是否已归还,已收藏等。
3.检查错误时,则提示存在错误。
当检查正确后即可归还图书。
4.修改图书主文件中的图书状态,借阅日期。
5.写图书借还文件记录。
6.结束。
五、物理结构设计
USE[Student]
GO
/******Object:
Table[dbo].[book]ScriptDate:
01/09/201418:
41:
30******/
SETANSI_NULLSON
GO
SETQUOTED_IDENTIFIERON
GO
SETANSI_PADDINGON
GO
CREATETABLE[dbo].[book](
[BookNO][int]NOTNULL,
[BookName][varchar](50)NULL,
[Author][varchar](50)NULL,
[Publishment][varchar](50)NULL,
[BuyTime][varchar](50)NULL,
[Borrowed][varchar](50)NULL,
[Ordered][varchar](50)NULL,
CONSTRAINT[PK_book]PRIMARYKEYCLUSTERED
(
[BookNO]ASC
)WITH(PAD_INDEX=OFF,STATISTICS_NORECOMPUTE=OFF,IGNORE_DUP_KEY=OFF,ALLOW_ROW_LOCKS=ON,ALLOW_PAGE_LOCKS=ON)ON[PRIMARY]
)ON[PRIMARY]
GO
SETANSI_PADDINGOFF
GO
EXECsys.sp_addextendedproperty@name=N'MS_Description',@value=N'书号',@level0type=N'SCHEMA',@level0name=N'dbo',@level1type=N'TABLE',@level1name=N'book',@level2type=N'COLUMN',@level2name=N'BookNO'
GO
EXECsys.sp_addextendedproperty@name=N'MS_Description',@value=N'书名',@level0type=N'SCHEMA',@level0name=N'dbo',@level1type=N'TABLE',@level1name=N'book',@level2type=N'COLUMN',@level2name=N'BookName'
GO
EXECsys.sp_addextendedproperty@name=N'MS_Description',@value=N'作者',@level0type=N'SCHEMA',@level0name=N'dbo',@level1type=N'TABLE',@level1name=N'book',@level2type=N'COLUMN',@level2name=N'Author'
GO
EXECsys.sp_addextendedproperty@name=N'MS_Description',@value=N'出版社',@level0type=N'SCHEMA',@level0name=N'dbo',@level1type=N'TABLE',@level1name=N'book',@level2type=N'COLUMN',@level2name=N'Publishment'
GO
EXECsys.sp_addextendedproperty@name=N'MS_Description',@value=N'购进时间',@level0type=N'SCHEMA',@level0name=N'dbo',@level1type=N'TABLE',@level1name=N'book',@level2type=N'COLUMN',@level2name=N'BuyTime'
GO
EXECsys.sp_addextendedproperty@name=N'MS_Description',@value=N'是否借阅',@level0type=N'SCHEMA',@level0name=N'dbo',@level1type=N'TABLE',@level1name=N'book',@level2type=N'COLUMN',@level2name=N'Borrowed'
GO
EXECsys.sp_addextendedproperty@name=N'MS_Description',@value=N'是否预约',@level0type=N'SCHEMA',@level0name=N'dbo',@level1type=N'TABLE',@level1name=N'book',@level2type=N'COLUMN',@level2name=N'Ordered'
GO
USE[Student]
GO
/******Object:
Table[dbo].[exceedTime]ScriptDate:
01/09/201418:
42:
37******/
SETANSI_NULLSON
GO
SETQUOTED_IDENTIFIERON
GO
SETANSI_PADDINGON
GO
CREATETABLE[dbo].[exceedTime](
[StuNO][int]NOTNULL,
[BookNO][int]NOTNULL,
[BookName][varchar](50)NULL,
[Delaytime][int]NULL,
CONSTRAINT[PK_exceedTime]PRIMARYKEYCLUSTERED
(
[StuNO]ASC
)WITH(PAD_INDEX=OFF,STATISTICS_NORECOMPUTE=OFF,IGNORE_DUP_KEY=OFF,ALLOW_ROW_LOCKS=ON,ALLOW_PAGE_LOCKS=ON)ON[PRIMARY]
)ON[PRIMARY]
GO
SETANSI_PADDINGOFF
GO
EXECsys.sp_addextendedproperty@name=N'MS_Description',@value=N'学号',@level0type=N'SCHEMA',@level0name=N'dbo',@level1type=N'TABLE',@level1name=N'exceedTime',@level2type=N'COLUMN',@level2name=N'StuNO'
GO
EXECsys.sp_addextendedproperty@name=N'MS_Description',@value=N'书号',@level0type=N'SCHEMA',@level0name=N'dbo',@level1type=N'TABLE',@level1name=N'exceedTime',@level2type=N'COLUMN',@level2name=N'BookNO'
GO
EXECsys.sp_addextendedproperty@name=N'MS_Description',@value=N'书名',@level0type=N'SCHEMA',@level0name=N'dbo',@level1type=N'TABLE',@level1name=N'exceedTime',@level2type=N'COLUMN',@level2name=N'BookName'
GO
EXECsys.sp_addextendedproperty@name=N'MS_Description',@value=N'超期时间',@level0type=N'SCHEMA',@level0name=N'dbo',@level1type=N'TABLE',@level1name=N'exceedTime',@level2type=N'COLUMN',@level2name=N'Delaytime'
GO
USE[Student]
GO
/******Object:
Table[dbo].[losebook]ScriptDate:
01/09/201418:
42:
57******/
SETANSI_NULLSON
GO
SETQUOTED_IDENTIFIERON
GO
SETANSI_PADDINGON
GO
CREATETABLE[dbo].[losebook](
[LBNO][int]NOTNULL,
[BookNO][int]NULL,
[BookName][varchar](50)NULL,
[StuNO][int]NULL,
CONSTRAINT[PK_losebook]PRIMARYKEYCLUSTERED
(
[LBNO]ASC
)WITH(PAD_INDEX=OFF,STATISTICS_NORECOMPUTE=OFF,IGNORE_DUP_KEY=OFF,ALLOW_ROW_LOCKS=ON,ALLOW_PAGE_LOCKS=ON)ON[PRIMARY]
)ON[PRIMARY]
GO
SETANSI_PADDINGOFF
GO
EXECsys.sp_addextendedproperty@name=N'MS_Description',@value=N'书号',@level0type=N'SCHEMA',@level0name=N'dbo',@level1type=N'TABLE',@level1name=N'losebook',@level2type=N'COLUMN',@level2name=N'LBNO'
GO
EXECsys.sp_addextendedproperty@name=N'MS_Description',@value=N'书号',@level0type=N'SCHEMA',@level0name=N'dbo',@level1type=N'TABLE
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数据库 图书 管理 系统 课程设计