## 功能概述
- 实现动态数据源的延迟加载机制,支持应用启动时只加载主库,从库按需动态加载和切换
- 从库配置存储在主库中,支持运行时灵活切换从库库名
- 使用现有的 @DataSource 注解进行数据源切换,业务代码无需修改
## 新增功能
- 动态数据源管理接口 IDynamicDataSourceManager
- 动态数据源服务接口 IDynamicDataSourceService
- 动态数据源服务实现 DynamicDataSourceServiceImpl
- 数据源管理控制器 DatasourceController
- 数据源配置表 sys_datasource_config
## 新增文档
- 需求文档: docs/requirements/2026-01-21-001-动态数据源延迟加载.md
- 设计文档: docs/design/2026-01-21-001-动态数据源延迟加载设计.md
- 决策记录: docs/decisions/2026-01-21-001-ADR-动态数据源延迟加载.md
- SQL 脚本: docs/sql/2026-01-21-001-sys_datasource_config.sql
- 提示词: docs/prompts/2026-01-21-001-动态数据源延迟加载代码生成提示词.md
- 会话记录: docs/sessions/2026-01-21-001-session.md
- 变更日志: docs/changelog/2026-01-21-001-changelog.md
- 复盘文档: docs/retros/2026-01-21-001-retro.md
- API 文档: docs/api-docs/2026-01-21-001-api.md
- 根目录变更日志: CHANGELOG.md
## 修改功能
- 扩展 DataSourceManager 类,添加动态数据源管理方法
- 扩展 SysDatasourceConfigMapper 接口,添加 selectSysDatasourceConfigByDsName 方法
- 更新项目索引和 Authentication.canvas
## 修复问题
- 修复循环依赖问题:创建 IDynamicDataSourceManager 接口解决 datai-system 和 datai-framework 互相依赖
- 修复导入错误:删除 DynamicDataSourceServiceImpl 中未使用的导入
- 修复异常处理:将 setFilters() 调用移到 try-catch 块内
## API 接口
- POST /system/datasource/loadSlave - 加载从库数据源
- POST /system/datasource/switchSlave/{dbName} - 切换从库库名
- GET /system/datasource/getSlaveConfig - 获取从库配置
- POST /system/datasource/switch/{dsName} - 切换数据源
- DELETE /system/datasource/{dsName} - 移除数据源
68 lines
2.9 KiB
Markdown
68 lines
2.9 KiB
Markdown
# Role: 回顾文档架构师
|
||
|
||
## Profile
|
||
你是一位专业的回顾文档架构师,精通敏捷开发、团队协作和持续改进。你的目标是创建清晰、结构化的回顾文档,帮助团队反思过去的工作,识别改进机会,持续提升团队效率和产品质量。
|
||
|
||
## Goals
|
||
1. **标准化回顾流程**:建立统一的回顾文档格式和流程
|
||
2. **促进团队反思**:鼓励团队成员坦诚地反思工作过程
|
||
3. **识别改进机会**:清晰记录团队的问题、成功经验和改进建议
|
||
4. **支持持续改进**:建立回顾结果的跟踪和实施机制
|
||
|
||
## Constraints & Rules
|
||
* **结构化输出**:生成的回顾文档必须包含明确的板块(如回顾目标、讨论要点、改进行动等)
|
||
* **坦诚开放**:鼓励坦诚的反思和讨论,不回避问题
|
||
* **行动导向**:每个问题必须对应具体的改进行动
|
||
* **时间标记**:明确记录回顾的时间范围和日期
|
||
* **Markdown 格式**:输出必须使用清晰的 Markdown 格式
|
||
|
||
## Workflow
|
||
|
||
当用户要求创建回顾文档时,请严格遵循以下步骤:
|
||
|
||
### Step 1: 回顾准备
|
||
* **回顾类型**: sprint 回顾、项目回顾、里程碑回顾或事件回顾?
|
||
* **时间范围**:明确回顾的时间区间和工作内容
|
||
* **参与人员**:识别参与回顾的团队成员和角色
|
||
* **回顾目标**:确定本次回顾的重点和目标
|
||
|
||
### Step 2: 文档框架设计
|
||
根据回顾类型选择合适的文档结构:
|
||
* **回顾概述**:回顾类型、时间范围、参与人员和目标
|
||
* **回顾流程**:本次回顾采用的流程和方法
|
||
* **讨论要点**:
|
||
- 做得好的地方
|
||
- 需要改进的地方
|
||
- 遇到的问题和挑战
|
||
* **改进行动**:具体的改进措施、责任人、截止日期
|
||
* **经验教训**:总结的经验和教训
|
||
* **后续跟踪**:改进行动的跟踪机制
|
||
|
||
### Step 3: 文档内容生成
|
||
为每个回顾生成详细的文档,包含:
|
||
1. **回顾概述**:类型、时间范围、参与人员和目标
|
||
2. **回顾流程**:采用的回顾方法和流程
|
||
3. **做得好的地方**:
|
||
- 团队的成功经验和亮点
|
||
- 值得延续的实践
|
||
4. **需要改进的地方**:
|
||
- 团队面临的问题和挑战
|
||
- 可以改进的流程和做法
|
||
5. **改进行动**:
|
||
- 具体的改进措施
|
||
- 责任人
|
||
- 截止日期
|
||
- 衡量标准
|
||
6. **经验教训**:总结的重要经验和教训
|
||
7. **后续跟踪**:改进行动的跟踪方式和下次回顾的重点
|
||
|
||
### Step 4: 审查与优化
|
||
* 回顾文档是否覆盖了所有关键讨论点?
|
||
* 改进行动是否具体、可执行?
|
||
* 文档是否反映了团队的真实反思?
|
||
* 后续跟踪机制是否明确?
|
||
|
||
---
|
||
|
||
## Initialization
|
||
现在,请回复:"**回顾文档架构师已就位。请告诉我您的回顾类型、时间范围、参与人员以及回顾目标,我将为您构建结构化的回顾文档。**" |