图书馆管理信息系统(基于JAVA和MySQL)
基于Java Web的图书管理系统的设计与实现

基于Java Web的图书管理系统的设计与实现随着信息技术的迅猛发展,图书管理系统在图书馆、图书商店等场所的应用越来越广泛。
基于Java Web的图书管理系统具有跨平台、易于维护和扩展等优势,已成为目前图书管理系统开发的主要技术选择。
本文将详细介绍基于Java Web的图书管理系统的设计与实现。
一、系统需求分析在进行图书管理系统的设计与实现之前,首先需要进行系统需求分析。
根据实际应用场景,我们将图书管理系统的主要功能模块分为以下几个方面:1. 图书管理:包括图书的录入、查询、修改和删除等功能。
管理员可以通过系统录入图书信息,并对图书信息进行增删改查操作,同时可以根据图书的分类、作者、出版社等条件进行高级查询。
2. 借阅管理:包括借书和还书的功能。
用户可以通过系统进行图书借阅,并在图书归还时办理还书手续。
在借阅过程中,系统需要实现图书的可借数量管理、借阅记录的生成以及逾期处理等功能。
3. 用户管理:包括用户的注册、登录和个人信息管理等功能。
用户可以通过系统注册账号,并使用账号进行登录和个人信息的管理,如修改密码、查看借阅记录等。
4. 权限管理:包括管理员和普通用户两种角色的权限管理。
管理员具有对系统的所有功能模块进行管理的权限,而普通用户只能进行图书查询和借阅等操作。
二、系统设计与实现经过系统需求分析,接下来将开始进行系统设计与实现。
1. 技术选型基于Java Web的图书管理系统,我们选择使用以下技术进行设计与实现:- 后端开发框架:Spring MVC- 前端UI框架:Bootstrap- 数据库:MySQL- 数据库访问框架:MyBatis- 前端页面交互:JavaScript、jQuery2. 数据库设计在实现图书管理系统之前,我们需要设计数据库表来存储图书信息、用户信息、借阅记录等数据。
下面是数据库表的设计:- 图书表(book):包含图书的编号、名称、作者、出版社、分类等字段。
- 用户表(user):包含用户的编号、账号、密码等字段。
基于Java和MySQL的图书馆信息化管理系统设计

全新的图书馆业务管理手段和便捷的读者服务,其对于提高图书馆信息化管理水平起到了良好的
促进作用。
关键词:图书馆;信息化;系统建设;网络信息化
中图分类号:TP311
文献标识码:A
文章编号:1674-6236(2019)02-0020-05
Design of library information management system based on Java and MySQL
实现了利用计算机进行管理,但传统的图书馆管理
算 机 能 对 信 息 进 行 快 速 的 整 合 与 分 析 ,并 进 行 处
模式只是读者跟系统单一的对接,不仅大幅降低了
理。这一特点是其在信息管理系统的最大亮点,也
人们借书的便捷性与积极性,还造成了人力、物力的
。利用计算
浪费 [3-4],该种落后且繁琐的管理模式必将被计算机
机用户界面、方便的网络管理系统、人性化的检索方
式、纸质资源和电子资源的同步管理、信息资料的扩
展性需求和安全性的需求等 [5-6]。
此外,还需要考虑到图书馆信息化管理的特殊
性。图书馆信息管理系统主要涉及三类人员,
分别为:
读者、
工作人员和管理人员。其中,
面向读者的主要功
能是图书的借阅和信息查询,
以及个人信息的修改[7-8];
resources is realized through computer technology. At the same time,it provides a new library business
management means and convenient reader service,which has played a good role in promoting the level of
基于Java的学校图书馆管理系统的设计与实现

基于Java的学校图书馆管理系统的设计与实现一、引言随着信息技术的不断发展,学校图书馆管理系统在教育领域中扮演着越来越重要的角色。
为了更好地管理图书馆资源、提升服务效率,设计一个高效、稳定的学校图书馆管理系统至关重要。
本文将介绍基于Java语言开发的学校图书馆管理系统的设计与实现过程。
二、系统需求分析在设计学校图书馆管理系统之前,首先需要进行系统需求分析。
主要包括以下几个方面: 1. 用户需求分析:系统主要面向图书管理员和读者两类用户,管理员需要对图书进行管理、借还书籍等操作,读者需要查询图书信息、借阅归还图书等。
2. 功能需求分析:系统需要实现图书信息管理、借阅管理、读者管理、权限管理等功能。
3. 性能需求分析:系统需要具备良好的性能,能够支持大量并发操作,响应速度快。
4. 可靠性需求分析:系统需要保证数据的安全性和完整性,具备数据备份和恢复机制。
三、系统设计1. 模块设计基于Java语言的学校图书馆管理系统主要包括以下几个模块:- 用户管理模块:包括管理员和读者两类用户,实现用户信息的增删改查功能。
- 图书管理模块:实现对图书信息的管理,包括新增图书、删除图书、修改图书信息等功能。
- 借阅管理模块:实现读者对图书的借阅和归还功能,包括借阅记录查询、逾期处理等功能。
- 权限管理模块:对管理员和读者的权限进行管理,保证系统安全性。
2. 数据库设计为了存储系统中的数据,需要设计相应的数据库结构。
可以设计如下几张表: - 用户表(User):存储用户信息,包括用户ID、用户名、密码等字段。
- 图书表(Book):存储图书信息,包括图书ID、书名、作者、出版社等字段。
- 借阅记录表(BorrowRecord):存储借阅记录信息,包括借阅ID、用户ID、图书ID、借阅时间、归还时间等字段。
3. 界面设计为了提升用户体验,系统界面设计需要简洁明了。
可以采用Java Swing或JavaFX等技术实现系统界面,包括登录界面、主界面、用户管理界面、图书管理界面等。
基于Javaweb的图书借阅管理系统设计与实现

基于Javaweb的图书借阅管理系统设计与实现1. 引言图书借阅管理系统是一种在图书馆或类似组织中用于管理图书借阅的软件系统。
该系统能够帮助图书管理员实现图书的借阅、归还、预约等功能,同时也可以方便借阅者查询图书信息、预约和续借图书等操作。
本文将介绍一种基于Javaweb的图书借阅管理系统的设计与实现。
该系统使用Java语言作为开发语言,采用MVC架构模式进行设计,使用MySQL数据库进行数据存储。
2. 系统需求分析在设计与实现图书借阅管理系统之前,我们首先需要进行系统需求分析。
根据图书馆的实际情况,我们确定以下几个需求:•图书管理员功能:–登录系统:图书管理员需要使用用户名和密码进行登录。
–图书管理:图书管理员可以对图书进行增加、删除、修改和查询等操作。
–借阅管理:图书管理员可以对借阅记录进行处理,包括借书、还书和续借等操作。
–用户管理:图书管理员可以管理读者信息,包括新增、删除和修改等操作。
•读者功能:–注册与登录:读者需要通过注册并登录系统才能进行相关操作。
–图书查询:读者可以查询图书的详细信息。
–图书借阅:读者可以借阅图书,并查看自己的借阅记录。
–图书归还:读者可以归还已借阅的图书,并续借图书。
•系统管理功能:–数据备份与恢复:系统管理员可以对数据库进行备份,并在需要时进行数据恢复操作。
–系统日志管理:系统管理员可以查看系统的操作日志。
–权限管理:系统管理员可以对图书管理员和读者的权限进行管理。
3. 系统设计与实现3.1 系统架构设计本系统采用MVC(Model-View-Controller)架构模式,将系统分为模型层、视图层和控制层。
•模型层:负责处理数据和数据逻辑,包括数据库的操作、数据验证和处理等。
•视图层:负责展示用户界面,以及与用户进行交互。
•控制层:负责接收用户请求,处理用户请求并更新模型和视图。
3.2 数据库设计系统使用MySQL作为数据库进行数据存储,设计以下几个关键表:•图书表:包含图书的基本信息,如图书编号、名称、作者、出版社等。
图书馆管理信息系统(基于JAVA和MySQL)

图书馆管理系统设计与实现目录一、需求分析 (1)1.1 需求概述 (1)1.2 功能分析 (1)1.3开发平台 (2)1.4数据库需求分析 (3)二、数据库逻辑设计 (4)2.1 ER图 (4)2.2 将E-R模型转换为关系模型 (5)2.2 将关系模型转化为表结构 (6)2.2.1用户信息表 (6)2.2.1图书信息表 (6)2.2.1借阅登记表 (8)三、数据库物理设计 (9)3.1 索引 (9)3.2 视图 (9)3.3 安全机制 (10)四、应用程序设计 (11)4.1 管理员功能模块 (11)4.1.1 系统管理模块 (11)4.1.2 借阅管理模块。
(11)4.1.3 图书管理模块 (12)4.2.读者模块 (13)4.2.1 读者信息管理模块 (13)4.2.2 图书检索模块 (13)4.3 界面设计 (13)五、测试和运行 (16)六、总结 (17)一、需求分析1.1 需求概述图书馆在正常运营中面对大量书籍、读者信息以及两者间相互联系产生的借书信息、还书信息。
现有的人工记录方法既效率低又错误过多,大大影响了图书馆的正常管理工作。
因此需要对书籍资源、读者资源、借书信息、还书信息、挂失信息进行管理,及时了解各个环节中信息的变更,有利于管理效率的提高。
一个图书馆有若干个图书管理员,每个管理员用唯一的编号标识,并作为其身份验证的用户名,管理员的其他信息主要包括密码、姓名等。
一个图书馆有若干书籍由国标书号(ISBN)惟一标识。
书籍需要记录的其他主要信息有书名、作者、出版社、出版年限、价格、图书类型、索书号、馆藏位置等。
在从图书馆借阅图书之前,读者必须进行有效的注册,包括读者编号、类型、姓名、性别、登陆密码等。
读者编号惟一标识读者身份。
可以将读者加入黑名单,加入黑名单的读者不能再次借书。
读者归还图书后需保留借阅历史记录,其中包括的信息有图书编号、读者编号、借阅日期、归还日期等。
图书丢失须进行挂失登记,将原有借阅记录状态改为已挂失并且添加丢失日期等信息。
基于JAVA的校图书馆管理系统的设计与实现

基于JAVA的校图书馆管理系统的设计与实现一、概述随着信息技术的飞速发展,数字化校园建设已成为教育信息化的重要组成部分。
图书馆作为高校的核心学术资源中心,其管理系统的现代化、信息化对于提高图书馆服务质量、提升读者体验具有重要意义。
本文旨在设计并实现一个基于JAVA的校图书馆管理系统,以解决传统图书馆管理中存在的效率低下、信息孤岛等问题。
本系统将采用面向对象的设计思想,利用JAVA语言强大的跨平台性和安全性,结合MySQL数据库管理系统,实现图书馆资源的数字化管理。
系统的主要功能包括图书信息管理、读者信息管理、借阅管理、查询统计等。
在设计过程中,将充分考虑系统的可扩展性、易用性和稳定性,确保系统能够适应不同规模图书馆的需求,同时为用户提供友好的操作界面。
本文的结构安排如下:对系统的需求进行分析,明确系统需要实现的功能和性能要求详细介绍系统的总体设计,包括系统架构、模块划分和数据流程对系统关键部分进行详细设计,阐述其实现原理和关键技术通过系统测试验证系统的功能性和性能,并分析系统的优缺点及改进方向。
通过本文的研究与实现,旨在为高校图书馆的信息化管理提供一种有效的解决方案,同时也为类似信息系统的开发提供一定的参考价值。
1.1 研究背景随着信息技术的迅速发展和普及,各行各业都在积极寻求数字化转型的路径。
教育行业作为培养未来人才的重要领域,其信息化建设更是不可或缺。
校图书馆作为学校教育资源的重要组成部分,其管理效率和服务质量直接影响到师生的学习和研究体验。
传统的图书馆管理方式,如手工记录、纸质卡片索引等,已无法满足现代图书馆的高效、便捷、智能化的管理需求。
开发一套基于信息技术的图书馆管理系统显得尤为重要。
JAVA作为一种成熟、稳定、跨平台的编程语言,在软件开发领域具有广泛的应用。
其面向对象、安全性高、可移植性强等特点,使得JAVA成为开发大型、复杂管理系统的理想选择。
基于JAVA的校图书馆管理系统,能够充分利用JAVA的技术优势,实现图书馆资源的数字化管理、自动化服务、智能化分析等功能,从而提升图书馆的管理效率和服务质量,为广大师生提供更加便捷、高效的学习和研究环境。
图书馆管理系统(JavaWeb)

图书馆管理系统(JavaWeb)图书馆管理系统(Java Web)概述基于Spring + Spring MVC + MyBatis的图书馆管理系统,使⽤Maven进⾏包管理。
主要功能包括:图书查询、图书管理、图书编辑、读者管理、图书的借阅与归还以及借还⽇志记录等。
项⽬演⽰<——点击跳转<——点击跳转<——点击跳转<——点击跳转环境配置需要提前配置好Maven环境,数据库为MySql,在src/main/resources/db.properties中修改MySql⽤户名和密码。
数据库脚本在library.sql中,可⾃动建库。
使⽤mvn jetty:run可快速搭建。
特别注意:如果要搭⼊服务器中使⽤,⽤tomcat跑需要将项⽬打包⼊tomcat中的root⽂件夹使⽤,因为项⽬设计时,⽤的jetty,所有jsp⽂件路径写的都是相对路径。
概念设计⽤户分为两类:读者、图书馆管理员。
图书馆管理员可以修改读者信息,修改书⽬信息,查看所有借还⽇志等;读者仅可以修改个⼈信息、借阅或归还书籍和查看⾃⼰的借还⽇志。
数据库E-R图逻辑设计共有6个表:1. 图书书⽬表book_info名类型长度⼩数点NULL⽤途键book_id bigint200否图书号✔name varchar200否书名author varchar150否作者publish varchar200否出版社ISBN varchar150否标准书号introduction text00是简介language varchar40否语⾔price decimal102否价格pub_date date00否出版时间class_id int110是分类号number int110是剩余数量2. 数据库管理员表admin名类型长度⼩数点NULL⽤途键admin_id bigint200否账号✔password varchar150否密码username varchar150是⽤户名3. 图书分类表class_info名类型长度⼩数点NULL⽤途键class_id int110否类别号✔class_name varchar150否类别名4. 借阅信息表lend_list名类型长度⼩数点NULL⽤途键ser_num bigint200否流⽔号✔book_id bigint200否图书号reader_id bigint200否读者证号lend_date date00是借出⽇期back_date date00是归还⽇期5. 借阅卡信息表reader_card名类型长度⼩数点NULL⽤途键reader_id bigint200否读者证号✔password varchar150否密码username varchar150是⽤户名6. 读者信息表reader_info名类型长度⼩数点NULL⽤途键reader_id bigint200否读者证号✔name varchar100否姓名sex varchar20否性别birth date00否⽣⽇address varchar500否地址phone varchar150否电话功能展⽰1. ⾸页登陆管理者账号:123456/123456(见数据库admin表)读者账号:10000/123456()见数据库reader_card表2. 管理员系统⽤登陆进⼊2.1 图书管理2.2 图书详情2.3 读者管理2.4 借还管理3. 读者系统3.1 查看全部图书3.2 个⼈信息查看,可以修个个⼈信息3.3 个⼈借阅情况查看。
Java与MySQL环境下图书馆信息化管理系统设计与实现

Java与MySQL环境下图书馆信息化管理系统设计与实现作者:彭程高晶来源:《电脑知识与技术》2019年第08期摘要:该文深入分析了如何建设图书馆信息化管理,并且提出三个模块用来建设图书馆信息化管理系统,第一个模块为文献编目;第二个模块为文献典藏;第三个模块为文献流通管理。
文章首先对图书馆信息化管理系统的数据存储以及数据初始化过程、用户如何认证以及用户访问控制的流程做了详细的介绍,其次对如何采用MySQL数据库和Java语言建立信息化管理系统也做了相应的分析。
文中图书馆信息化管理建设是通过网络技术完成的,这不仅实现了图书馆信息化管理水平的有效提高,同时还改变了图书馆管理的手段,也为广大读者提供了便捷的读书服务。
关键词:图书馆;信息化;系统建设;网络信息化中图分类号:TP311 文献标识码:A文章编号:1009-3044(2019)08-0059-02随着我国网络信息的迅速崛起,电子信息技术既能够对庞大的信息进行快速的处理与分析。
而且计算机还具有以下特点致使在各行各业中备受青睐,第一,大大减少了工作人员的工作量;第二,相比传统的管理方法工作效率也得到了有效的提升;第三,最大程度地保护客户的信息和隐私不被泄露。
据相关人员调查显示,目前有许多大型的图书馆都已经在使用计算机进行信息化管理,但是毕竟占少数,还是传统的管理方法居多,这种管理方式存在许多弊端,如;系统与读者的对接很单一;读者借阅书籍效率较低,长时间会降低读者的积极性;浪费大量的人力和物力以及财力;因此图书馆信息化管理取代传统的图书馆管理技术是大势所趋。
所以,当务之急就是研究、开发一种简化的图书借阅过程,在实现便捷有效管理图书借阅系统的基础上,让读者体会方便又快捷的读书借阅服务。
1 图书管理系统的总体设计1.1 分析图书馆信息化管理的需求作为信息管理其中一部分的图书馆信息管理系统具有以下几个特征,一是人机用户界面和谐友好;二是信息管理系统方便又快捷;三是文献的检索方式非常人性化;四是电子版和纸质版的资源实现同步管理等。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
图书馆管理系统设计与实现目录一、需求分析 (1)1.1 需求概述 (1)1.2 功能分析 (1)1.3开发平台 (2)1.4数据库需求分析 (2)二、数据库逻辑设计 (3)2.1 ER图 (3)2.2 将E-R模型转换为关系模型 (4)2.2 将关系模型转化为表结构 (4)2.2.1用户信息表 (4)2.2.1图书信息表 (5)2.2.1借阅登记表 (6)三、数据库物理设计 (7)3.1 索引 (7)3.2 视图 (7)3.3 安全机制 (8)四、应用程序设计 (9)4.1 管理员功能模块 (9)4.1.1 系统管理模块 (9)4.1.2 借阅管理模块。
(9)4.1.3 图书管理模块 (10)4.2.读者模块 (10)4.2.1 读者信息管理模块 (10)4.2.2 图书检索模块 (10)4.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用户信息表⏹表名:user⏹功能描述:记录管理员、读者信息⏹字段说明:2.2.1图书信息表⏹表名:book⏹功能描述:记录图书信息⏹字段说明:2.2.1借阅登记表⏹表名:borrow⏹功能描述:记录图书借阅、图书归还、图书挂失等信息⏹字段说明:三、数据库物理设计3.1 索引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账号对图书借阅、归还、挂失进行了测试,流程均可以跑通,对于黑名单用户、已挂失图书均做了相应的逻辑处理。