373675032/smart-medicine · 上手攻略
- 仓库:373675032/smart-medicine
- 链接:https://github.com/373675032/smart-medicine
- 分类:学术写作 · 毕业设计 · Java Web
- 作者:Tom
- 更新:2026-08-26
这是什么
智慧医药系统(smart-medicine)是一个基于 SpringBoot + SSM 架构的标准 Java Web 毕业设计项目,作者为薛伟同学。它将阿里云通义千问大语言模型包装成「智能医生」对话机器人,提供疾病查询、药品查询、用户反馈管理等功能,面向初学者和毕业答辩场景。
简单来说:这是一套「AI 问诊 + 医药百科」的单体 Web 应用,适合学习 Java Web 全栈开发流程,但不适合生产部署。
解决什么问题
- 毕业设计/课程项目需要一个完整可运行的 Java Web 系统
- 需要一个自带 AI 对话功能的演示项目(通义千问 API)
- 需要参考 SSM 目录结构和 SpringBoot 配置方式的初学者
快速安装
环境要求
| 依赖 | 版本 | 备注 |
|---|---|---|
| JDK | 1.8 | 必须是 1.8,其他版本可能有未知问题 |
| Maven | 3.6+ | |
| MySQL | 5.7 | ⚠️ 作者明确提示其他版本可能有问题 |
| IntelliJ IDEA | 2020.2.2 | 主要开发工具 |
| WebStorm | 2019.2.1 | 前端页面开发 |
核心步骤
# 1. 克隆项目
git clone https://github.com/373675032/smart-medicine.git
# 2. 导入数据库脚本(MySQL 5.7)
mysql -u root -p < src/main/resources/smart-medicine.sql
# 3. 修改配置文件 src/main/resources/application.yml
# - 数据源配置(MySQL 连接)
# - 邮件配置(注册验证码)
# - 阿里云通义千问 API Key(https://help.aliyun.com/zh/dashscope/developer-reference/activate-dashscope-and-create-an-api-key)
# - 阿里云 OSS 对象存储配置
技术栈一览
| 层级 | 技术 |
|---|---|
| 后端框架 | SpringBoot + SpringMVC + MyBatis |
| 前端模板 | Thymeleaf + Bootstrap + JQuery |
| 数据库 | MySQL 5.7 + Druid 连接池 |
| AI 能力 | 阿里云通义千问(DashScope API) |
| 文件存储 | 阿里云 OSS 对象存储 |
| 邮件 | SMTP 邮件发送(注册验证码) |
核心用法
角色与权限
系统设计三个角色:
游客(未登录) - 登录 / 注册 - 搜索疾病、药品并查看详情 - 浏览系统主页
普通用户(已登录) - 游客全部权限 - 修改个人资料(姓名、年龄、手机号、头像) - 修改登录密码 - 提交意见反馈 - 与智能医生对话(调用通义千问)
管理员 - 用户全部权限 - 发布 / 编辑 / 删除疾病信息 - 发布 / 编辑 / 删除药品信息(关联疾病) - 管理用户反馈
典型操作流程
注册账号 → 登录 → 搜索疾病或药品 → 查看详情 → 进入智能医生对话
管理员额外操作:
# 管理员发布药品(通过管理后台界面操作)
疾病管理:发布疾病(名称、原因、症状、分类)
药品管理:发布药品(名称、功效、用法用量、关联疾病)
项目目录结构(SSM 标准)
src/main/java/xxx/
├── component/ # 组件(登录拦截器等)
├── controller/ # 控制层
├── entity/ # 实体类
├── dao/ # MyBatis 映射接口(数据访问层)
├── service/ # 业务逻辑接口
└── utils/ # 工具类
src/main/resources/
├── smart-medicine.sql # 数据库脚本
├── static/ # 前端静态资源
├── templates/ # Thymeleaf 页面模板
└── application.yml # 核心配置文件
典型适用场景
- Java 毕业设计答辩:完整项目结构、可运行的系统、内含 AI 噱头,答辩展示效果较好
- SpringBoot + SSM 学习:标准三层架构,目录规范,适合作为学习参照
- 课程项目原型:快速出可运行版本,修改参数即可定制
坑与注意
⚠️ 这些坑你踩定了,提前预防:
- MySQL 版本必须 5.7:作者明确提示其他版本会有未知问题,勿用 MySQL 8.x 直接迁移
- 通义千问 API Key 需自行申请:需要在阿里云开通 DashScope 服务并创建 API Key,有免费额度但有限制
- 阿里云 OSS 存储需要配置:头像和上传文件存在 OSS,数据库只存 URL;不配置则图片上传功能不可用
- 邮件发送需要 SMTP 配置:注册验证码依赖邮件发送,测试环境需要可用邮件服务
- 前端依赖外部 CDN:Bootstrap、JQuery 等通过 CDN 引入,离线环境无法正常加载页面
- 非生产级代码:这是毕业设计级项目,安全性(SQL 注入、XSS 等)未做专项处理,生产环境切勿直接使用
- 代码不含单元测试:没有测试覆盖,修改需手工验证
与同类对比
| 对比维度 | 本项目 | 正规医疗系统(如 OpenHIS) |
|---|---|---|
| 架构 | SSM 单体 | Spring Cloud 微服务 |
| AI 能力 | 通义千问对话(toy 级) | 无或集成专业医疗 AI |
| 药品数据 | 手工录入,量小 | 对接国家药品库 |
| 生产可用性 | ❌ 零 | ❌ 零 |
| 学习价值 | ★★★(SSM 规范) | ★★(微服务过于复杂) |
| 毕业设计适配度 | ★★★★★ | ★★ |
结论:如果是学习 SSM 架构,这是个不错的参照项目;如果要做真正有价值的医疗系统,建议找更专业的开源项目而非此类毕业设计。
一句话推荐结论
智慧医药系统是一个适合毕业答辩展示的 SSM 架构学习项目,内置通义千问 AI 对话作为噱头,但代码质量和功能深度仅达到课程设计水平,生产环境完全不可用——适合学习参考,不适合直接使用。