refactor: 重构安全架构,提取通用安全模块到common-security

- 将JwtAuthenticationFilter、JwtUtil、JwtProperties从auth服务移至common-security模块
- 新增common-security通用安全模块,提供JWT认证、权限验证等核心安全功能
- 重命名SecurityConfiguration为AuthSecurityConfiguration,使用common-security的filter
- 新增JacksonConfiguration配置类,统一JSON序列化配置
- 新增头像更新功能AvatarUpdateRequestDTO
- 移除冗余的UserLoginResponseDTO类
- 更新各服务模块的依赖配置以引入common-security模块
- 新增README.md项目说明文档

Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
2026-01-12 01:54:21 +08:00
parent 8bd56a6001
commit a4575cebd4
47 changed files with 704 additions and 317 deletions

78
README.md Normal file
View File

@@ -0,0 +1,78 @@
# AIOJ - Online Judge System
基于 Spring Boot 微服务架构的在线判题系统。
## 服务端口配置
| 服务名称 | 端口 | 说明 |
|---------|------|------|
| Gateway | 18085 | API 网关服务 |
| Auth Service | 18081 | 认证授权服务 |
| User Service | 18082 | 用户服务 |
| UPMS | 18083 | 用户权限管理服务 |
| File Service | 18066 | 文件服务 |
## 模块结构
### 核心模块 (aioj-backend-common)
- **aioj-backend-common-bom** - 依赖管理
- **aioj-backend-common-core** - 核心工具类
- **aioj-backend-common-feign** - Feign 客户端配置
- **aioj-backend-common-log** - 日志框架
- **aioj-backend-common-mybatis** - MyBatis 扩展
- **aioj-backend-common-starter** - 自动配置启动器
### 服务模块
- **aioj-backend-gateway** - API 网关
- **aioj-backend-auth** - 认证服务
- **aioj-backend-user-service** - 用户服务
- **aioj-backend-upms** - 权限管理服务
- **aioj-backend-file-service** - 文件服务
- **aioj-backend-judge-service** - 判题服务(开发中)
- **aioj-backend-question-service** - 题库服务(开发中)
- **aioj-backend-ai-service** - AI 服务(开发中)
## 快速开始
### 构建项目
```bash
mvn clean compile
```
### 运行服务
```bash
# 运行网关
mvn spring-boot:run -pl aioj-backend-gateway
# 运行认证服务
mvn spring-boot:run -pl aioj-backend-auth
# 运行用户服务
mvn spring-boot:run -pl aioj-backend-user-service
```
### 访问地址
- Gateway: http://localhost:18085
- Auth Service: http://localhost:18081/api
- User Service: http://localhost:18082/api
- UPMS: http://localhost:18083/api
- File Service: http://localhost:18066/api
## 常用命令
### 代码格式化
```bash
mvn spring-javaformat:apply
```
### 运行测试
```bash
mvn test
```