图书管理系统设计文档(共28页).doc

上传人:飞****2 文档编号:6478962 上传时间:2022-02-04 格式:DOC 页数:29 大小:392.50KB
返回 下载 相关 举报
图书管理系统设计文档(共28页).doc_第1页
第1页 / 共29页
图书管理系统设计文档(共28页).doc_第2页
第2页 / 共29页
点击查看更多>>
资源描述

《图书管理系统设计文档(共28页).doc》由会员分享,可在线阅读,更多相关《图书管理系统设计文档(共28页).doc(29页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、精选优质文档-倾情为你奉上摘 要随着科学技术的进步和计算机行业的迅速发展,人们的工作效率得到大大提高。计算机信息处理系统的引进已彻底改变了许多系统的经营管理。图书管理系统是学校管理机制中的重要组成部分,通过对图书馆管理系统的运行管理机制进行调查和研究,开发了此图书馆管理系统。本文中主要介绍了图书馆管理事务中的常见基本问题等研究背景,进行了全面的可行性分析,详细论证了系统的需求分析、系统设计、系统实现和系统测试过程。本系统使用JSP进行网页界面的设计,使用MVC设计模式,通过JDBC驱动和数据库进行无缝连接。系统实现了用户登录、图书管理、借书证管理、图书借阅管理等功能模块。用户登录模块实现用户的

2、登录和权限判定;图书管理模块实现了对图书的添加、删除、修改、查询等功能;借书证管理模块实现了对学生的添加、删除、修改、查询等功能;图书借阅管理模块实现了学生对图书的借阅、还书和所借图书的查看等功能。测试结果表明,本系统实现了图书馆图书管理的主要功能,基本满足图书管理的需要。专心-专注-专业1绪 论图书管理系统的主要功能是实现图书馆图书的借阅和归还的管理自动化,图书新增及销毁的及时化,用户及图书信息的更新,围绕这些主要功能,本系统涉及到以下核心功能:借阅管理,归还管理,图书管理,学生管理。除了这些核心功能外,还包括一些基本和辅助的功能,它们是:图书信息管理,查询功能等。该系统设计的主要目标是:设

3、计一个图书馆管理系统,该系统主要功能分为图书查询、图书借阅归还和图书管理三大部分。在图书查询模块中要求用户能在浏览器中分别书名、著译者、类型等条件查询;在图书管理模块中要求能完成如办理借书证(即添加新的学生)、新书录入、借书还书登记、图书修改等日常管理功能。(1) 网站前台设计:前台供学生使用,学生登录后有如下权利图书查询:用户可以按多种方式对图书库中的图书进行查询;借阅信息查询:用户可以查看自己的历史借阅信息。(2)网站后台设计:后台是供管理员使用的,管理员登陆后有如下权利办理借阅证:将学生信息填写完整,在数据库中注册新用户;书籍的录入及删除:可以对现有图书库中的图书进行删除,也可以添加新书

4、;借书还书登记:普通用户借阅或归还图书时,管理员将在借阅信息表中添加相应的记录;图书修改:管理员可以对现有图书的详细信息进行修改。2需求分析2.1图书馆管理系统需求概述图书馆管理系统的开发主要涉及到图书的管理,学生信息的管理,借阅信息的管理三大功能的数据管理。从管理的角度可将图书分为三类:图书信息管理、系统用户管理、读者数据管理。图书信息管理包括:添加新进图书、删除旧图书、修改图书信息。系统用户管理包括:修改用户信息、办理新用户、注销用户。读者数据管理主要包括:读者借阅信息的管理,借阅图书以及归还图书。图书借阅者的需求是查询图书室所存的图书。个人借阅情况以及个人信息的修改;图书馆工作人员对图书

5、借阅者的借阅及还书要求进行操作,同时形成借书或还书报表给借阅者查看确认;图书管理人员的功能最为复杂,包括对图书借阅者、图书进行管理和维护、以及系统状态的查询和维护等。图书馆管理员可以浏览、查询、添加、删除、修改的基本信息;浏览、查询、添加、删除和修改图书借阅者的基本信息;浏览、查询、添加、删除和修改图书的借阅信息。2.2功能需求在本系统中,对读者来说,他们关心的问题其实是如何方便的查询到图书馆中的书籍以及自己正在借阅或者已经借阅过一些什么书籍,也就是借阅历史,另一个关心的问题就是所借阅的图书是否到期等等。由此可以得出系统一些需求。2.2.1 与读者相关的基本功能元素(1)图书查询:应该能够按照

6、图书不同信息对图书进行查询,如书名、作者、图书类型等条件查询。(2)读者信息查询,读者信息的查询内容应包括以下几个方面:读者信息对读者的基本信息进行显示。书刊借阅对该读者借阅书籍记录进行查询。欠款查询对该读者超期图书的欠款情况的查看。2.2.2 与管理员相关的基本功能元素在面向系统的管理员来说,应注意如下几点:(1)图书馆中有哪些书籍,是否可以被借阅;(2)对学生的添加、修改和删除操作的方便性;(3)查看学生都借阅着哪些书籍;(4)对书籍的添加、修改和删除操作的方便性。2.2.3 总体系统的基本功能元素从以上问题出发,可以得出本系统应该具有的功能:(1)图书查询对馆内的图书进行查询;(2)借阅

7、管理对读者的每一次借阅,还书进行登记和管理;(3)图书管理对图书馆的书籍进行管理,添加、删除以及修改信息;(4)学生管理对学生进行管理,添加、删除以及修改信息;(5)欠款情况管理对读者借阅图书超期欠款的情况进行管理。4系统设计4.1 图书馆管理系统设计指导思想和原则(1)利用软件开发现有软硬件环境,及先进的管理系统开发方案,从而到达充分利用现在资源提高系统开发水平和应用效果的目的。(2)系统应该符合软件工程开发的理论,开发方法等开发依据。(3)系统应满足图书馆管理工作的需要,并达到操作过程中的直观,方便,实用,安全,准确等要求。(4)系统应具备数据库维护功能,及时根据用户需求进行数据库的各种操

8、作。(5)系统采用原型,实用模块化程序设计方法,便于系统功能的各种组合和修改,以及系统的测试与维护。(6)图书馆管理系统的设计应适合校园的发展。4.2 设计模式设计模式是面向对象的程序设计人员用来解决编程问题的一种形式化表示。本系统开发采用目前一种广泛流行的软件设计模式MVC。MVC(ModelViewController)应用程序结构被用来分析分布式应用程序的特征。这种抽象结构能有助于将应用程序分割成若干逻辑部件,使程序设计变得更加容易。把一个应用的输入、处理、输出流程按照Model、View、Controller的方式进行分离,这样一个应用被分成三个层模型层、视图层、控制层。图4-1MVC

9、模式MVC模式的出现,很好的解决了传统开发WEB应用方式中存在的问题。M代表模型(Model),包含完成任务所需要的所有的行为和数据;V代表视图(View)界面,现实模型提供的数据;C代表控制器(Controller),它将模型映射到界面中,处理用户的输入并相应请求。其模型的关系如图所示。在MVC模型中,三层各尽其职、相互独立,各层内部的改变不会影响到其它层,从而降低了数据表达、数据描述和应该操作的耦合度,也能更好的实现开发中的分工,加速工程进度。4.2 图书馆管理系统总体功能概述图书管理系统包含五个模块分别是:系统登录、图书管理、学生管理、借阅信息管理、图书检索。系统登录模块:一般用户和管理

10、员都必须登录才能进入系统,用户登录时在后台判断用户的权限类型,分为普通用户和管理员,普通用户可以对书籍进行浏览及个人借阅信息的查询,管理员可以对多种信息进行操作。图书管理模块:管理员通过验证界面进入系统后,进入到图书管理模块,可以对图书进行添加,删除、修改图书信息、查询、查看等一系列的操作。学生管理模块:管理员可以在此模块中创建新的普通用户,并且可以对用户的信息进行修改,删除等操作。借阅信息管理模块:这是图书管系统中最重要的模块之一,管理员进入该模块中可以为普通用户办理借阅图书,归还图书的功能,并且能够实现还款的操作。图书检索模块:普通用户通过验证界面进入系统后,能够按照书名,作者等多种条件对

11、图书进行查询操作,确保查询到的都是最新的信息。整体系统的功能模块如图4-2所示:图4-2 图书馆管理系统功能图4.3 图书馆管理系统各功能模块概述4.3.1 系统登录模块用户进入系统时调用的一个模块。该模块根据用户输入的用户名、密码来判断用户的类型,跳转到该类用户的界面。本模块的功能点包括:(1) 判断用户名和密码是否相符;(2) 根据用户的权限类型,登录到系统的制定界面操作使用。登录功能模块流程图如图4-3所示:图4-3 登录模块流程图4.3.2 图书管理模块在本模块中图书馆工作人员可以对图书进行管理操作。本模块的功能点包括:(1) 新书入库,将新进图书按其类型将图书的基本信息录入系统数据库

12、; (2) 图书出库,某一部分图书会随着时间的增长及知识的更新而变得不再有收藏的价值,或者图书被损坏,这些图书就要在图书库中除去。即从图书库中删除此图书记录;(3) 新书编码,图书入库后,需要贴上条形码,以便以后提供借阅,本系统不涉及到条形码阅读器,只是假定此过程已经生成条形码。编码只是将条形码帖于书上以唯一标识图书;(4) 图书信息修改,图书信息由于工作人员的疏忽,而出现录入错误,提供其图书ID就可以查看图书的基本信息并对其进行修改;图书管理功能模块流程图如图4-4所示:图4-4 图书管理模块流程图4.3.3 学生管理模块本模块主要是工作者对学生信息(读者借书证信息)进行管理。本模块的功能点

13、包括:(1) 办理借书证,为新读者办理借书证,填写用户基本信息;(2) 注销借书证,输入读者借书证编号,根据借书证ID删除读者表中此借书证信息;(3) 挂失借书证,主要是将借书证的状态改为挂失,更新读者表状态字段,有图书管理员操作;(4) 修改图书证信息,由于工作人员的疏忽,而出现办理借书证时录入信息有误,则可根据借书证编号对其信息进行查看和修改。借书证管理功能模块流程图如图4-5所示:图4-5 借书证管理模块流程图4.3.4 借阅信息管理模块本模块主要是工作者对图书外借和归还进行管理。本模块的功能点包括:(1) 图书借阅,记录借阅证编号和图书编号,进行借书过程。在数据库中插入一天借书记录,该

14、记录包括图书ID、借书证ID、借阅日期、归还日期等;(2) 图书归还,输入借书证编号,图书编号,根据输入的编号在借阅登记表中找到相应的记录,将借阅记录删除,并将该记录相应的数据更新到历史借阅记录信息表中;(3) 查看借阅记录,可以根据借书证ID以及图书ID查询借阅记录。(4) 办理还款,如读者有图书超期的情况将会有欠款,可以根据借书证的ID来为读者班里还款。借阅信息管理功能模块流程图如图4-6所示:图4-6 借阅信息管理模块流程图4.3.5 图书检索模块使用该模块的用户有:读者和管理员。本模块的功能点包括:(1) 根据图书ID进行检索;(2) 根据图书名称进行检索;(3) 根据图书类型进行检索

15、。(4) 根据图书作者或译者进行检索。图书检索功能模块流程图如图4-7所示:图4-7 图书检索模块流程图6.1 4.4 系统数据库设计4.4.1 概念结构设计(1)实体图学生:学生属性有学号、姓名、密码、性别、学院、班级、电话、email、宿舍、地址、已借书数量、创建日期。学生实体图如图4-8所示:学生学号创建日期已借书数量地址宿舍email电话班级学院性别密码姓名图4-8 学生实体图图书:图书属性有图书编号、书名、作者、类别、单价、出版社、出版日期、总数量、当前数量、购买日期、内容摘要。图书实体图如图4-9所示:图书编号书名内容摘要购买日期当前数量作者图书总数量类别出版日期出版社单价图4-9

16、 图书实体图(2)ER图根据以上实体图,分析了各个实体的属性,根据这些属性,可以得到系统的ER图,如图4-10所示班级属于1n学生借书日期nn属于借阅还书日期超期罚款1n学生图书图4.8 系统E-R图4.4.2 逻辑结构设计根据上述功能模块的需求,设计如下主要数据库表:表4.1 图书信息表(t_book)字段英文名称字段中文名称字段类型字段约束是否可为空Book_num图书编号Varchar2(15)主键否Book_name书名Varchar2(20)否Writer作者Varchar2(10)否Sort_id类加IDVarchar2(5)否Price单价Number(5.2)是Pub_comp

17、any出版社Varchar2(20)是Pub_date出版日期Date是Total_num总数量Number(3)否Current_num当前数量Number(3)否Buy_date入库日期Date否Brief内容摘要Varchar2(100)是表4.2 学生信息表 (t_student)字段英文名称字段中文名称字段类型字段约束是否可为空Student_num学号Varchar2(15)主键否Student_name姓名Varchar2(10)否Password密码Varchar2(20)否Academy_id学院IDVarchar2(10)否Class_id班级IDVarchar2(10)否

18、Sex性别Varchar2(2)是Telephone电话Varchar2(15)是EmailEmailVarchar2(20)是Lended_num已借书数量Number(2)默认为0否Create_date创建日期Date否表4.3 借阅信息表(t_book_student)字段英文名称字段中文名称字段类型字段约束是否可为空IdID号Varchar2(35)主键否Book_id图书编号Varchar2(15) 否Student_id学号Varchar2(15)否borrow_date 借书日期Date否return_date 还书日期Date否Money超期罚款Number(5.2)否表4.

19、4 管理员表(t_admin)字段英文名称字段中文名称字段类型字段约束是否可为空Admin_id管理员IDNumber(5)主键否Admin_name管理员姓名Varchar2(10) 否Admin_password管理员密码Varchar2(20)否表4.5 学院表(t_admin)字段英文名称字段中文名称字段类型字段约束是否可为空Academy_id学院IDVarchar2(10)主键否Academy_name学院名Varchar2(30) 否表4.6 班级表(t_class)字段英文名称字段中文名称字段类型字段约束是否可为空Class_id班级IDVarchar2(10)主键否Class

20、_name班级名Varchar2(30)否Academy_id所属学院IDVarchar2(10) 否表4.7 图书类别表(t_admin)字段英文名称字段中文名称字段类型字段约束是否可为空Sort_id类别IDVarchar2(5)主键否Sort_name类别名Varchar2(20) 否5系统实现图5-1数据库查询示意图6.2 5.1登录系统模块的实现本模块主要是用户通过图书馆管理系统的首页进入该系统。用户输入正确的用户名和密码,如果登录信息有错误,则系统提示登录错误信息,并且禁止系统用户进行任何操作。若登录信息正确,系统会根据用户的身份进行相应权限的判断,读者进入前台系统,管理员进入后台

21、系统。图书馆系统登录主页面如图5-1所示。图5-1 图书馆管理系统登录界面其实现的代码如下:6.3 5.2图书管理模块的实现图书管理模块主要分为图书入库、查看图书、统计图书,其中图书入库是往图书管理数据库中添加图书信息。看图书功能中可以查看图书详细信息,并对图书信息进行修改或删除某些废弃图书信息。5.2.1图书入库功能的实现点击添加图书功能,填写图书基本信息,为图书选择类型,类型是与数据库交互动态生成的下拉列表,具体界面如图5-2所示。图5-2 图书入库界面5.2.2图书维护功能的实现点击图书维护功能,展示所有图书的信息列表,在每个图书信息行后提供删除和修改操作功能,并且可以单击选定某一个图书

22、信息后的详细信息进行详细查看图书信息。具体图书列表界面如图5-3所示图5-3 图书列表界面(1)删除图书功能的实现管理员删除图书,删除时可删除一个,也可同时多选删除,(2)修改图书信息功能的实现在管理员修改图书信息时,跳转到图书信息详细表单中,列出所要修改图书的详细信息,并可以进行修改,则修改界面如图5-4所示。图5-4 修改图书信息界面(3)查看图书详细信息功能的实现在管理员点击详细信息时,跳转到某图书信息详细表单中,列出所选图书的详细信息,则显示界面如图5-5所示。图5-5图书详细信息界面5.3学生管理模块的实现学生管理模块主要分为添加学生、查看学生、修改学生,查看学生的详细信息。 5.3

23、.1学生添加功能的实现点击添加学生,填写学生基本信息,具体界面如图5-6所示。图5-6办理借书证界面5.3.2学生维护功能的实现点击学生维护功能,展示所有读者的信息列表,在每个读者信息行后提供删除和修改操作功能,并且可以单击选定某一个读者信息后的详细信息进行详细查看读者信息。具体读者列表界面如图5-7所示图5-7 读者列表界面(1)删除学生功能的实现管理员删除读者,删除时可删除一个,也可同时多选删除。(2)修改学生信息功能的实现在管理员修改学生信息时,跳转到学生信息详细表单中,列出所要修改学生的详细信息,并可以进行修改,则修改界面如图5-8所示。图5-8 修改读者信息界面(3)查看读者详细信息

24、功能的实现在管理员点击详细信息时,跳转到某读者信息详细表单中,列出所选读者的详细信息,则显示界面如图5-9所示。图5-9读者详细信息界面5.4借阅信息管理模块的实现借书信息管理模块主要分为办理图书借阅、办理图书归还、借阅信息查看,其中借阅信息查看可按图书编号和借书证编号查看。5.4.1办理图书借阅功能的实现点击图书借阅,填写图书编号和借书证编号,具体界面如图5-10所示。图5-10办理图书借阅界面5.4.2办理图书归还功能的实现点击图书归还,填写图书编号和借书证编号,具体界面如图5-11所示。图5-11 办理图书归还界面5.5图书检索模块的实现本模块主要是用户能够输入自己想要查询图书的条件来快

25、速的检索。图书检索页面如图5-12示。图5-12图书检索界面5.6系统设计的创新点5.5.1系统后台管理的安全性 为了不让一般读者用户通过输入网址直接进入后台管理系统,必须采取一定的安全判断措施来进行系统的保护。在这里是通过JSP技术的“session”功能来实现的。session可以在网页运行期间记录某个对象的值,例如session.setAttribute(”KEY”,“super”)这句话就是给 “KEY”这样一个对象赋予了“super”的值。管理员登录系统时,一旦登录成功,就可以为某个对象设置一个session值,然后再进入每个系统管理界面之前都进行一次此对象session值得判断,如

26、果此对象的session值并不是管理员在成功登陆系统后所设置的值,即可跳转到错误页面,反之则成功进入管理页面。由于session的对象是编写者随机设置的,session值也是随机设置的,而且必须在系统网页运行期间进行session的设置才起作用,所以用户是无法直接进入系统后台管理的。这样一来,系统后台管理的安全性就得以保障了。5.5.2DAO数据访问接口DAO是数据访问接口(Data Access Object)的缩写,把数据库的连接和操作封装在DAO内。其优点一是让业务代码无需依赖于任何特定的数据访问API;二是提高数据库操作代码的重用率;三是实现了持久层与业务逻辑的分离;四是简化了数据库程

27、序设计。因此,该文档与档案系统采用DAO模式实现与数据库的操作。在工程文件的目录如图5-14示:图5-14 工程目录其中dao包中有三个类文件,分别是对于不同模块所创建的借口,而在service包中有与dao包中名字对应的三个类文件,跟别实现了dao包中的所有将诶口。这样做就实现了数据与业务的分离。6系统测试6.1登录模块测试进入系统,输入用户名和密码,根据用户身份的不同,显示的操作菜单有所不同,一般读者只能查看图书信息和个人信息,并可以查询自己的借阅图书的历史记录;图书管理员可以对图书信息,读者信息以及借阅信息进行查看和管理。当输入错误的用户名称密码时显示登录错误并自动返回登录窗口。62 图

28、书管理测试图书管理员进入系统图书管理模块后,可对图书进行添加,修改,删除操作。(1)添加图书,填写图书基本信息,点击确定按钮,添加成功跳转到成功页面并提示添加成功,可继续添加,添加失败跳转到失败页面并提示添加失败,请重新添加。当填写的信息不完全时,点击确定按钮将根据没有填写的信息给出提示。(2)删除图书,单个删除时,点击删除则根据图书的ID删除此图书信息,成功则返回列表,不成功则提示未删除成功的原因,多选删除时也根据图书ID数组删除多个图书,并跳转到相应的提示页面。(3)修改图书信息,点击查看图书信息时,可对图书信息进行修改,修改成功或失败跳转到相应提示页面。6.3 学生管理测试图书管理员进入

29、系统借书证管理模块后,可对借助正进行添加,修改,注销等操作。(1)办理借书证,填写读者基本信息,点击确定按钮,添加成功跳转到成功页面并提示添加成功,可继续添加,添加失败跳转到失败页面并提示添加失败,请重新添加。当填写的信息不完全时,点击确定按钮将根据没有填写的信息给出提示。(2)注销借书证,单个删除时,点击删除则根据借书证编号注销此借书证,成功则返回列表,不成功则提示未删除成功的原因,多选删除时也根据借书证ID的数组删除多个借书证,并跳转到相应的提示页面。(3)修改读者信息,点击查看读者借书证信息时,对其进行修改并根据结果成功或失败跳转到相应提示页面。6.4 借阅信息管理测试图书管理员进入系统借阅信息管理模块后,可对借阅信息进行管理操作。(1)办理借阅,根据读者借书证编号和图书编号办理读者借阅此图书,若图书剩余数量为0,则提示不能借阅,图书数量不足,如此图书证已经借阅此图书,则提示不能借阅相同的图书,若借阅成功则转向成功界面。(2)图书归还,根据读者借书证编号和图书编号办理归还图书,借阅信息中必须有这条信息,否则不能归还,跳转提示页面。图书归还成功后不再有这条借阅信息,图书数量加1,并且计算好欠费情况。(3)查看借阅信息,能够根据图书编号或借书证编号查询借阅信息。(4)办理还款,根据读者借书证编号为读者办理还款业务,根据结果能够跳转到相应的提示页面。

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 应用文书 > 教育教学

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁