Files
wucaixing-backend/README.md

64 lines
3.7 KiB
Markdown
Raw Normal View History

2026-05-13 16:14:53 +08:00
# HOT交通安全管理清单平台 后端服务
**项目概览**
- 基于 `Spring Boot 3.5.7``Java 17` 的后端服务,提供系统管理、代码生成、工作流等能力。
- 项目坐标:`com.hotwj:hot-platform:1.0.0`pom.xml:15-17构件名`hot-backend`pom.xml:18
- 默认打包为可执行 `jar`build.finalName 为 `hot-platform`pom.xml:409-411
**技术栈**
- Web与容器`spring-boot-starter-web`Undertow 容器pom.xml:336-351`spring-webmvc`pom.xml:157-160
- ORM与数据源`mybatis-plus`pom.xml:162-175`dynamic-datasource`pom.xml:232-237
- 安全与认证:`Sa-Token`pom.xml:303-322JWT 集成。
- 缓存与并发:`redisson`pom.xml:284-289`lock4j`pom.xml:291-295`caffeine`pom.xml:297-301
- 文档与OpenAPI`springdoc-openapi`pom.xml:134-138、400-405
- 任务与调度:`snail-job` 客户端pom.xml:192-203
- 工作流:`warm-flow`pom.xml:377-386
- 存储与工具:`AWS S3 SDK`pom.xml:246-282`hutool`pom.xml:115-119`mapstruct-plus`pom.xml:121-125
- 其他:`velocity` 模板引擎pom.xml:358-363`ip2region`pom.xml:127-132`JustAuth` 社交登录pom.xml:330-334`jakarta.mail`pom.xml:223-230
**环境要求**
- `JDK 17+`pom.xml:26
- `Maven 3.9+`
- 数据库:`MySQL 8.0.x`pom.xml:58、72-77
**快速开始**
- 配置环境:`application.yml` 默认激活 `dev`src/main/resources/application.yml:73
- 开发运行:
- 使用 Maven 插件直接运行:`mvn spring-boot:run -Dspring-boot.run.profiles=dev`
- 或打包运行:
- `mvn clean package -DskipTests=true`
- `java -jar target/hot-platform.jar --spring.profiles.active=dev`
- 生产运行:`java -jar target/hot-platform.jar --spring.profiles.active=prod`
**构建说明**
- 默认打包跳过测试pom.xml:65-67如需执行测试`mvn clean package -DskipTests=false`
- 生成的可执行包名为 `hot-platform.jar`(由 `finalName` 决定pom.xml:409-411
- 支持 `spring-boot-maven-plugin` 重打包pom.xml:412-422可用 `spring-boot:run` 快速启动。
**配置要点**
- 端口与上下文:`server.port=8080``context-path=/`src/main/resources/application.yml:3-7
- Undertow 线程与缓冲配置src/main/resources/application.yml:8-21
- 日志:`logback-plus.xml`src/main/resources/application.yml:43
- 国际化:`spring.messages.basename=i18n/messages`src/main/resources/application.yml:69-71
- 模块扫描分组(系统/代码生成/工作流 等src/main/resources/application.yml:211-216
- 安全与令牌:`sa-token`src/main/resources/application.yml:98-108
- WebSocket/SSE`sse.enabled``websocket.enabled`src/main/resources/application.yml:239-259
- 工作流:`warm-flow.*`src/main/resources/application.yml:260-275
**常用端点**
- Actuator 健康检查:`/actuator/health`src/main/resources/application.yml:268-279
- OpenAPI 文档:`/v3/api-docs`Swagger UI`/swagger-ui/index.html`(由 springdoc 依赖启用pom.xml:400-405
**Docker 运行**
- 项目提供 `Dockerfile`Dockerfile:1-31基础镜像为 `JDK 17`Dockerfile:1
- 镜像构建前需确保 `target` 下存在打包产物。
- 当前 `Dockerfile``ADD` 指向 `ruoyi-admin.jar`Dockerfile:17如使用本项目构件请将其改为 `hot-platform.jar` 或生成同名文件。
**常用命令**
- 清理并打包:`mvn clean package -DskipTests=true`
- 执行测试:`mvn test`
- 启动(开发):`mvn spring-boot:run -Dspring-boot.run.profiles=dev`
- 启动Jar`java -jar target/hot-platform.jar --spring.profiles.active=dev`