news 2026/7/12 11:29:51

Spring Boot 3 + Vue 3 图书馆管理系统源码 前后端分离 实战项目

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
Spring Boot 3 + Vue 3 图书馆管理系统源码 前后端分离 实战项目

一、项目简介

本系统是一套基于 Spring Boot 3 + Vue 3 前后端分离架构的图书馆管理平台,支持多角色协同操作。系统涵盖图书编目、借书证管理、借还书流通、罚款缴纳、读者管理、操作日志与数据看板等核心业务,适用于中小型图书馆的日常运营管理。系统包含三种角色:管理员(可细分为编目员、流通员、办公员)、普通用户(读者)以及流通员(通常由管理员兼任,但独立为一套操作视图)。

二、技术栈

技术说明
后端框架Spring Boot 3
ORMMyBatis-Plus
权限认证JWT Token + 自定义 @AuthSupport 注解
前端框架Vue 3
状态管理Pinia
构建工具Vite
数据库MySQL
文件上传本地文件存储(按日期分目录)
参数校验Jakarta Validation
密码加密SHA-256

三、功能模块

管理员端

  • 用户管理:查看用户列表,支持按关键词、角色、状态筛选;新增或编辑用户(字段包括用户名、姓名、角色、电话、头像、状态、学号、学生类型);重置用户密码(默认 123456)。
  • 读者管理:查看所有读者列表,支持关键词搜索;新增读者账号并自动关联借书证。
  • 借书证管理:查看借书证列表,支持按关键词、状态筛选;新办借书证(自动生成证号与条码);挂失、补办、注销借书证操作。
  • 图书编目:查看图书列表,支持按书名、ISBN、作者、出版社分页搜索;新增或编辑图书(填写 ISBN、书名、作者、出版社、分类、封面、摘要、出版日期、定价);ISBN 唯一性校验。
  • 图书副本管理:查看某本书的所有副本(按条码排序);新增或编辑副本(设置条码、馆藏位置、状态、备注);副本条码唯一性校验。
  • 副本状态操作:上架副本(仅下架状态可上架);报废副本(借出中不可报废);图书整体下架(下架所有非借出副本)。
  • 基础资料维护:新增或查看作者(名称、国籍);新增或查看出版社(名称、城市);查看图书分类列表。
  • 用户角色权限:支持编目员(CATALOG)、流通员(CIRCULATION)、办公员(OFFICE)等角色,通过接口级权限校验控制访问。
  • 操作日志:查看所有操作日志,支持按用户名、模块、操作、详情关键词搜索;自动记录每次关键操作。

普通用户端

  • 登录:使用用户名+密码登录,返回 JWT Token 与用户信息。
  • 查看个人信息:获取当前登录用户的基本信息(用户名、姓名、角色、学号等)。
  • 我的借阅记录:查看本人的所有借阅记录(按借书时间倒序),包含借书时间、应还时间、归还时间、状态。
  • 我的罚款记录:查看本人的所有罚款记录(按创建时间倒序),包含罚款金额、原因、状态、缴纳时间。
  • 我的借阅概览:在仪表盘查看当前借阅数、累计借阅数、可再借额度、未缴罚款金额、借书证状态。
  • 借书证状态查看:在仪表盘直接显示关联借书证的状态(正常/挂失/补办/注销)。
  • 可借额度限制:本科生最多借 5 本,研究生最多借 10 本,超限时系统阻止借书。
  • 图书搜索:按书名、ISBN、作者、出版社等条件搜索图书,查看图书详情(作者、出版社、分类、封面、摘要、定价、总副本数、可借副本数)。

流通员端

  • 办理借书:扫描读者借书证条码与图书副本条码(支持批量),自动校验借书证状态、读者未缴罚款限额、可借额度,成功后将副本状态改为借出。
  • 办理还书:扫描图书副本条码,自动计算是否超期,超期时自动生成罚款记录(按日计算,每日 0.50 元),将副本状态改为在架可借。
  • 罚款缴纳:选择读者,勾选未缴罚款记录(支持多选合并缴费),记录缴费方式(现金/其他),生成缴费记录。
  • 借阅记录查询:按关键词(读者姓名/学号/用户名)或用户 ID 或状态筛选借阅记录,查看完整借还历史。
  • 罚款记录查询:按关键词或用户 ID 或状态筛选罚款记录,查看未缴/已缴明细。
  • 流通概览仪表盘:查看当前借出数、超期未还数、累计借阅数、待缴罚款笔数与金额。
  • 读者借阅排行:按月统计借阅次数最多的读者排行(Top 8)。
  • 图书借阅排行:按月统计借阅次数最多的图书排行(Top 8)。

四、项目总结

本项目采用 Spring Boot 3 + Vue 3 前后端分离架构,通过 JWT 与自定义注解实现精细化角色权限控制,覆盖图书编目、借还流通、罚款管理、读者与借书证管理等完整业务流程。技术亮点包括 MyBatis-Plus 的高效数据操作、Pinia 的状态管理、以及 Vite 的快速构建。适用于中小型图书馆的日常运营管理,也适合作为 Java 全栈开发的学习与二次开发项目。

界面展示

交付内容

本项目为完整交付,包含:

  • 完整后端源码
  • 完整前端源码
  • 数据库初始化脚本(SQL)
  • 万字项目文档(设计文档 / 论文,可作课程设计、毕业设计参考)

获取完整源码

完整前后端源码 + 数据库脚本 + 万字项目文档见 Gitee 仓库:https://gitee.com/kangxihuang/src-K062

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/7/12 11:29:30

WaveTools鸣潮工具箱:从新手到高手的完全使用指南

WaveTools鸣潮工具箱:从新手到高手的完全使用指南 【免费下载链接】WaveTools 🧰鸣潮工具箱 项目地址: https://gitcode.com/gh_mirrors/wa/WaveTools 你是否还在为《鸣潮》PC版的帧率限制而烦恼?是否觉得多账号切换太麻烦&#xff1f…

作者头像 李华
网站建设 2026/7/12 11:27:03

openEuler LFS课程:Omni-Imager自动化镜像构建工具详解

openEuler LFS课程:Omni-Imager自动化镜像构建工具详解 【免费下载链接】lfs-course This reposiroty will provide the lfs course which has been created in openEuler-practice-courses and migrated here. 项目地址: https://gitcode.com/openeuler/lfs-cour…

作者头像 李华
网站建设 2026/7/12 11:25:06

TLA2518与PIC32MX795F512L的高精度数据采集系统设计

1. TLA2518与PIC32MX795F512L的硬件协同设计 1.1 TLA2518关键特性解析 德州仪器的TLA2518是一款8通道12位1MSPS SAR架构ADC,采用3mm3mm WQFN封装。这款芯片最突出的特点是其通道配置灵活性——每个通道可独立设置为模拟输入、数字输入或数字输出。在实际项目中&…

作者头像 李华
网站建设 2026/7/12 11:24:30

新手必看:openeuler/openstack-releases入门指南与常见问题解答

新手必看:openeuler/openstack-releases入门指南与常见问题解答 【免费下载链接】openstack-releases Repo config for OpenStack releases 项目地址: https://gitcode.com/openeuler/openstack-releases 前往项目官网免费下载:https://ar.openeu…

作者头像 李华