基于SpringBoot的社区小型图书管理系统的设计与实现(一)

本文涉及的产品
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
云数据库 RDS MySQL,高可用系列 2核4GB
简介: 基于SpringBoot的社区小型图书管理系统的设计与实现

摘要

社区小型图书馆是一个社区信息资源的集中地,许多的图书馆才刚刚起步,还没有电脑来进行信息的处理。经研究发现,以往的资讯管理方法,大多是基于文字、表格等纸质媒体,而在借阅资料(例如借阅天数、超过借阅天数)等方面,通常会人工核对借阅借阅资料,借阅权限、借阅天数等人工计算、手抄。由于数据的海量和难以查找,因此数据的处理是一项艰巨的任务。从整体上看,缺乏一套系统化、标准化的信息系统。一些拥有计算机的社区图书馆尚未投入使用,其功能尚未得到很好的发挥。

本系统分为管理员模块和用户模块,实现用户登陆后查看图书、图书借阅等功能,管理员登录后可以管理登录的用户,上传图书信息,查看和管理图书借阅信息等。网站的设计是有标准的,可以实现完全的虚拟.真正实现提高处理业务效率。

根据上述问题,本系统按照软件过程的要求,运用了软件工程开发的基本原则,本文介绍了一个基于mysql数据库的图书管理系统的设计与实现。文章对该系统的系统框架和数据库结构进行了详细的分析,保证系统实现功能的高度人性化,并提出了进一步完善的建议。利用IDEA软件进行网页结构的设计,利用MYSQL数据库存储文档、影像和用户信息

关键词:图书管理;图书借阅;管理系统

第1章 绪 论

社区图书馆是一个拥有海量基于社区服务的书籍和借阅资料的场所,包含了很多资料及资料的加工。利用电脑进行图书管理,是电脑管理不可替代的优势,它可以方便读者借阅、归还和查询图书;方便了图书管理员的日常工作,方便了读者信息的查询、借阅、归还和查询;图书馆管理员可随时备份图书的出借,并可随时查阅馆藏资料,便于图书馆管理员对其进行归档、购买。这将极大地提高图书馆运营的效益。因此,要加强图书馆的管理,降低图书馆的工作负担,就必须要加强图书馆的管理。减少工作失误,充分利用图书馆的人力物力,实现图书管理工作规范化、系统化、程序化,减少图书管理工作的随意,加快了图书资料的处理和更新,提高了资料的处理效率和精确度。

1.1 研究背景

随着科技的不断发展,人类的生活也在不断地朝着信息化的方向发展[1]。在当今的信息化时代,我们的地位越来越高,在二十世纪七十年代后期,在中国,尤其是在九十年代后期,文章本文从我国图书馆的实际情况出发,阐述了图书馆管理的必要性和目标,并对该制度的技术可行性、经济可行性和可行性进行了探讨[2]。在需求分析方面,通过对客户的调研和分析,得出了系统的功能要求[3]。

1.2 研究现状

当今世界信息技术发展迅速[4]。在各个领域,都需要进行信息的加工,而这也是为什么电脑在信息化系统中得到了广泛的运用[5]。电脑最大的优势就是可以使用电脑来进行资讯的处理[6]。利用电脑实现对数据的实时监控,既可以提高工作的工作速度,又可以极大地改善系统的运行安全[7]。

特别是在复杂的数据处理中,电脑可以充分利用其优势。在实现信息化的过程中,利用电脑进行信息化的管理,实现信息化的先决条件[8]。该体系的目的是对图书馆的信息进行有效的处理。我国目前有很多空闲的情况。这就是管理信息系统的基本结构[9]。

为了解决这个问题,研制了这个社区小型图书管理系统,它可以对图书进行分类记录,借阅信息记录管理等功能,为图书馆管理带来极大地方便,以提升管理工作的工作质量和效率[10]。针对目前图书馆图书管理中存在的问题,提出了一种基于数据库管理的新思路,利用现代存储技术,对图书资源进行了最优的设计[11]。

1.3 国内外研究现状

在20世纪50年代,社区小型图书管理系统就开始被开发[12]。在过去的40年里,社区小型图书管理系统在社区图书馆的作用大幅增加,中国将社区小型图书管理系统应用于社区领域起步较晚,但随着时间的推移,中国也在这一领域取得了长足的进步[13]。

社区小型图书管理系统现在在世界各地越来越流行,应对图书馆信息管理时代的发展,这也受到了越来越多的重视,社区小型图书管理系统自然成为热点,由于国外许多先进国家在社区小型图书管理系统方面都起步较早,并已采用先进技术,故发展水平高于我国[14]。而我国近年也开始在社区图书馆中使用社区小型图书管理系统进行管理,社区小型图书管理系统支持图书馆不同层次的运营和管理相关的图书借阅活动,随着实际使用社区小型图书管理系统越来越受到图书馆管理者的重视,在中国的数字经济和图书发展中发挥着重要的作用[15]。

第2章 系统分析

2.1 可行性分析

2.1.1 技术可行性分析

技术上的可行性研究是对目前技术状况是否能够平稳地进行,软件硬件配置是否能够达到开发者要求,技术人才的人数、技术层次、资源等方面进行了研究。图书馆的工作是为读者与图书馆建立一条能够进行信息交流与处理的桥梁。利用互联网技术,充分利用了电脑的快速、精确等优点。随着计算机软体技术的迅速发展,为建立该体系奠定了良好的技术基础。

2.1.2 经济可行性分析

图书馆的经济构成比例很低,它的开支是:设备购置、软件开发、管理维护、人员工资和训练费用。因为各图书馆的运作都是一样的,系统是共用的,所以他们的器材、员工的薪水都是一样的。维护经费比较低,初期经费的重点是购买书籍。通过设立“信息服务中心”,实现对各种信息的统一调度,增强图书馆的规划、预测能力,及时提供市场信息。

2.1.3 社会可行性分析

社会可行性有时候也被称作运营可行性,它是为了证明一个新的制度在一个公司或者一个机构中发展和运作,并且它将同时对一个公司或一个机构产生的冲击,也就是它的内部和外部都可以被接纳和应用。利用计算机技术与软硬件技术的不断进步,使我国的图书馆员能够与之相适应。其对图书馆产生的作用是显而易见的:

对传统管理思想的影响,会导致企业内部的管理结构发生变化,人事结构发生变化。随着对工作人员素质的不断提升,在某种程度上,馆员必须不断地进行组织结构调整,不断地向员工提供新的知识,扩大图书馆在市场经济条件下的活动范围。图书馆和读者的商业模式发生了变化和扩展。

2.2 需求分析

随着电脑技术的迅速发展,电脑的使用已经深入到人们的日常生活中。这对我们的工作和生活来说,是一个很好的帮手。在社区,特别是在某些高端住宅区,书籍是社会的一种重要的文化资产,而图书馆的日常工作更是如此。而长期以来,我国的图书馆工作主要依靠人力进行。目前,许多社区都在利用电脑进行图书资料的处理,取得了较好的成效。近些年,人们对文化生活的重视程度与日俱增,因此,图书馆的工作变得更加繁忙,但是,由于各种因素,图书馆的管理者并未增多。因而,现有的人力资源管理工作已经无法满足当前工作的要求。与此同时,落后的人力资源管理对电脑的普及也是不利的。为了实现图书馆的科学化和规范化,需要借助电脑进行管理。

2.2.1 用户需求分析

本系统面对的用户主要为社区读书借书人员,根据如何将图书室管理变得快捷方便得出以下几个方面:

图书查询:查询图书编号,按图书编号、图书名称查询图书信息,作者名称、类别、库存数量、价格等。

借阅信息:可对书籍基本信息、借阅日期、到期日期、过期天数等进行检索。我的:更改帐号密码。

2.2.2 管理员需求分析

管理员可以通过云开发提供的后台进行管理,但为了操作方便,在前端页面也设置特定的管理员页面,只有管理员才能使其显示并进入,管理员需求如下。

图书信息的处理:根据图书编号、图书名称查询图书的基础信息,对图书进行添加、修改和删除。

图书分类:对图书分类信息进行检索,添加、修改和删除。

借书:把借书的资料显示出来。

归还书籍:将书籍的全部资料显示出来。

2.2.3 功能设定分析

本系统主要包含一下几个功能:用户信息管理功能、图书信息管理功能、管理员管理功能、图书查询系统功能。

用户信息管理:利用管理与保养的方式,实现对用户的管理与保养。管理员可以通过删除、修改、更新等基本功能来实现对用户信息的管理与保存。在此,由于包含了读者资料表格的管理与保养,所以要利用储存程序与触发机制来确保资料的连贯性。

图书信息的处理:新书的入库,旧书的报废,图书信息的更新。新书归档是对那些需要更多的书籍,在有了这些书籍的情况下,增加它们的库存,买了一本书,旧书废弃是由于人的原因(例如:借阅后丢失、损坏等)导致无法再借的,应当将其从藏书中移出。在新图书的存档和废弃的图书中,特别是在旧图书废弃后,图书总量为零的情况下,应该调整图书的总量。本书的相关资讯应该被自动移除。同时,我们也对书籍进行了归类,若由于某种书籍数量的下降而使此类书籍数量下降,那么此类书籍的总量是0。同时,系统应该会将这个书籍分类的资讯自动移除。

图书查询:通过图书作者,书名,ISBN,出版社,主题词,书号等,读者可以通过各种途径查询图书资源。

2.3 所用技术分析

2.3.1 Spring

Spring是一个非常有用的后端开源框架。主要优点是:

  1. 简化社区图书馆运维系统开发。通过控制容器,可以显著减少社区图书馆运维程序之间的耦合。
  2. 测试社区图书馆运维系统方便。在对社区图书馆运维系统进行测试时,我们可以独立于容器完成社区小型图书管理系统的测试任务。
    3.支持AOP编程。Spring将支持面向AOP的图书日志功能,它可以使社区小型图书管理系统的编程更加方便。
  3. 支持图书借阅的异步事务支持。Spring允许您以声明的方式管理和声明图书管理事务,这提高了开发效率。
  4. 它可以方便地集成各种优秀的框架。为社区小型图书管理系统的集成提供了直接支持。

2.3.2 JDBC

JDBC的全称是Java Database connect,它是一组用于执行SQL语句的Java API。应用程序可以通过此API连接到关系数据库,并使用SQL语句查询、更新和删除数据库中的数据。

2.3.3 SpringMVC

Spring MVC也是一个后端框架。为了能够有效解耦预约前端和后端挂号逻辑,使用了MVC开发模式的思想,这样能够让社区图书馆借阅系统的开发更加地方便。SpringMVC框架包含了DispatcherServlet,用于视图管理的主开关,具有强大的视图管理功能。借阅逻辑的每一个控制器接口,配置灵活,支持图书照片上传、图书借阅数据类型转换。

2.3.4 MySQL数据库

MySQL属于关系型数据库的重要一员,是一个简单易用的数据库,在国内中小型管理系统中有着广泛应用,具有存储空间小、读取速度快的优点,适合存储图书借阅的数据。

2.3.5 Tomcat

Tomcat 服务器是一个开源服务器,因为Tomact是Spring Boot框架中默认选择的服务器,所以社区图书馆借阅管理系统采用了Tomcat作为web服务器。

第3章 系统设计

3.1 系统设计

3.1.1系统功能结构设计

根据网站功能将网站划分为图书查阅借阅功能、用户账号管理功能、借阅图书管理功能、图书管理功能,如下图3.1功能分化图所示。

图3.1 架构图

进入网站主站后,所有用户都可以查看公开的图书信息,登录后判定后是否为管理员,不是则进入用户网站,是则判定管理员等级分配对应的管理权限。然后进入数据管理与回复页面对整个系统进行管理。

3.1.2系统功能模块设计

(1) 使用者登记登入模式:使用一般使用者的使用者名称及口令后,进行身份认证,若使用者名称及口令错误,无法登入。此外,还有相关的说明,使用者若无帐号,则在登陆网页上登记,一般使用者可以查询、修改、修改资料;一般使用者则可以查询书籍资料、归还书籍资料、归还书籍资料;在使用系统管理员的帐号和口令之后,进行身份确认,若使用者名称及口令有错误,就无法登陆。此外,还提供了相关的操作说明,管理员可以查询、修改和修改个人资料,同时还可以对图书馆的相关资料、使用者资料、借书等进行查询和管理。

(2) 图书资讯管理:利用管理人员对书籍数目、图书号、种类、名字等进行修改和删除管理,一般读者通过网络向读者借阅时,会降低总藏书总量。

(3) 管理员可以修改和删除读者的资料,并且可以增加新的使用者,通过这个功能,可以根据使用者的数量,改变每天的时间。系统能实时监测用户的出借时间,并在逾期不归还的情况下,将会有处罚的提示。

(4) 图书分拣管理:由管理员进行网上管理,添加、更改、删除等。

(5) 借阅资料模组:将目前已登入使用者的全部借出书籍、书籍的序号、书籍的名字、借出的时间等资料。归还时间、阅览帐号、阅览者姓名等资料。登陆的使用者可以完成还书的动作,并会有相关的指示,还书是否顺利。

3.1.3页面功能模块设计

本系统对网站进行划分,将主要功能分散到一下几个网站:主页面、登录注册页面、信息更改页面、图书查询、借阅信息。

主页面:主页面承担跟每个页面之间的跳转功能,负责每个页面之间的通讯,并用于显示可借阅的书籍。

登录注册页面:提供登录窗口。

信息更改界面:辅助用户对密码等进行修改。

图书查询:根据图书编号、类别、数量、图书名称查询、名称,可查询图书编号、图书资料、作者、价格等。

借阅资料:提供基本资料、借阅日期、到期日期、到期日期等资料。

页面关系如下图所示:

图 3.2页面关系图

3.2 系统数据库设计

3.2.1概念模型设计

按照系统的需要对数据库进行了设计,在设计过程中需要构建出良好的概念模型以及实体之间的关联关系。使其达到能够高效的存储并读取数据。数据库的设计有图书管理系统,含有用户信息表、图书信息表、借书信息表、预约借书信息表、书库类型信息表、借阅天数信息表等相关属性。

读者信息实体如图3.3所示。

图3.3读者信息实体图

图书类型实体图里有图书号、书名、类型、出版社等,如图3.4所示。

图3.4图书信息实体图

图书类型实体表里有图书分类和图书分类名称,如图3.5所示。

图3.5图书类型实体图

借阅信息表中有图书的借阅状态、图书号、书名、用户ID、还书日期等,如图3.6所示。

3.6借阅信息实体图

数据库中各个表的关系如图3.7所示。

3.2.2数据库结构设计

管理员信息表admin,用于记录管理员的账号信息,此表一共由三个键值组成,其中管理员ID作为此表的标识ID自增且非空,其中管理员账号和管理员密码用来记录管理员账户信息。数据表格式如下表3.1管理员信息表所示。

书籍信息表book_info用于记录图书馆的书籍信息,其中书籍id作为本表的标识id自增且非空,书名、作者、出版社、ISBN、介绍、语言、价格、类别编号、库存用来记录书籍的详细信息。数据表详细信息如下表3.2所示。

分类信息表class_info用于记录书籍的分类信息,其中类别编号作为本表的标识id,自增且非空,数据表详细格式如下表所示。

借出清单表lend_lis他,用于记录图书管理系统中借出的书籍的详细信息,其中借出ID作为此表的标识ID非空且自增,借出ID、读者编号、书籍编号、借出时间、归还时间、支付金额、现在状态、库存用于记录借出清单的详细信息。详细格式见表3.4所示。

操作记录表logs用于记录图书管理系统的具体操作信息,其中操作id作为本表的标识ID非空且自增,操作名、操作内容、操作时间作为本表的具体数据信息,记录详细的操作记录。数据表详细格式见下表3.5所示。

通知信息表notice用于记录图书管理系统的通知信息,数据表详细格式如下表3.6通知信息表notice所示。

读者信息表reader_info用于记录图书管理系统的读者信息,其中标号作为本表的标识id非空且自增,读者ID、用户名、密码、性别、生日、联系地址、联系电话、账号状态用于存储读者的详细信息。数据表详细信息如表3.7所示。

角色信息表role用于记录图书管理系统的角色信息,数据表详细信息如表3.8角色信息表role所示。


相关实践学习
如何在云端创建MySQL数据库
开始实验后,系统会自动创建一台自建MySQL的 源数据库 ECS 实例和一台 目标数据库 RDS。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助     相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
相关文章
|
1月前
|
Java API 数据库
如何使用Spring Boot构建RESTful API,以在线图书管理系统为例
【10月更文挑战第9天】本文介绍了如何使用Spring Boot构建RESTful API,以在线图书管理系统为例,从项目搭建、实体类定义、数据访问层创建、业务逻辑处理到RESTful API的实现,详细展示了每个步骤。通过Spring Boot的简洁配置和强大功能,开发者可以高效地开发出功能完备、易于维护的Web应用。
56 3
|
1月前
|
Java Maven Spring
springboot学习一:idea社区版本创建springboot项目的三种方式(第三种为主)
这篇文章介绍了在IntelliJ IDEA社区版中创建Spring Boot项目的三种方法,特别强调了第三种方法的详细步骤。
239 0
springboot学习一:idea社区版本创建springboot项目的三种方式(第三种为主)
|
3月前
|
SQL 安全 前端开发
毕设答辩问题讲解说明:基于SpringBoot+Vue的汉服文化交流社区平台设计与开发
这篇文章是关于一个基于SpringBoot+Vue的汉服文化交流社区平台的毕业设计答辩问题讲解,涵盖了系统功能、亮点创新、数据库设计、积分领取机制、数据库安全和个人密码修改功能等方面的答辩问题和回答要点。
|
3月前
|
安全 Java 数据安全/隐私保护
基于SpringBoot+Spring Security+Jpa的校园图书管理系统
本文介绍了一个基于SpringBoot、Spring Security和JPA开发的校园图书管理系统,包括系统的核心控制器`LoginController`的代码实现,该控制器处理用户登录、注销、密码更新、角色管理等功能,并提供了系统初始化测试数据的方法。
57 0
基于SpringBoot+Spring Security+Jpa的校园图书管理系统
|
4月前
|
JavaScript Java 测试技术
基于SpringBoot+Vue+uniapp的“亿点爱”社区捐赠物品管理系统的详细设计和实现(源码+lw+部署文档+讲解等)
基于SpringBoot+Vue+uniapp的“亿点爱”社区捐赠物品管理系统的详细设计和实现(源码+lw+部署文档+讲解等)
|
4月前
|
JavaScript Java 测试技术
基于SpringBoot+Vue+uniapp的社区垃圾分类管理平台的详细设计和实现(源码+lw+部署文档+讲解等)
基于SpringBoot+Vue+uniapp的社区垃圾分类管理平台的详细设计和实现(源码+lw+部署文档+讲解等)
|
4月前
|
JavaScript Java 测试技术
基于springboot+vue.js+uniapp的社区流浪动物救助领养系统附带文章源码部署视频讲解等
基于springboot+vue.js+uniapp的社区流浪动物救助领养系统附带文章源码部署视频讲解等
28 1
|
4月前
|
JavaScript Java 测试技术
基于springboot+vue.js+uniapp的社区疫情防控管理系统附带文章源码部署视频讲解等
基于springboot+vue.js+uniapp的社区疫情防控管理系统附带文章源码部署视频讲解等
24 0
基于springboot+vue.js+uniapp的社区疫情防控管理系统附带文章源码部署视频讲解等
|
4月前
|
JavaScript Java 测试技术
基于springboot+vue.js+uniapp的在线图书借阅管理系统附带文章源码部署视频讲解等
基于springboot+vue.js+uniapp的在线图书借阅管理系统附带文章源码部署视频讲解等
28 0
|
4月前
|
JavaScript Java 测试技术
基于springboot+vue.js+的“亿点爱”社区捐赠物品管理系统附带文章源码部署视频讲解等
基于springboot+vue.js+的“亿点爱”社区捐赠物品管理系统附带文章源码部署视频讲解等
32 0