版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
图书馆管理系统设计与实现目录一、需求分析11.1需求概述11.2功能分析1开发平台2数据库需求分析2二、数据库逻辑设计32.1ER图32.2将E-R模型转换为关系模型42.2将关系模型转化为表结构4用户信息表4图书信息表5借阅登记表6三、数据库物理设计73.1索引73.2视图73.3平安机制8四、应用程序设计94.1管理员功能模块94.1.1系统管理模块94.1.2借阅管理模块。94.1.3图书管理模块104.2.读者模块104.2.1读者信息管理模块104.2.2图书检索模块104.3界面设计11五、测试和运行13六、总结14一、需求分析1.1需求概述图书馆在正常运营中面对大量书籍、读者信息以及两者间相互联系产生的借书信息、还书信息。现有的人工记录方法既效率低又错误过多,大大影响了图书馆的正常管理工作。因此需要对书籍资源、读者资源、借书信息、还书信息、挂失信息进行管理,及时了解各个环节中信息的变更,有利于管理效率的提高。一个图书馆有假设干个图书管理员,每个管理员用唯一的编号标识,并作为其身份验证的用户名,管理员的其他信息主要包括密码、姓名等。一个图书馆有假设干书籍由国标书号〔ISBN〕惟一标识。书籍需要记录的其他主要信息有书名、作者、出版社、出版年限、价格、图书类型、索书号、馆藏位置等。在从图书馆借阅图书之前,读者必须进行有效的注册,包括读者编号、类型、姓名、性别、登陆密码等。读者编号惟一标识读者身份。可以将读者参加黑名单,参加黑名单的读者不能再次借书。读者归还图书后需保存借阅历史记录,其中包括的信息有图书编号、读者编号、借阅日期、归还日期等。图书丧失须进行挂失登记,将原有借阅记录状态改为已挂失并且添加丧失日期等信息。1.2功能分析※用户信息管理〔用户信息包括管理员及读者信息〕 添加用户信息删除用户信息修改用户信息查询用户信息修改用户密码※图书信息管理 添加图书信息 删除图书信息 修改图书信息 查询图书信息※图书借阅管理 添加借阅信息 修改借阅信息 查询借阅信息 图书挂失登记开发语言:Java、Python系统环境:Windows7+Tomcat71.4数据库需求分析※用户信息:用户编号、账号、密码、姓名、性别、员工号/学号、年级、用户类型、用户状态※图书信息:图书编号、书名、副标题、原书名、封面、作者、译者、出版社、页数、价格、装帧、馆藏位置、出版日期、目录、作者简介、图书简介、入库日期、豆瓣评分、图书状态※借阅信息:操作员编号、读者编号、图书编号、借阅日期、借阅天数、归还日期、挂失日期、备注、借阅状态二、数据库逻辑设计2.1ER图图1图书馆管理系统ER模型图上图是图书馆管理系统的概念模型的ER图,涉及到的实体集有:管理员实体集:具有属性管理员编号、账号、密码、员工号、姓名、性别、状态。读者实体集:具有属性读者编号、账号、密码、学号、姓名、性别、状态。图书实体集:具有属性图书编号、名称、副标题、原名、作者、译者、ISBN、价格、页数、装帧、馆藏位置、出版社、出版日期、作者简介、目录、图书简介、封面、入库日期、状态。借阅记录实体集:具有属性借阅编号、操作者〔管理员〕、借阅者〔读者〕、所借图书、借阅日期、借阅天数、归还日期、丧失日期、备注、状态。一个读者可以借阅多本图书,一个操作员可以登记多个图书借阅记录,管理员、读者及图书是M:N:P多对多的关系。为简化数据库设计,不在重复设置丧失表,读者丧失图书时,借阅记录转化为丧失记录,借阅记录中状态设为2的为丧失记录。同理将管理员表和读者表合二为一,增加用户类型字段,用户类型为0表示读者信息,用户类型为1表示管理员信息。2.2将E-R模型转换为关系模型管理员实体集可以转换为关系管理员〔编号,账号,密码,员工号,姓名,性别,状态〕读者实体集可以转换为关系读者〔编号、账号、密码、学号、姓名、性别、状态〕图书实体集可以转换为关系图书〔编号、名称、副标题、原名、作者、译者、ISBN、价格、页数、装帧、馆藏位置、出版社、出版日期、作者简介、目录、图书简介、封面、入库日期、状态〕借阅实体集可以转换为关系借阅记录〔编号、操作者、借阅者、所借图书、借阅日期、借阅天数、归还日期、丧失日期、备注、状态〕2.2将关系模型转化为表结构2用户信息表表名:user功能描述:记录管理员、读者信息字段说明:字段名称类型PFM说明useridint(11)√√用户编号,自增usernamevarchar(30)√账号passwordvarchar(30)√密码realnamevarchar(30)√姓名sexvarchar(4)√性别employeeidvarchar(30)√员工号/学号maxnumint(11)√最大可借数目〔预留〕borrowednumint(11)√已借数目〔预留〕gradevarchar(50)年级usertypeint(11)√类型,0读者;1管理员statusint(11)√状态,0正常;1失效2信息表表名:book功能描述:记录图书信息字段说明:字段名称类型PFM说明bookidint(11)√√图书编号,自增booknamevarchar(255)√书名subheadingvarchar(512)副标题oldnamevarchar(512)原名thumbvarchar(255)封面bookconcernvarchar(255)出版社pagesvarchar(40)页数pricevarchar(40)价格boundvarchar(40)装帧authorvarchar(255)作者translatorvarchar(255)译者isbnvarchar(40)√ISBN号pubdatevarchar(20)√发布年份scoredecimal(4)评分catalogtext(0)目录authorintrotext(0)作者简介descriptiontext(0)简介locationvarchar(100)√馆藏位置adddatedate(0)√入库日期statusint(11)√状态:0正常可借1已借出2已挂失2表表名:borrow功能描述:记录图书借阅、图书归还、图书挂失等信息字段说明:字段名称类型PFM说明borrowidint(11)√√借阅流水号,自增borroweridint(11)√√借阅者编号〔外键user表〕bookidint(11)√√图书编号〔外键book表〕operatoridint(11)√√操作员编号〔外键user表〕borrowdatedate√借阅日期borrowdaysint(11)√借阅天数returndatedate归还日期losedatedate丧失日期remarktext备注statusint(11)√状态,0未归还1已归还2已挂失三、数据库物理设计3.1索引表建立索引的列原因useruserid主键,搜索条件 username搜索条件employeeid搜索条件bookbookid主键,搜索条件isbn搜索条件status搜索条件borrowborrowid主键,搜索条件operatorid外键,搜索条件borrowerid外键,搜索条件bookid外键,搜索条件status搜索条件3.2视图1)该系统需经常查询某个读者当前借阅书刊的详细信息,为简化多表查询,故建立视图view_borrow,该视图定义如下:CREATEviewview_borrowasselect`borrow`.`borrowid`AS`borrowid`,`borrow`.`borrowerid`AS`borrowerid`,`borrow`.`bookid`AS`bookid`,`borrow`.`operatorid`AS`operatorid`,`borrow`.`borrowdate`AS`borrowdate`,`borrow`.`borrowdays`AS`borrowdays`,`borrow`.`returndate`AS`returndate`,`borrow`.`remark`AS`remark`,`borrow`.`status`AS`status`,`book`.`bookname`AS`bookname`,`book`.`isbn`AS`isbn`,`borrower`.`realname`AS`borrowername`,`borrower`.`employeeid`AS`employeeid`,`operator`.`realname`AS`operatorname`from(((`borrow`join`book`)join`user``borrower`)join`user``operator`)where((`borrow`.`bookid`=`book`.`bookid`)and(`borrow`.`borrowerid`=`borrower`.`userid`)and(`borrow`.`operatorid`=`operator`.`userid`))3.3平安机制1)系统平安并没有给每个数据库用户分配一个认证标识,均使用超级用户root连接数据库,数据库用户所能做的操作在应用程序中加以控制,来保证系统平安。2)数据平安根本上没有用户对根本表和视图操作的权限控制,这些均在应用程序中加以控制,来保证数据平安。四、应用程序设计4.1管理员功能模块图2图书馆管理系统功能模块4.1.1系统管理模块用户查询,根据用户编号、账号、姓名、工号、学号、类型、状态检索用户详细信息;添加新用户时,系统自动生成用户编号,输入用户的其他相关信息,提交即可添加新用户。删除读者时,假设该读者存在借阅图书未还的情况,那么系统提示暂无法删除。4.1.2借阅管理模块。功能包括检索借书登记,还书登记和书刊挂失登记。1〕借书登记读者借阅图书时,管理员输入读者编号,可查询读者的详细信息;输入要借阅书刊的编号或者ISBN号,可核实该书的详细信息;点击提交借书请求。结束成功后,该读者当前借阅信息将添加新借阅书刊,令管理员方便的核实提交是否成功。以下几种情况任意一种情况发生,读者都暂时无法借书:①该读者当前借阅量已达最大借阅量;②该读者有借阅图书已超期未归还;③该读者被参加黑名单的。2〕还书登记读者归还书刊时,只需输入书刊号,可查询该书的借阅信息,点击还书提交还书请求填写相关的信息后提交,书刊成功归还,其他读者可以借阅。3〕书刊挂失借阅书刊遗失,读者可进行挂失。挂失操作时,只需输入读者编号,即可查询读者当前借阅书刊的详细信息,每条记录后附有挂失一栏,读者确认挂失某本书刊,管理员只需点击挂失一栏,填写相关信息后提交,挂失成功,借阅记录状态改为已挂失,图书状态改为已挂失,其他读者不可借阅此书。4.1.3图书管理模块功能包括检索图书详细信息,添加图书信息,修改图书信息,删除图书信息。图书检索,根据图书编号,ISBN,图书名称、图书作者、馆藏位置、发行日期进行模糊查询,输入检索条件后单击检索即可检索得到相应图书详细信息。该信息还包括图书馆藏位置、是否可借的情况。添加新书时,输入书刊的相关信息,为了减少图书编目输入的复杂度,系统提供根据ISBN号从互联网豆瓣读书获取图书信息功能,大大减少管理员输入图书详细信息时的效率。删除指定书刊时,输入书号可查询书刊详细信息,假设当前书刊有外借副本,那么系统提示暂无法删除;点击提交删除请求,那么删除该书刊的相关信息。4.功能模块4.2.1读者信息管理模块读者可查看个人信息,并修改个人密码。4.2.2图书检索模块读者可以根据图书编号,ISBN,图书名称、图书作者、馆藏位置、发行日期进行模糊查询,输入检索条件后单击检索即可检索得到相应图书详细信息。该信息还包括图书馆藏位置、是否可借的情况。读者检索到想要借阅的图书信息后记录图书编号、ISBN等信息,到图书馆前台提供以上信息进行图书借阅。4.3界面设计界面设计风格简单明了,朴实自然,便于操作。尽可能列表直接显示查询结果,防止数据的输入,方便用户使用。图3图书入库界面图4图书管理界面图5图书借阅管理界面图6图书借阅登记界面图7用户管理界面五、测试和运行分别用管理员用户root,密码admin和读者用户sunshine,密码123456登录图书馆管理信息系统。登录成功后,分别进入管理员业务界面和读者我的图书馆界面。通过python写的爬虫工具从豆瓣读书抓取了近5000条图书信息作为初始化测试数据。在图书检索界面通过输入ISBN等检索条件进行检索,系统响应时间在200ms,响应时间非常快。如下列图:通过root、sunshine账号对图书借阅、归还、挂失进行了测试,流程均可以跑通,对于黑名单用户、已挂失图书均做了相应的逻辑处理。六、总结在这次数据库系统原理大作业的事件过程中,确实有很多收获
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年广州市越秀区政务服务中心(窗口人员)招聘笔试模拟试题及答案详解
- 2026年内蒙古自治区赤峰市工会人员招聘考试模拟试题及答案详解
- 2026年晋中市榆次区工会人员招聘考试参考试题及答案详解
- 2026年南昌市青云谱区政务服务中心(窗口人员)招聘考试模拟试题及答案详解
- 2026年云南省昭通市工会人员招聘笔试模拟试题及答案详解
- 2025年上海市静安区医疗系统事业编人员招聘考试试题及答案详解
- 2026年丹东市振兴区工会人员招聘考试参考题库及答案详解
- 2026年阳泉市矿区政务服务中心(窗口人员)招聘笔试备考试题及答案详解
- 2025年湘潭市岳塘区政务服务中心(窗口人员)招聘考试试题及答案详解
- 2026年河南省洛阳市工会人员招聘考试参考题库及答案详解
- 山地智慧灌溉系统建设项目可行性研究报告(范文模板)
- GB/T 48012.1-2026光伏发电系统用功率转换设备安全性第1部分:通用要求
- 北京市门头沟区城子街道办事处招聘城市协管员3人考试参考题库及答案详解
- 2026年汛期防汛排涝安全培训试题(含答案)
- 2025年教育综合知识真题试题及答案
- 铅山县2026年回村任职大学生集中选聘【40人】笔试参考题库及答案详解
- 2026年教研员面试试题及答案(含解析)
- 旧管道拆除施工方案
- 危险废物管理培训
- 2026综合版《安全员手册》
- 2026年河北中考麒麟卷语文(一)及答案
评论
0/150
提交评论