高级Java开发架构师

👤 艾利克斯 📦 v1.0.0 ⭐ 4.4 ⬇️ 343 下载
💻 开发编程 免费

📖 技能介绍


name: java-backend-dev description: 当用户基于 Spring Boot 开发、搭建、重构或审查后端 Java 项目时使用。覆盖从零创建项目骨架、生成 CRUD 模块代码(Controller / Service / Mapper / Entity / DTO / VO)、接入数据库(MyBatis / MyBatis-Plus / JPA)、接入中间件(Redis / RabbitMQ / Kafka / Security)、编写单元测试、生成接口文档、代码格式化与 Java 后端最佳实践。


Java 后端开发助手

概述

本 Skill 用于辅助构建和维护基于 Spring Boot 的后端 Java 项目,提供标准化的脚手架、代码生成、集成指引与审查清单,帮助项目保持结构清晰、可测试、可维护。

何时使用

当用户说出类似以下内容时触发本 Skill:

  • “帮我创建一个 … 的 CRUD 后端”
  • “生成一个 … 模块的代码”
  • “给这个项目加上 Redis / MQ / Security”
  • “写接口文档”
  • “梳理代码逻辑”
  • “优化代码 / 格式化代码 / 实现最佳实践”
  • “接入 MyBatis / JPA / 数据库”
  • “写单元测试”
  • “项目重构 / 代码审查”

工作流

按以下步骤处理每一次请求:

  1. 理解意图:判断当前任务是“搭建项目、生成模块、接入中间件、写测试、生成文档、重构、代码审查”中的哪一种。
  2. 检查项目:如果工作区已有项目,先读取 pom.xml / build.gradle、包结构和现有模块。
  3. 选择任务:跳转到下方对应的任务小节执行。
  4. 生成或修改代码:优先使用本 Skill 附带的模板与脚本,必要时手写补充代码。
  5. 验证:尽可能运行编译或单元测试;至少检查语法一致性与命名规范。
  6. 总结交付:告知用户已完成的内容、文件位置,以及仍需手动处理的事项。

任务一:创建 Spring Boot 项目骨架

执行步骤

  1. 确定构建工具:默认 Maven;用户明确要求时使用 Gradle。
  2. 确定 Spring Boot 版本:默认最新稳定 LTS(当前 3.2.x);用户明确要求 Spring Boot 2 时使用 2.7.x。
  3. 确定 Java 版本:Spring Boot 3 使用 17+,Spring Boot 2 使用 8/11。
  4. 根据需求确定需要引入的 Starter:Web、Validation、Data JPA / MyBatis、Redis、AMQP、Security 等。
  5. 使用 assets/templates/project/ 中的模板生成项目文件:
  6. pom.xml
  7. src/main/resources/application.yml
  8. 启动类
  9. README.md
  10. .gitignore
  11. 复制 assets/templates/common/ 中的 Result.javaGlobalExceptionHandler.javacommon 包。

验收标准

  • [ ] 项目可以通过 ./mvnw clean compile 编译通过(或用户确认不验证)。
  • [ ] pom.xml 包含 Web、Validation 等必要依赖,版本与 Spring Boot 版本兼容。
  • [ ] 存在启动类、application.yml、统一返回包装类 Result<T>、全局异常处理类。
  • [ ] README.md 包含运行与打包命令。

任务二:生成 CRUD 模块

执行步骤

  1. 明确模块名称(如 userorder)、实体字段、主键类型(默认 Long)。
  2. 选择持久层方案:MyBatis-Plus / MyBatis / JPA;用户未说明时默认使用 MyBatis-Plus。
  3. 调用 scripts/generate_crud_module.py 生成以下文件:
  4. entity/XXX.java
  5. mapper/XXXMapper.java(JPA 时为 repository/XXXRepository.java
  6. service/XXXService.java
  7. service/impl/XXXServiceImpl.java
  8. controller/XXXController.java
  9. dto/XXXDTO.java
  10. vo/XXXVO.java
  11. src/test/java/.../service/XXXServiceTest.java
  12. 如使用 MyBatis,在 src/main/resources/mapper/ 下添加对应 XML 映射文件。
  13. 检查 Controller 是否使用了统一 Result<T> 返回,DTO 是否添加校验注解。

验收标准

  • [ ] 生成的类包路径正确,命名符合驼峰规范。
  • [ ] Controller 提供 POST / GET / PUT / DELETE 四个基本接口,URL 使用复数名词。
  • [ ] DTO 包含校验注解,VO 与 Entity 分离,Service 通过 BeanUtils 或 MapStruct 转换。
  • [ ] 项目可以通过编译,无 import 错误。

任务三:接入中间件

Redis

执行步骤

  1. 添加 spring-boot-starter-data-redis 依赖。
  2. application.yml 中配置 spring.data.redis.*
  3. 根据场景提供 StringRedisTemplateCacheManager + @Cacheable 用法。
  4. 如需自定义序列化,生成 RedisConfig.java

验收标准

  • [ ] 依赖和配置已添加,配置项包含 host、port、database、password(如有)。
  • [ ] 提供至少一个可直接使用的 Redis 操作示例或缓存注解示例。

消息队列(RabbitMQ / Kafka)

执行步骤

  1. 添加对应 Spring Starter 依赖。
  2. application.yml 中配置连接信息。
  3. 生成生产者、消费者、配置类模板。

验收标准

  • [ ] 依赖、连接配置、生产者、消费者代码均已生成。
  • [ ] 队列 / Topic 名称可配置或已明确命名。

Spring Security

执行步骤

  1. 添加 spring-boot-starter-security 依赖。
  2. 根据 Spring Boot 版本生成 SecurityConfig.java(Spring Boot 3 使用 filter chain,2.7 使用 WebSecurityConfigurerAdapter)。
  3. 如用户要求 JWT,额外生成 JWT 工具类、登录接口、Token 过滤器。

验收标准

  • [ ] 安全配置类可编译,符合对应 Spring Boot 版本的写法。
  • [ ] 如包含 JWT,则提供 Token 生成、解析、校验完整流程。

任务四:编写单元测试

执行步骤

  1. Controller 层:使用 @WebMvcTest + MockMvc
  2. Service 层:使用 @ExtendWith(MockitoExtension.class) + Mockito。
  3. 持久层:使用 @DataJpaTest@MybatisPlusTest
  4. 断言使用 AssertJ,assertThat(...) 风格。

验收标准

  • [ ] 至少生成 Controller 或 Service 层一个可运行的测试类。
  • [ ] 测试覆盖正常路径,断言具体,不只是验证无异常。
  • [ ] 测试可以单独运行,不依赖真实外部服务。

任务五:生成接口文档

执行步骤

  1. 优先调用 scripts/generate_api_doc.py 扫描 Controller 并输出 Markdown 文档。
  2. 如用户需要在线文档,建议集成 springdoc-openapi,并在 Controller 上添加 @Operation@Parameter 等注解。

验收标准

  • [ ] 生成的 Markdown 文档包含每个接口的 HTTP 方法、路径、返回类型、参数说明。
  • [ ] 文档路径明确告知用户。

任务六:代码审查 / 重构 / 最佳实践

执行步骤

  1. 加载 references/java_backend_best_practices.md 作为审查清单。
  2. 检查以下问题:
  3. 是否违反分层架构(Controller 直接操作 Mapper / Repository)。
  4. 是否缺少 DTO / VO 分离。
  5. 是否存在 N+1 查询风险。
  6. 是否有统一异常处理。
  7. 日志是否规范,是否泄露敏感信息。
  8. Lombok 使用是否一致。
  9. DTO 是否使用校验注解。
  10. 给出“修改前 / 修改后”的代码片段,并说明理由。

验收标准

  • [ ] 输出至少 3 条具体审查意见,每条附带修改建议。

    来源于7w4.net。

  • [ ] 审查覆盖架构、异常、校验、日志、安全中至少 3 个维度。
  • [ ] 用户确认修改点清晰可执行。

资源说明

scripts/

  • generate_crud_module.py:根据模块名、字段、持久层方案生成完整 CRUD 代码与测试桩。
  • generate_api_doc.py:从 Controller 源文件提取接口信息并生成 Markdown 文档。
  • analyze_java_project.py:分析项目结构、依赖与模块清单。

references/

  • java_backend_best_practices.md:分层架构、命名规范、异常处理、校验、日志、安全、测试等最佳实践清单。
  • spring_boot_dependencies.md:常用 Spring Boot Starter 与第三方库版本对照表。

assets/templates/

  • project/:最小可用的 Spring Boot 项目骨架(pom.xmlapplication.yml、启动类、.gitignoreREADME.md)。
  • common/:通用 Result<T> 返回包装与 GlobalExceptionHandler 模板。

默认约定

  • 构建工具:Maven。
  • Spring Boot 版本:3.2.x(Java 17)。
  • 持久层:默认 MyBatis-Plus;切换为 JPA 时需先询问用户。
  • 统一返回:Result<T>,包含 codedatamessage
  • REST 规范:URL 使用复数名词,HTTP 动词表示动作,请求/响应均为 JSON。
  • 金额字段:使用 BigDecimal,禁止使用 float / double

🤖 AI 评测

这个 Skill 质量中等偏上,功能覆盖面广,能帮助完成项目搭建、代码生成、中间件接入等工作。文档描述详细,步骤清晰。但有个重要问题:说明文档提到的一些模板文件实际上不存在,可能导致部分功能无法使用。如果开发者能补充这些缺失内容,这个 Skill 会更加实用可靠。

📊 多维度评分

适应性4.2
规范性4.3
有效性4.5
可靠性4.2
可信度4.8

📁 包含文件 (6 个)

📄 SKILL.md 8.5 KB
📄 references/java_backend_best_practices.md 2.5 KB
📄 references/spring_boot_dependencies.md 2.8 KB
📄 scripts/analyze_java_project.py 4.1 KB
📄 scripts/generate_api_doc.py 3.4 KB
📄 scripts/generate_crud_module.py 11.1 KB