
一、需求分析与规划
1.1 命题背景与功能需求
在线图书借阅平台旨在解决传统图书馆线下借阅效率低、用户查询不便等问题,目标用户覆盖在校师生及公共图书馆读者。通过需求调研,平台需实现五大核心功能模块:
| 模块名称 | 核心功能点 | 用户角色 |
|---|---|---|
| 用户管理 | 注册(含邮箱验证)、登录(密码加密)、个人信息维护、角色权限分级(普通用户/管理员) | 所有用户 |
| 图书检索 | 支持关键词(书名/作者)、分类(文学/科技/历史)、库存状态(可借/已借出)多条件组合查询 | 所有用户 |
| 借阅管理 | 借书申请(校验库存)、续借操作(延长应还日期)、归还确认(更新库存与记录状态) | 普通用户 |
| 逾期管理 | 自动计算逾期天数、生成违约金、黑名单控制(逾期超 3 次禁用借阅权限) | 系统自动/管理员 |
| 数据统计 | 借阅量月度报表、热门图书 TOP10 排行、用户活跃度分析 | 管理员 |
技术选型依据:
- 后端:Spring Boot 2.7(快速构建 RESTful API)、MyBatis-Plus(简化数据库 CRUD)、JWT(用户认证令牌)、BCrypt(密码加密)
- 前端:Vue 3 + Element Plus
- 数据库:MySQL 8.0(支持事务、索引优化及复杂查询)
- 开发辅助:AI 辅助编码工具
1.2 核心模块拆解与流程可视化
业务流程上,用户访问平台后根据身份进行注册或登录。注册时输入用户名、密码及邮箱,系统生成用户 ID 并写入 user 表,同时发送验证邮件。登录成功后返回 JWT 令牌并加载主页。
在图书检索环节,用户输入关键词、分类或库存条件,系统调用检索模块查询 book 表及库存关联表,返回图书列表及可借状态。选择目标图书并提交借阅申请后,系统检查库存充足性,若满足则更新库存数量,写入 borrow_record 表,并返回应还日期。
系统会在借阅到期前 3 天自动触发续借提醒。若用户未续借且逾期,系统将计算违约金并更新用户状态。
二、项目开发与实现
2.1 智能引导与接口设计
利用 AI 辅助工具进行项目初始化,通过自然语言描述需求,系统自动生成符合 Spring Boot 规范的代码结构。从实体类到控制器,再到数据传输对象(DTO),整个链路实现了自动化生成,大幅减少了重复编码工作量。
在接口设计阶段,重点关注用户认证、图书资源管理及借阅逻辑的标准化。生成的代码直接包含基础的业务校验逻辑,如参数非空检查、库存原子操作等,确保后续调试成本可控。
2.2 核心代码实现
2.2.1 实体类与控制器
// 实体类 User.java(自动生成 Lombok 注解与字段)
@Data
@TableName("user")
public {
Integer id;
String username;
String password;
String email;
Integer role;
LocalDateTime createTime;
}


