https://icons8.com/ ### 后端使用文档(简版) 本文件用于指导在新电脑上启动 Spring Boot 后端,并直接连接远程 MySQL 数据库。 ### 环境要求 - **操作系统**: Windows 10/11(PowerShell) - **JDK**: 17 及以上(`java -version` 应显示 17+) - **网络**: 可访问 `mysql.tonaspace.com:3306` - **构建工具**: 无需单独安装 Maven(项目已提供 `mvnw.cmd`) ### 快速启动(默认连接远程库) 1) 打开 PowerShell,进入项目后端目录: ```powershell cd backend ``` 2) 启动后端(使用默认远程数据库配置): ```powershell .\mvnw.cmd spring-boot:run -DskipTests ``` > 说明:`application.properties` 已内置远程库默认值(`DB_URL/DB_USER/DB_PASSWORD`)。除非你的终端已设置了同名环境变量并想覆盖,否则无需再配置。 ### 可选:显式指定远程数据库(避免被旧环境变量覆盖) 如需显式声明一次连接信息(建议在怀疑本机已有旧变量时使用): ```powershell $env:DB_URL="jdbc:mysql://mysql.tonaspace.com:3306/partsinquiry?useSSL=false&allowPublicKeyRetrieval=true&serverTimezone=Asia/Shanghai&useUnicode=true&characterEncoding=utf8mb4&connectionCollation=utf8mb4_0900_ai_ci"; $env:DB_USER="root"; $env:DB_PASSWORD="TONA1234" .\mvnw.cmd spring-boot:run -DskipTests ``` ### 启动验证 - 浏览器访问:`http://localhost:8080/api/dashboard/overview` - 返回概览数据即表示服务与数据库连接正常 ### 按用户ID登录(用户端快速登录通道) > 仅在调试或特定场景启用。默认关闭。 1) 启用开关(临时): ```powershell $env:AUTH_ID_LOGIN_ENABLED="true"; .\mvnw.cmd spring-boot:run -DskipTests ``` 2) 请求示例: ```http POST http://localhost:8080/api/auth/login-by-id Content-Type: application/json { "userId": 2 } ``` 3) 成功返回:`{ token, expiresIn, user:{ userId, shopId, phone? } }` 4) 之后在调用业务接口时携带:`Authorization: Bearer ` ### 常见问题 - **端口被占用**:更换启动端口 ```powershell .\mvnw.cmd spring-boot:run -DskipTests -Dserver.port=8081 ``` - **远程库连不通**:检查网络是否放行 `mysql.tonaspace.com:3306`;如在公司网络,确认代理/防火墙策略已放通。 - **Java 未安装或版本不符**:安装 JDK 17,并在新开终端内确认 `java -version`。 ### 可选设置 - 占位图(非必需):若需启用 `/api/attachments/placeholder` ```powershell $env:ATTACHMENTS_PLACEHOLDER_IMAGE="C:\Users\Public\Pictures\placeholder.png" ``` - 前端联调 CORS(按需): ```powershell $env:CORS_ALLOWED_ORIGINS="http://localhost:5173" ``` ### 可选:打包为可执行 JAR ```powershell cd backend; .\mvnw.cmd clean package -DskipTests; java -jar .\target\demo-0.0.1-SNAPSHOT.jar ``` 以上即为在新电脑上启动后端并连接远程数据库的最小步骤。