这次继续跑一个 SSM 图书馆管理系统,项目来自 GitHub:zhanghuanhao/LibrarySystem。系统整体是传统 Java Web 架构,使用 Spring、Spring MVC、MyBatis、JSP、Bootstrap 和 MySQL,功能覆盖图书查询、图书管理、读者管理、借阅归还、借还日志、读者个人信息等模块。
源码包已经做了本地运行兼容处理:升级了 Spring、MySQL 驱动和 Jetty Maven 插件,补充 javax.annotation-api,并把 SQL 中的数据库名改成了 MySQL 8 也能稳定导入的写法。
项目信息
- 项目名称:LibrarySystem 图书馆管理系统
- 项目来源:GitHub
zhanghuanhao/LibrarySystem - 技术栈:Spring、SpringMVC、MyBatis、JSP、Bootstrap、MySQL、Maven
- 本地端口:
8083 - 数据库:
library - 管理员账号:
123456 / 123456 - 读者账号:
10000 / 123456
本地运行记录
先导入项目里的 library.sql,然后修改 src/main/resources/db.properties 中的数据库账号密码。
mysql -uroot -p < library.sql
mvn -DskipTests package
mvn jetty:run
访问:
http://localhost:8083/
本次运行环境里使用的是 Java 17 和 MySQL 8,所以我额外做了几处兼容处理:
- Spring 从
4.2.2.RELEASE调整为5.2.5.RELEASE - MySQL Connector 从
5.1.29调整为8.0.33 - Jetty Maven 插件升级到
9.4.12.v20180830 - 增加
javax.annotation-api - 去掉原项目里写死的 WAR 输出目录
- SQL 中
library数据库名使用反引号包裹,避免 MySQL 8 关键字冲突
登录页面

管理员端:首页
管理员登录后进入后台首页,顶部是图书管理、读者管理、借还管理和密码修改。

管理员端:图书管理
图书列表支持查询、查看详情、编辑、删除,也可以继续新增图书。

管理员端:图书详情
图书详情页展示书名、作者、出版社、ISBN、分类、库存、价格、出版日期和简介。

管理员端:读者管理
读者管理页可以查看读者证号、姓名、性别、生日、地址和联系电话。

管理员端:借还日志
借还日志用于记录图书借出和归还情况,管理员可以看到所有读者的借阅流水。

读者端:首页
读者登录后进入个人首页,顶部菜单包含图书查询、个人信息、我的借还和密码修改。

读者端:图书查询
读者可以查询全部图书,也可以按当前借阅状态进行借书或还书操作。

读者端:图书详情
读者端也可以查看图书详情,页面信息与管理员端类似,但权限更轻。

读者端:个人信息
读者可以查看自己的基础资料,并进入编辑页面修改信息。

读者端:我的借还
我的借还页面展示当前读者的借阅记录,包含图书编号、读者证号、借出日期和归还日期。

源码下载
小结
这个项目结构比较典型,很适合用来学习传统 SSM 项目的目录组织、JSP 页面跳转、MyBatis 映射和后台管理功能拆分。功能不算复杂,但管理员端和读者端权限边界清楚,作为图书管理系统练手项目比较完整。












暂无评论内容