图书馆管理系统功能实现第一阶段叶语婷

在前面知识的铺垫下,我尝试着自己独立实现一个系统,想了很久决定做一个图书馆管理系统,用来练练手。我们要来了解一下图书管理系统都要做啥,都需要什么表,都需要实现哪些功能。

首先,我们知道,图书管理系统中肯定要有借书、还书,这是两个最核心的功能,然后还要有用户注册登陆,管理员管理书籍,定期上架图书或者下架图书等等,综合来看,我们将图书管理系统功能规划如下:

查看图书列表、借阅图书、归还书籍、用户注册、用户登陆这几个是普通用户应该具备的功能

查看图书借阅记录、用户登陆这是普通管理员应该有的权限

用户登陆、新增图书进入图书列表、下架图书这是超级管理员应该有的权限

因此,由此可知,数据库的设计需要涉及到如下数据表:

1.用户个人信息表用户名用户学生号用户登陆密码

3.图书信息表图书名图书编号图书出版社书籍类型

4.用户角色表角色id角色名(中文翻译)角色名(英文)这里分中英文是因为英文角色名在角色控制权限中要用到中文的角色名为了便于用户识别角色

5.用户角色关联表用户学生号角色id

6.资源表资源id资源名字资源url这里是将所有所有接口都进行了封装进入数据库便于为用户分配对应权限进行访问

7.角色资源关联表角色id资源id

总的来说,数据表大致就是这七张了,我们接下来就开始进行项目的准备工作了。

一、准备工作

1.数据库设计,我们第一阶段先实现前三张表,先把图书馆管理系统功能都给实现,角色权限都先给到普通用户,等到第二阶段的时候再将端口分配出去给到普通管理员和超级管理员。

(1)用户信息表

createtablelibrary.sys_user(`id`intNOTNULLAUTO_INCREMENT,`user_name`varchar(50)defaultnull,`user_id`varchar(50)defaultnull,`user_password`varchar(50)defaultnull);(2)书籍信息表

createtablelibrary.sys_book(`id`intNOTNULLAUTO_INCREMENT,`book_name`varchar(50)defaultnull,`book_code`varchar(50)defaultnull,`book_publisher`varchar(50)defaultnull,`book_type`varchar(50)defaultnull);(3)借阅记录表

createtablelibrary.borrowing_records(`id`intNOTNULLAUTO_INCREMENT,`user_id`varchar(50)defaultnull,`book_code`varchar(50)defaultnull,`operate_time`TIMESTAMPDEFAULTnow(),`borrowing_status`varchar(10)defaultnull);对数据表进行插入操作:

insertintolibrary.sys_book(id,book_name,book_code,book_publisher,book_type)values(1,"Java","111111","北京出版社","计算机")insertintolibrary.sys_book(id,book_name,book_code,book_publisher,book_type)values(2,"web","111112","天津出版社","计算机")insertintolibrary.sys_book(id,book_name,book_code,book_publisher,book_type)values(3,"安徒生童话","111113","内蒙古出版社","文学")2.redis环境搭建

4.接下来就是springboot项目搭建了

首先新建一个maven项目,然后对项目目录进行分类,便于后面不同代码放入不同目录

(1)application.properties文件对mybatis配置redis配置数据库配置

#MySql配置spring.datasource.url=jdbc:mysql://47.100.59.91:3306/libraryspring.datasource.username=rootspring.datasource.password=Aa12345&_#Mybatis配置mybatis.mapper-locations=classpath:mapper/*.xmlmybatis.type-aliases-package=library.system.dtomybatis.configuration.map-underscore-to-camel-case=true#redis配置spring.redis.host=localhostspring.redis.port=6379(2)pom文件引入依赖

(4)前端返回头Resultsresult类实现用于将后端拿到的数据返给前端到时候看看项目代码就明白了这里就不进行赘述。

(5)token生成加密和解密在util目录下tokenUtil实现

(7)controller层、service层、dao层注解都加上。

上面说了个大概具体还是要看代码如果有迷惑或者不明白的地方欢迎留言我们一起讨论。

接下来就开始实现各个功能了.

二、功能实现

1.用户注册

controller层:

//用户注册@PostMapping("/registerUser")publicResultregisterUser(@RequestBodySysUsersysUser){Resultresult=Results.successWithData(userService.RegisterUser(sysUser),BaseEnums.SUCCESS.code(),BaseEnums.SUCCESS.desc());returnresult;}service层:

//用户注册publicObjectRegisterUser(SysUsersysUser);//用户注册publicObjectRegisterUser(SysUsersysUser){SysUsersysUser1=userMapper.selectUserByUserId(sysUser);if(sysUser1!=null&&sysUser1.equals(null)){return"用户已存在,请登陆!";}Booleanresult=userMapper.insertOneUser(sysUser);returnresult;}dao层:

这样一来,用户注册就顺利实现了。

2.用户借书与还书

//用户角色借阅书本@PostMapping("/borrowBooks")publicResultborrowBooks(@RequestParam("bookCode")StringbookCode,HttpServletRequestrequest){Resultresult=Results.successWithData(userService.borrowBooks(bookCode,request));returnresult;}//用户角色还书@PostMapping("returnBooks")publicResultreturnBooks(@RequestParam("bookCode")StringbookCode,HttpServletRequestrequest){Resultresult=Results.successWithData(userService.returnBooks(bookCode,request));returnresult;}service层:

三、收尾工作

我们这里对项目进行了一个大概的介绍,更加详细的内容就不进行介绍了,将项目核心功能说明白即可,具体想要学明白还是回去撸代码才行。在看代码过程中有问题欢迎浏览讨论。

THE END
1.Vue+SpringBoot全栈图书馆后台管理系统开发指南简介:本项目为一个全栈后台管理系统,采用Vue.js前端框架和SpringBoot后端框架,实现了前后端分离的高效数据处理和用户交互体验。Vue负责动态页面渲染与用户交互,而SpringBoot专注于业务逻辑、数据持久化、权限控制等后端服务。系统涵盖了图书信息管理、借阅记录、用户账户管理等模块,并通过Vue组件和SpringBoot的RESTful API实https://blog.csdn.net/weixin_29069575/article/details/143027719
2.前后端分离项目图书馆管理系统的开发过程中,采用B / S架构,主要使用Java技术进行开发,结合最新流行的springboot框架。使用Mysql数据库和Eclipse开发环境。该阿博图书馆管理系统包括用户和管理员。其主要功能包括管理员:首页、个人中心、用户管理、图书分类管理、图书信息管理、图书借阅管理、图书归还管理、缴纳罚金管理、留言板管理、系统http://www.360doc.com/content/23/1010/20/1099708722_1099708722.shtml
3.图书馆借阅管理系统,纯django+html(前后端不分离),pycharm开发13天前 README djangoWork 介绍 软件架构 安装教程 使用说明 参与贡献 特技 djangoWork 介绍 图书馆借阅管理系统,纯django+html(前后端不分离),pycharm开发 软件架构 软件架构说明 安装教程 xxxx xxxx xxxx 使用说明 xxxx xxxx xxxx 参与贡献 Fork 本仓库 新建Feat_xxx 分支 提交代码 新建Pull Request 特技 使https://gitee.com/everybodynow/django-work
4.强大的图书管理系统(前后端分离版)基于人人开源脚手架快速开发的一个图书馆管理系统,功能强大,安全好用。详细 项目简介 前后端分离版的图书馆管理系统。基于人人开源开发脚手架,简化开发提升开发速度。支持下载word催还单 效果显示 【登录】 管理员/普通用户 ,不同角色可访问的菜单不同 【首页】 首页是通知 【图书管理】 上架,下架,修改,搜索等 【http://www.demodashi.com/demo/17567.html
5.基于springboot+vue前后端分离的图书管理系统2023图书管理系统是一个基于Web的应用程序,使用SpringBoot和Vue前后端分离的技术实现。该系统允许用户管理图书目录,并进行借阅和归还等操作。以下是该系统的详细介绍: 后端部分 后端部分使用SpringBoot框架进行开发。SpringBoot是一个流行的Java框架,可用于快速开发基于Spring的Web应用程序。 后端部分主要负责处理业务逻辑和数据https://cloud.tencent.com/developer/article/2343941
6.图书管理系统api接口(图书管理系统功能简介)图书馆管理系统打破了传 统的图书管理模式,以系统性、实用性为原则,最大限度提高图书馆管理各个环节的自动化服务为目标 ,建立起了一套系统高效的数字自动化管理服务流程,极大的减轻了图书管理的工作量,有效的提高了 图书馆服务质量和效率。分层组件技术的应用,使每个功能和业务模块实现网络集成化的分配管理,顺应信息https://www.eolink.com/news/post/61446.html
7.图书馆管理员管理系统这份图书馆管理员系统的前后端代码非常实用,它包括了用户增删改查功能。前端使用jsp技术,后端使用java语言编写,使得整个系统具有高效、稳定和可扩展的特点。首先,该系统的前端使用了jsp技术,这是一种基于Java的服务器端脚本语言,可以实现动态网页的开发。通过jsp,我https://www.coder100.com/index/index/content/id/3878965
8.学校各类信息化管理系统(图书馆实训中心智慧教室)二校区2019年学生人数达到1300多人,教师155人,采用一卡通进行借还图书,学校是采用的金碟图书馆管理系统,目前运行良好。 智慧教室和录播教室 教学能力:教学资源存储系统、管理系统、教学系统、移动终端应用系统、教学分析系统、测评系统、云空间系统交互式教学显示设备、交互式教学互动终端设备、物联网控制设备、多媒体教学设https://school.bsedu.org.cn/bsbz/app/info/doc/index.php/3042
9.翻译技术简史翻译项目管理全景图机器翻译观察来源:《管理科学技术名词》 数字、字母与符号的集合。系客观事物与主观思维的具体表达,不限于数值。现常指可由计算机处理的信息单元。 来源:《图书馆·情报与文献学名词》 信息: 处理后的数据。可用于人们对管理和决策的支持。 来源:《计算机科学技术名词 》 (第三版) https://www.shangyexinzhi.com/article/5461006.html
10.工程公司年终工作总结(通用17篇)4、武汉体育学院人才楼现场施工管理及项目验收; 5、武汉理工大学孵化楼项目的前期预埋; 6、武汉理工大学图书馆前期预埋。 二、在工作中主要存在的问题有: 对工作认识不够,缺乏全局观念,对工作缺少了解和分析,对工作定位认识不足。不过我相信,在以后的工作中,我会不断的学习和思考,从而加强对工作的认知能力。 https://www.yjbys.com/gongzuozongjie/nianzhong/3715712.html
11.文图软件图书管理软件RFID设备MARC数据Z39.50图书加工作者:sjzwcs | 分类:公司产品| 阅读:669 views | 标签:rfid,标签加工,标签注册,馆员工作站,高频RFID 文图馆员工作站(高频ISO15963)已关闭评论 布克云图-靠谱的云图书馆管理系统 May112022 布克云图V6.0(商标是布客云图)是本公司完全自主开发的新一代云图书馆里系统,采用前后端分离框架,SAAS模式。拥有自主知识https://www.sjzwtrj.cn/
12.北京科技大学信息化建设与管理办公室1、图书馆VS地摊 如果把数据仓库比喻成“图书馆”,那么数据湖就是“地摊”。去图书馆借书(数据),书籍质量有保障,但你得等,等什么?等管理员先查到这本书属于哪个类目、在哪个架子上,你才能精准拿到自己想要的书;而地摊上没有人会给你把关,什么书都有,你自己翻找、随用随取,流程上比图书馆便捷多了,但大家找https://info.ustb.edu.cn/ITxy/jswd/173ab97def24404eba836bc9c28fec1b.htm