家庭药品库存预警系统
Date
个人项目

Date
个人项目
以家庭药品库存预警为核心研究方向,后端基于Spring Boot 3 + MyBatis-Plus + Redis + JWT + WebSocket,前端基于 Vue 组件化架构与 ECharts 可视化,覆盖库存管理、用药记录、有效期提醒、亲友共享、到期通知与操作日志等家庭健康场景。





我的角色
个人全栈项目 / 独立开发
关键指标
Spring Boot 3 后端
JWT 无状态鉴权
WebSocket 实时推送
邮件 / PushPlus 通知
独立全栈开发
负责内容
独立设计药品库存、用药记录、有效期提醒、亲友共享与通知人员配置等核心功能。
后端使用 Spring Boot 3 + MyBatis-Plus + MySQL 8 完成实体建模、CRUD、Excel 导入导出与定时到期扫描。
基于 JJWT + Spring Security Crypto 实现注册登录、BCrypt 加密与 5 次失败 3 分钟锁定的风控策略。
通过 Spring 定时任务 + WebSocket + 163 SMTP + PushPlus 构建多通道药品到期通知能力。
前端使用 Vue 组件化架构与 ECharts 可视化,围绕家庭健康场景整理数据模型与展示方式。
关键难点
个人项目容易停留在功能堆叠,需要用明确场景约束功能边界。
提醒类系统必须保证数据结构清晰,否则库存、有效期、通知对象与亲友关系会互相牵扯。
后端从 Node.js 切换到 Spring Boot 生态时,需要重新组织配置、JWT 鉴权与定时任务调度方式。
解决方案
以药品、库存、用药记录、提醒时间、通知人员与亲友关系六类核心实体组织数据结构。
用 MyBatis-Plus 统一持久层,Redis 缓存登录失败计数与限流状态,JJWT 维护无状态会话。
通过定时任务、WebSocket 实时通道与 163 邮箱 / PushPlus 异步推送把系统从单纯记录工具变成主动提醒工具。
核心工作
Spring Boot 3 前后端分离架构
JWT + BCrypt 无状态鉴权
WebSocket 药品到期实时推送
163 邮箱 / PushPlus 多通道通知
Redis 登录限流与失败计数
技术栈
Spring Boot 3 / Java 17 / MyBatis-Plus / MySQL 8 / Redis / JWT / WebSocket / Spring Security / 163 邮箱 / PushPlus / Apache POI / Docker / Vue / ECharts / 组件化架构
复盘方向
这个项目适合展示 Java 全栈基础能力,后续可以继续补充部署方式、数据库表结构、定时任务可靠性设计与 CI/CD 流程。