# 预约预测健康系统 **Repository Path**: hanwu35/healthcheck ## Basic Information - **Project Name**: 预约预测健康系统 - **Description**: No description available - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-01-17 - **Last Updated**: 2026-01-17 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 预约预测健康系统(AiHealthCheck) ## 一、项目简介 本项目是一个基于 Spring Boot 的预约预测健康系统,包含: - 患者端:预约挂号、指标分析、体检报告查看等功能 - 医生端:医生工作站、患者列表、报告审核、健康建议等功能 前后端采用同一 Spring Boot 应用,前端页面使用 Thymeleaf 模板 + 原生 HTML/CSS/JS。 ## 二、技术栈 - JDK 17 - Spring Boot 3.2.x(Web、Thymeleaf、Data JPA) - MySQL 8.x - Gradle(项目构建) ## 三、环境准备 在新设备上启动前,请确保: 1. 安装 **JDK 17** 2. 安装 **MySQL 8.x** 3. 配置好 `JAVA_HOME`,并将 `java` 命令加入系统环境变量 ## 四、数据库初始化 1. 登录 MySQL,创建数据库: ```sql CREATE DATABASE ai_health_check DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; ``` 2. 在新设备上进入项目目录,找到 SQL 脚本目录: - `src/main/resources/sql/` - `create.sql` - `appointment-functions.sql` - `same_name.sql` - `dan.sql` - `schedules-data.sql` - `insert-data.sql` 3. 依次执行脚本(推荐顺序): ```sql USE ai_health_check; SOURCE create.sql; SOURCE appointment-functions.sql; SOURCE same_name.sql; SOURCE dan.sql; SOURCE schedules-data.sql; SOURCE insert-data.sql; ``` > 提示:可使用 MySQL 命令行或图形化工具(如 DataGrip、Navicat)执行上述脚本。 ## 五、应用配置(application.properties) 配置文件位置:`src/main/resources/application.properties` 默认的数据源配置示例: ```properties spring.datasource.url=jdbc:mysql://localhost:3306/ai_health_check?useUnicode=true&characterEncoding=utf8&useSSL=false&serverTimezone=Asia/Shanghai&allowPublicKeyRetrieval=true spring.datasource.username=hanwu spring.datasource.password=WDz18708835370 spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver spring.jpa.database-platform=org.hibernate.dialect.MySQL8Dialect ``` 在新设备上你可以选择两种方式之一: 1. **方式 A:创建同名账号** - 在 MySQL 中创建用户 `hanwu` 并设置相同密码,然后授予该用户对 `ai_health_check` 库的权限: ```sql CREATE USER 'hanwu'@'%' IDENTIFIED BY 'WDz18708835370'; GRANT ALL PRIVILEGES ON ai_health_check.* TO 'hanwu'@'%'; FLUSH PRIVILEGES; ``` 2. **方式 B:修改配置为你自己的账号** - 将 `spring.datasource.username` 和 `spring.datasource.password` 修改为你本地 MySQL 的账号和密码。 ## 六、启动项目 在项目根目录(包含 `build.gradle` 的目录)下执行: ### 方式一:使用 Gradle Wrapper 启动(推荐) **Windows:** ```bash ./gradlew bootRun ``` 启动成功后,控制台会看到类似日志: ```text Tomcat started on port 8080 (http) with context path '' Started AiHealthCheckApplication ... ``` 此时可以访问: - 患者端预约挂号页面:http://localhost:8080/user/appointment - 医生工作站首页:http://localhost:8080/doctor ### 方式二:打包成可执行 JAR 1. 在项目根目录执行: ```bash ./gradlew clean build ``` 2. 找到打包生成的 JAR(名称可能类似): ```text build/libs/aihealthcheck-0.0.1-SNAPSHOT.jar ``` 3. 使用 java 命令运行: ```bash java -jar build/libs/aihealthcheck-0.0.1-SNAPSHOT.jar ``` ## 七、常见问题 1. **启动时报数据库连接错误** - 检查 MySQL 是否已启动 - 确认 `application.properties` 中的 URL、用户名、密码配置正确 - 确认数据库 `ai_health_check` 已创建并执行了 `create.sql` 和 `insert-data.sql` 等初始化脚本 2. **页面样式错乱或静态资源 404** - 确认以下目录存在并已随项目一起拉取: - `src/main/resources/static/css/` - `src/main/resources/static/js/` - `src/main/resources/templates/` 3. **端口被占用** - 默认使用 8080 端口,如有占用,可在 `application.properties` 中新增: ```properties server.port=8081 ``` ## 八、项目结构概览 主要目录说明: - `src/main/java/com/example/aihealthcheck/` - 核心业务代码、控制器、服务、实体、仓库等 - `src/main/resources/templates/` - 前端页面模板(患者端、医生端、登录等) - `src/main/resources/static/` - 前端静态资源(CSS、JS、图片) - `src/main/resources/sql/` - 数据库初始化脚本 ## 九、账号使用示例 如果你成功配置好数据库,启动后可以从数据库表里面看到用户数据,user表里有医生和患者的账号和密码使用,这里提供了几个账号给你使用, 其次,还有一份excel数据给你使用,这是用来进行excel上传的数据样例 孙梅 患者账号密码 yx1234568 yx1234568 王雅婷,心血管科 医生账号密码 wyt300007 wyt300007