Files
ski-server/README.md
2025-12-01 08:12:11 +08:00

66 lines
2.0 KiB
Markdown

# 项目架构
## 概述
本项目是一个基于 Spring Boot 的多模块 Maven 项目,采用分层架构设计,旨在提供一个可扩展和可维护的应用程序结构。项目使用 Java 21 版本,并集成了 Spring Security、MyBatis 等主流框架。
## 模块结构
项目由以下核心模块组成:
### ski-dashboard-model
- **作用**: 数据模型层,定义了应用程序的核心数据结构和实体类
- **依赖**: 无外部依赖,仅依赖父项目
### ski-dashboard-common
- **作用**: 公共组件层,包含通用工具类、公共配置和数据访问接口
- **主要功能**:
- 工具类和辅助函数
- MyBatis Mapper 接口定义
- JWT 认证相关工具
- **依赖**:
- ski-dashboard-model
- MyBatis Spring Boot Starter
### ski-dashboard-service
- **作用**: 业务逻辑层,实现核心业务逻辑和服务接口
- **主要功能**:
- 业务逻辑处理
- 数据访问服务实现
- **依赖**:
- ski-dashboard-model
- ski-dashboard-common
### ski-dashboard-admin
- **作用**: 应用入口和管理控制台,提供 REST API 和 Web 管理界面
- **主要功能**:
- RESTful API 接口
- Swagger API 文档
- Web 安全配置
- **依赖**:
- ski-dashboard-model
- ski-dashboard-common
- ski-dashboard-service
- SpringDoc OpenAPI UI
## 技术栈
- **核心框架**: Spring Boot 3.5.7
- **编程语言**: Java 21
- **安全框架**: Spring Security
- **Web 框架**: Spring Web MVC
- **持久层框架**: MyBatis
- **数据库**: PostgreSQL
- **会话管理**: Spring Session JDBC
- **API 文档**: SpringDoc OpenAPI
- **JWT 认证**: java-jwt 4.4.0
- **构建工具**: Maven
- **代码简化**: Lombok
## 架构特点
1. **分层架构**: 清晰分离数据模型、公共组件、业务逻辑和应用入口
2. **模块化设计**: 各模块职责明确,便于独立开发和维护
3. **松耦合**: 模块间通过接口依赖,降低耦合度
4. **可扩展性**: 易于添加新功能模块或替换现有组件
5. **安全性**: 集成 Spring Security 和 JWT 实现认证授权