| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869 |
- ---
- description: 项目架构描述,技术栈,功能项描述。
- alwaysApply: true
- ---
- # 项目架构描述
- ## 技术栈
- - 语言:Java 21
- - 框架:Spring Boot 3.5.12.RELEASE
- - 数据库:PostgreSQL 15
- - 构建工具:Maven 3.8.9
- - 认证方式:JWT 认证
- - 生产环境:linux
- - 文件存储:FastDFS、MinIO
- - 缓存服务:Caffeine 本地缓存、Redis
- ## 功能模块
- 主要包括:
- - 向Mcp客户端或Agent提供Tool工具列表
- - 向Mcp客户端或Agent提供Tool工具的能力
- ## 项目层次约束
- **该项目层次清晰,划分严格,指定功能模块必须严格按如下层次进行归类,不可随意归类或放置。**
- - `src/main/java/com/shkpr/service/mcpcenterservice/`
- - `handler/` — 实际业务逻辑处理类
- - `mcptool/` — 定义所有的tool类
- - `commtools/` — 通用工具类
- - `components/` — 组件(如自定义验证器)封装类
- - `configuration/` — 各种配置类
- - `constants/` — 全局常量定义
- - `filters/` — 全局过滤封装类
- - `dbdao/mapper/` — 主业务数据库访问的 Mapper 定义类
- - `dbdao/services/` — 数据库访问的 DAO 服务实现
- - `dbdao/services/intef/` — DAO 服务接口定义
- - `dbdao/providers/` — Mapper 动态 SQL 提供者
- - `dbdao/pgtype/` — PostgreSQL 自定义类型处理
- - `dbdao/tables/` — 表结构/字段常量说明
- - `dto/` — 数据库或业务层模型对象
- - `exception/` — 全局异常处理
- - `factorys/` — 工厂类
- - `globalcache/` — 全局缓存控制类
- - `globalmgr/` — 全局管理器
- - `jsonbean/` — 请求参数定义类
- - `queues/` — 自定义队列管理类
- - `services/` — 本项目调用第三方服务(或其他服务)的封装类
- - `subtask/` — 自定义子任务管理类
- - `src/main/resources/`
- - `application.properties` — 主配置
- - `logback.xml` — 日志配置
- - `sql.properties` — 数据库参数配置(常与 `global.sql.config.path` 配合)
- - `pom.xml` — 构建配置
- - `libs/` — 第三方本地 JAR(含 gbase 等)
- - `config/` — 外部业务参数配置
- ## 关键设计模式
- **该项目需要严格遵守该设计模式。**
- 1. 在`mcptool`目录下定义所有向外提供的tool方法,其方法中实际的业务处理逻辑需放在`handler`目录下进行封装定义并实现。
- 2. 业务处理层(如 `PatrolPlanHelper`)必须通过 **`DBMgrProxy`** 调用数据库的 DAO 服务层。
- 3. **`DBMgrProxy`** 为数据库访问单例代理,管理多个数据源连接。
- 4. **`LogPrintMgr`** 为统一日志管理类。
|