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

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

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

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

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

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

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

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.图书馆文化构建作用活动信息图书馆作为公共文化服务机构,具有很强的社会宣传教育功能,通过丰富的馆藏和各种媒介,传播先进的思想、道德、科学技术和文化知识,在帮助群众提高自身素质,促进全民学习等方面都发挥重要的作用。人们在这里学习不受时间、空间、年龄、文化层次的限制,深受广大群众的喜爱。目前,大丰市图书馆馆藏各类文献近30万册,实行36http://www.nanao.gov.cn/stsnaxwhgdlytyjgkml/stsnaxwhgdlytyjgkml/zwgk/whjgxxgk/tsgwzgwgk/hdxx/content/post_1285836.html
2.浅谈图书馆在文化市场中的作用论文图书馆在文化交流和文化整合中,提供丰富的文化资源,历来就是文化交流和文化整合的重要枢纽。但在过去,这种作用基本上属于被动服务,而且属于人工操作,效率甚低。科技革命和信息革命改变了人类的生活方式和工作方式,也提升了图书馆的地位和使命,改变了其服务的性质和服务的效率。过去传统图书馆的功能主要是收藏和借还图书https://www.yjbys.com/bylw/wenhuayishu/143205.html
3.科学网—朱为群:高校图书馆学术功能应定位为“五个中心学术文献研究与服务,通过独特的学术生产活动并提供深度的学术增值服务,充分发挥高校图书馆的学术价值。学术数据集成与应用中心的建设,将通过打通全校乃至更大范围学术数据的收集、整合、交流、展示、传播和评价各个环节而发挥知识中心的作用。而信息素养教育与发展是高校图书馆发挥教书育人功能和体现其独特价值的竞争优势https://blog.sciencenet.cn/blog-213646-1286764.html