# 医院挂号系统 **Repository Path**: Cheesezzc/hospital ## Basic Information - **Project Name**: 医院挂号系统 - **Description**: 基于springboot+mybatis-plus+mybatis+MySQL+vue3的一个医院挂号系统 - **Primary Language**: Java - **License**: GPL-2.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 3 - **Forks**: 0 - **Created**: 2025-08-25 - **Last Updated**: 2026-03-08 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README 1. 技术栈组成 后端 Spring Boot:用于快速构建和运行Java Web应用,提供开箱即用的功能,简化了配置和部署。 Spring AI:可能用于引入AI功能,如智能推荐、自然语言处理等,具体用途需要看实现细节。 MyBatis:一个持久层框架,用于简化数据库操作,通过接口和XML配置实现数据库交互。 MyBatis-Plus:MyBatis的增强工具,提供更简洁的CRUD操作和更多便捷功能。 Sa-Token:一个轻量级的Java权限控制框架,用于实现用户认证和授权管理。 Redis:分布式内存数据库,用于缓存数据,提高系统性能和响应速度。 MySQL:关系型数据库,用于存储和管理结构化数据,如用户信息、挂号信息等。 前端 Vue3:现代的前端框架,用于构建用户界面,提供响应式数据绑定和组件化开发。 2. 核心模块逻辑 用户管理 登录/注册:通过Sa-Token实现用户认证,用户注册和登录后生成Token用于后续操作的鉴权。 用户信息管理:存储在MySQL中,支持修改密码、个人信息等操作。 挂号管理 医生信息:存储医生信息(如姓名、科室、排班时间等),通过MyBatis从数据库中读取。 挂号预约:用户选择医生和时间段进行挂号操作,挂号数据存储在MySQL中。 挂号查询:用户和管理员可以查询挂号记录,支持按日期、医生等条件筛选。 挂号状态更新:如用户取消挂号,或医生确认挂号等,通过Redis缓存挂号状态以提高查询效率。 AI相关功能 智能推荐:根据用户历史挂号记录或行为,推荐合适的医生或时间段。 自然语言处理:可能用于用户输入的自然语言查询,比如“帮我找下午三点的呼吸科医生”。 缓存与性能优化 Redis:用于缓存高频访问的数据,如医生排班表、热门挂号信息等,减少数据库压力,提高系统响应速度。 分页与查询优化:通过MyBatis-Plus的分页插件,实现高效的数据库分页查询。 安全与权限 Sa-Token:通过Token的方式管理用户权限,区分普通用户和管理员操作。 敏感数据保护:如用户密码等敏感信息需加密存储(如使用BCrypt)。 3. 安装要求 以下是运行该项目所需的环境和工具: JDK 17:Java开发环境,确保后端项目能正常编译和运行。 Node.js 22:前端项目依赖的JavaScript运行环境,用于执行Vue3相关的构建和开发任务。 MySQL 8.0+:安装并配置数据库,确保表和数据结构可以正确初始化。 Maven 3.9.9:Java项目的依赖管理工具,用于下载和管理后端项目的第三方库。 4. 总结 这个医院挂号系统整合了多种成熟的技术,实现了从用户认证、挂号管理到智能推荐的完整功能。通过Spring Boot和MyBatis实现了后端强大的数据处理能力,而Vue3提供了灵活的前端体验。Redis和Sa-Token的引入增强了系统的性能和安全性。如果需要进一步优化或改进,可以从代码结构、日志记录、异常处理等方面进行加强。