Skip to content

Latest commit

 

History

History
124 lines (96 loc) · 3.17 KB

File metadata and controls

124 lines (96 loc) · 3.17 KB

Java 开发手册规范修复 - 测试验证日志

日期: 2026-02-21 任务: 修复 Java 开发手册规范问题并验证测试


1. 修复内容概览

1.1 新增文件

  • common/utils/DesensitizationUtils.java - 脱敏工具类
  • common/constants/CommonConstants.java - 通用常量类

1.2 修改文件

文件 修复内容
ChatController.java 敏感数据日志脱敏
MemoryChatController.java 敏感数据日志脱敏
SessionController.java 添加 sessionId 参数校验
ToolChatController.java 敏感数据日志脱敏
ChatServiceImpl.java 修复线程安全问题 (SimpleDateFormat)
DateTimeTool.java 提取魔法值为常量
CalculatorTool.java 修复异常处理 (使用 CustomException)
ToolChatManager.java 修复集合初始化未指定大小
ChatRequestDTO.java 添加校验注解

2. 接口测试结果

2.1 创建会话

  • 请求: POST /ai/session/create
  • 结果: ✅ 通过
  • 响应示例:
{
  "code": 200,
  "message": "success",
  "data": {
    "sessionId": "xxx-xxx-xxx"
  }
}

2.2 同步对话

  • 请求: POST /ai/chat
  • 结果: ✅ 通过
  • 验证点: 响应正常返回 AI 回复内容

2.3 流式对话

  • 请求: POST /ai/chat/stream
  • 结果: ✅ 通过
  • 验证点: SSE 流式返回数据正常

2.4 获取会话详情

  • 请求: GET /ai/session/{sessionId}
  • 结果: ✅ 通过
  • 验证点: 正确返回会话信息

2.5 删除会话

  • 请求: DELETE /ai/session/{sessionId}
  • 结果: ✅ 通过
  • 验证点: 会话删除成功

2.6 参数校验 (无效sessionId)

  • 请求: GET /ai/session/invalid-session-id
  • 结果: ✅ 通过
  • 验证点: 返回参数校验错误信息

2.7 Tool Calling (日期工具)

  • 请求: POST /ai/tool/chat
  • 内容: "今天日期是多少"
  • 结果: ✅ 通过
  • 验证点: AI 正确调用 DateTimeTool 返回日期

2.8 Tool Calling (计算器工具)

  • 请求: POST /ai/tool/chat
  • 内容: "计算 123 + 456"
  • 结果: ✅ 通过
  • 验证点: AI 正确调用 CalculatorTool 返回计算结果

2.9 工具列表

  • 请求: GET /ai/tool/list
  • 结果: ✅ 通过
  • 验证点: 正确返回可用工具列表

2.10 记忆对话

  • 请求: POST /ai/memory/chat
  • 结果: ✅ 通过
  • 验证点: 对话上下文记忆功能正常

3. 修复的规约问题

3.1 安全规约

  • 敏感数据日志脱敏 (用户输入内容)
  • 添加参数校验防止无效输入

3.2 编程规约

  • 修复 SimpleDateFormat 线程安全问题 (使用 DateTimeFormatter)
  • 提取魔法值为常量 (日期格式、时区)
  • 集合初始化指定大小

3.3 异常处理

  • 使用自定义异常替代直接抛出 Exception
  • 统一异常处理

4. 测试环境

  • JDK: 17.0.13
  • Spring Boot: 3.x
  • Spring AI: 1.1.2
  • 智谱 AI SDK: spring-ai-starter-model-zhipuai
  • 端口: 8080
  • Context Path: /ai

5. 结论

所有接口测试通过,Java 开发手册规范修复完成,功能正常运行。