2.3 KiB
2.3 KiB
TASK003 - 基础配置和公共组件
任务信息
- 任务编号: TASK003
- 任务名称: 基础配置和公共组件
- 版本: V1.0
- 状态: ✅ 完成
任务描述
实现项目的基础配置和公共组件,包括统一响应格式、全局异常处理、请求参数验证、跨域配置、JWT工具类、Redis配置等公共功能模块。
验收标准清单
- 创建统一响应格式类(ApiResponse) - 完成,支持成功/失败响应和各种错误类型
- 实现全局异常处理器(GlobalExceptionHandler) - 完成,覆盖所有异常类型和错误码
- 配置参数验证注解和自定义验证器 - 完成,包括@ValidEmail、@ValidPassword等
- 实现JWT工具类(生成、验证、解析token) - 完成,支持token生成、验证、黑名单机制
- 配置Redis连接和序列化器 - 完成,包括缓存管理器和序列化配置
- 创建通用工具类(时间处理、字符串工具、加密工具等) - 完成TimeUtil、StringUtil、CryptoUtil
- 实现自定义注解(如@RequireAuth用于权限验证) - 完成@RequireAuth、@RequestLog、@RateLimit等
- 配置Web MVC相关设置 - 完成CORS、静态资源、拦截器配置
- 创建常量类和枚举类 - 完成Constants、ErrorCode枚举
- 实现分页工具类 - 完成PageUtil,支持分页查询和响应转换
注意事项
- ApiResponse格式需严格按照API文档中的统一响应格式:error、body、message、success字段
- 异常处理需要覆盖所有API文档中定义的错误码(1001-5002)
- JWT工具类需要支持token生成、验证、刷新和黑名单机制
- 参数验证需要支持邮箱格式、密码强度、文件大小等自定义规则
- Redis配置需要支持session存储和缓存功能
- 工具类方法需要线程安全
- 时间处理统一使用时间戳格式
- 密码加密使用BCrypt算法
- 文件上传需要支持类型验证和大小限制
- 异常信息不应暴露敏感的系统内部信息
- 添加请求日志记录功能
- 配置合理的超时时间和重试机制
相关文件
- src/main/java/com/lxy/hsend/common/
- src/main/java/com/lxy/hsend/config/
- src/main/java/com/lxy/hsend/util/
- src/main/java/com/lxy/hsend/exception/
- src/main/java/com/lxy/hsend/annotation/