- 项目文档:PRD、SRS、架构设计文档、前后端详细设计文档、架构设计规范 - 数据库脚本:用户创建和数据库初始化脚本 - 后端框架:Spring Boot 3.2 + MyBatis-Plus 3.5 基础架构 - 公共组件:统一返回结果、分页封装、全局异常处理 - 基础功能:链路追踪、API日志、健康检查接口 - 配置文件:application.yml.example 配置模板 - 开发规范:遵循架构设计规范,data目录存放MyBatis-Plus文件
4.0 KiB
4.0 KiB
工作日志服务平台 - 后端 API
项目说明
工作日志服务平台后端 API,基于 Spring Boot 3.2 + MyBatis-Plus 构建。
技术栈
- 框架: Spring Boot 3.2.2
- 数据库: MySQL 8.0
- 缓存: Redis 7.x
- ORM: MyBatis-Plus 3.5.5
- 工具库: Hutool 5.8.25
- API 文档: SpringDoc OpenAPI 2.3.0
环境要求
- JDK 21
- Maven 3.6+
- MySQL 8.0
- Redis 7.x
快速开始
1. 数据库初始化
步骤1: 创建数据库用户 (需要 root 权限)
cd /home/along/MyCode/wanjiabuluo/worklog
mysql -u root -p < sql/create_user.sql
执行后会创建:
- 用户:
worklog - 密码:
Wlog@123 - 权限: worklog 数据库的所有权限
步骤2: 初始化数据库结构和数据
mysql -u worklog -p < sql/init_database.sql
输入密码: Wlog@123
这将创建:
- 数据库:
worklog - 表:
sys_user,log_template,work_log - 初始数据: 默认管理员账号 (admin/admin123)
2. 配置文件
项目已包含开发环境配置文件:
src/main/resources/application.yml- 主配置src/main/resources/application-dev.yml- 开发环境配置src/main/resources/logback-spring.xml- 日志配置
数据库连接配置 (application-dev.yml):
spring:
datasource:
url: jdbc:mysql://localhost:3306/worklog?useUnicode=true&characterEncoding=utf8mb4&serverTimezone=Asia/Shanghai
username: worklog
password: Wlog@123
Redis 配置:
spring:
data:
redis:
host: localhost
port: 6379
password: zjf@123456
3. 编译项目
cd worklog-api
mvn clean compile
4. 运行项目
mvn spring-boot:run
或者打包后运行:
mvn clean package
java -jar target/worklog-api-1.0.0.jar
5. 访问服务
项目结构
src/main/java/com/wjbl/worklog/
├── WorklogApplication.java # 启动类
├── config/ # 配置类
│ ├── MybatisPlusConfig.java # MyBatis-Plus 配置
│ ├── TraceInterceptor.java # 链路追踪拦截器
│ ├── ApiLogAspect.java # API 日志切面
│ └── WebMvcConfig.java # Web MVC 配置
├── controller/ # 控制器
│ └── HealthController.java # 健康检查接口
├── service/ # 业务服务层
│ └── impl/
├── data/ # 数据访问层 (MyBatis-Plus)
│ ├── entity/ # 实体类
│ ├── mapper/ # Mapper 接口
│ └── service/ # DataService (数据服务)
│ └── impl/
├── dto/ # 数据传输对象
├── vo/ # 视图对象
├── enums/ # 枚举类
└── common/ # 公共组件
├── Result.java # 统一返回结果
├── PageResult.java # 分页结果
└── exception/ # 异常处理
├── BusinessException.java
└── GlobalExceptionHandler.java
日志
日志文件位于 logs/ 目录:
app.log- 应用日志sql.log- SQL 执行日志
所有日志都包含链路追踪信息 (traceId, spanId)。
开发规范
- 目录结构: 严格遵循架构设计规范,MyBatis-Plus 相关文件放在
data目录 - DataService 命名: XxxDataService / XxxDataServiceImpl
- 分层职责: Controller → Service → DataService → Mapper
- 主键策略: VARCHAR(20) 存储雪花算法 ID
- 统一返回: 使用 Result 封装响应
测试账号
- 管理员账号: admin
- 管理员密码: admin123
下一步
阶段一基础框架已完成,接下来将开发:
- 认证授权模块 (登录/登出)
- 人员管理模块
- 模板管理模块
- 工作日志模块
详见开发计划文档。