摘要:创建一个java21 + springboot3.4 + mysql21 的一个用户系统,需要使用 JWT , 支持多语言,使用 swagger,这个用户系统都应该包含哪些内容,除了 注册登录功能,还可以包含哪些功能?先罗列功能。
我给AI的第一个问题是这样的:
创建一个java21 + springboot3.4 + mysql21 的一个用户系统,需要使用 JWT , 支持多语言,使用 swagger,这个用户系统都应该包含哪些内容,除了 注册登录功能,还可以包含哪些功能?先罗列功能。
AI给出的回答如下:
用户系统功能列表
接下来我的第二个提问:
如果要使用 claude-3.7 实现上面的功能,要怎样和 AI 描述才能分步骤的把每个模块都高质量的完成?
1. 项目规划与架构设计
先请求系统架构图:请设计一个Java 21 + Spring Boot 3.4 + MySQL 的用户系统架构图,包含用户认证、权限管理、多语言支持等核心模块。定义技术栈细节:
为这个用户系统确定具体技术组件:JWT实现方案、多语言框架选择、Swagger配置方法等。
2. 数据库设计
请求ER图和表结构:设计用户系统的数据库ER图,包含用户表、角色表、权限表、语言偏好表等核心表,并提供每个表的字段定义。
3. 核心功能模块开发
对每个模块,采用以下模式请求:
我想开发【模块名称】模块。请提供:
1. 该模块所需的实体类定义
2. Repository接口
3. Service层实现
4. Controller层API定义
5. 必要的DTO对象
6. 异常处理方案
例如:
我想开发用户认证模块。请提供:
1. User和Role实体类定义
2. UserRepository和RoleRepository接口
3. AuthService实现(注册、登录、JWT生成)
4. AuthController(注册、登录端点)
5. 认证相关DTO对象
6. 认证异常处理方案
4. 配置文件开发
请为用户系统生成以下配置文件:
1. application.yml(包含数据库、JWT、国际化配置)
2. SecurityConfig.java(Spring Security配置)
3. SwaggerConfig.java(API文档配置)
5. 多语言支持实现
请实现多语言支持功能:
1. 国际化配置类
2. 中英文资源文件示例
3. 语言切换控制器
4. 前端如何调用语言切换API的示例
6. 迭代与优化
每次获得代码后,进行以下迭代:
上面生成的代码有以下问题需要优化:
1. [问题描述]
2. [问题描述]
请提供优化后的代码。
1. 功能集成请求
请展示如何将用户认证模块与权限管理模块集成,包括:
1. 服务层交互方式
2. API调用流程
3. 数据一致性保障
2. 代码评审请求
请对以下用户服务代码进行评审,关注:
1. 安全性问题
2. 性能优化空间
3. 代码规范遵循情况
4. 可扩展性建议
[粘贴代码]
3. 测试方案生成
为用户认证模块生成:
1. 单元测试用例
2. 集成测试方案
3. API测试脚本(可使用Postman格式)
4. 文档生成
为已实现的用户模块生成技术文档,包括:
1. API使用说明
2. 数据流图
3. 安全注意事项
4. 扩展开发指南
一次专注一个模块,不要尝试一次性生成所有代码
提供上下文,告诉AI你已完成哪些部分
明确你的技术偏好,如命名规范、设计模式等
分享错误信息,当遇到问题时提供具体报错
迭代改进,基于实现反馈逐步优化
示例开发顺序
系统架构设计
数据库设计
基础用户实体与存储层
安全配置与JWT实现
用户认证功能
用户管理功能
角色与权限管理
多语言支持
集成Swagger文档
单元与集成测试
部署配置生成
按此顺序与Claude-3.7交互,可以确保系统各模块高质量、连贯性地实现。
之后我会把实现这个用户系统的每一步都写出来,供大家参考。我使用的是 Cursor 付费版本。
来源:小贺科技讲堂