




已阅读5页,还剩11页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
图书馆管理系统设计与实现目 录一、需求分析11.1 需求概述11.2 功能分析11.3开发平台21.4数据库需求分析2二、数据库逻辑设计32.1 ER图32.2 将E-R模型转换为关系模型42.2 将关系模型转化为表结构42.2.1用户信息表42.2.1图书信息表52.2.1借阅登记表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 功能分析 用户信息管理(用户信息包括管理员及读者信息)添加用户信息删除用户信息修改用户信息查询用户信息修改用户密码 图书信息管理添加图书信息删除图书信息修改图书信息查询图书信息 图书借阅管理添加借阅信息修改借阅信息查询借阅信息图书挂失登记1.3开发平台开发工具:eclipse + JDK1.6 + Struts2.3 + Spring3.2 + MyBatis3.2开发语言:Java、Python数 据 库:MySQL 5.0系统环境:Windows 7 + Tomcat 71.4数据库需求分析 用户信息:用户编号、账号、密码、姓名、性别、员工号/学号、年级、用户类型、用户状态 图书信息:图书编号、书名、副标题、原书名、封面、作者、译者、出版社、页数、价格、装帧、馆藏位置、出版日期、目录、作者简介、图书简介、入库日期、豆瓣评分、图书状态 借阅信息:操作员编号、读者编号、图书编号、借阅日期、借阅天数、归还日期、挂失日期、备注、借阅状态二、数据库逻辑设计2.1 ER图图1 图书馆管理系统ER模型图上图是图书馆管理系统的概念模型的ER图,涉及到的实体集有:管理员实体集:具有属性管理员编号、账号、密码、员工号、姓名、性别、状态。读者实体集:具有属性读者编号、账号、密码、学号、姓名、性别、状态。图书实体集:具有属性图书编号、名称、副标题、原名、作者、译者、ISBN、价格、页数、装帧、馆藏位置、出版社、出版日期、作者简介、目录、图书简介、封面、入库日期、状态。借阅记录实体集:具有属性借阅编号、操作者(管理员)、借阅者(读者)、所借图书、借阅日期、借阅天数、归还日期、丢失日期、备注、状态。一个读者可以借阅多本图书,一个操作员可以登记多个图书借阅记录,管理员、读者及图书是M:N:P多对多的关系。为简化数据库设计,不在重复设置丢失表,读者丢失图书时,借阅记录转化为丢失记录,借阅记录中状态设为2的为丢失记录。同理将管理员表和读者表合二为一,增加用户类型字段,用户类型为0表示读者信息,用户类型为1表示管理员信息。2.2 将E-R模型转换为关系模型(1) 管理员实体集可以转换为关系管理员(编号,账号,密码,员工号,姓名,性别,状态)(2) 读者实体集可以转换为关系读者(编号、账号、密码、学号、姓名、性别、状态)(3) 图书实体集可以转换为关系图书(编号、名称、副标题、原名、作者、译者、ISBN、价格、页数、装帧、馆藏位置、出版社、出版日期、作者简介、目录、图书简介、封面、入库日期、状态)(4) 借阅实体集可以转换为关系借阅记录(编号、操作者、借阅者、所借图书、借阅日期、借阅天数、归还日期、丢失日期、备注、状态)2.2 将关系模型转化为表结构2.2.1用户信息表n 表 名:usern 功能描述:记录管理员、读者信息n 字段说明:字段名称类型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.2.1图书信息表n 表 名:bookn 功能描述:记录图书信息n 字段说明:字段名称类型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.2.1借阅登记表n 表 名:borrown 功能描述:记录图书借阅、图书归还、图书挂失等信息n 字段说明:字段名称类型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,该视图定义如下:CREATE view view_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.2.读者功能模块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. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025版城市排水降水井施工服务合同
- 二零二五年度股权激励撤资退股合同范本
- 二零二五年度国有企业员工劳务派遣合作协议
- 二零二五年度二手房买卖合同房屋质量及验收标准
- 2025版酒吧DJ岗位聘用及权益保障合同
- 2025版学生军训教官心理健康辅导服务合同
- 二零二五年度快递物流紧急救援服务合同
- 2025版信息技术服务外包合同规范
- 二零二五年度股权激励与分红权转让组合合同范本
- 2025年度建筑行业临时工聘用合同
- 通力电梯员工管理手册
- 2024考研数学二真题
- 消防维保企业可行性方案
- 云原生测试实战
- 新教师入职培训新学期新教师入职培训课件
- 2023抗结核药物超说明书用法专家共识更新版
- GB/T 37400.18-2023重型机械通用技术条件第18部分:开式齿轮传动系统
- 抚触疗法浅析
- 幼儿园大班艺术活动打击乐 爱乐厨房教学设计【含教学反思】
- 2022年江苏省镇江市辅警协警笔试笔试测试卷(含答案)
- 施工现场管理人员安全培训记录
评论
0/150
提交评论