mcpField
S
spring-boot-skill

spring-boot-skill

github.com/sivaprasadreddy开发194465 次安装2 周前更新
代码仓库

关于 spring-boot-skill

spring-boot-skill 为 Spring Boot 应用开发提供按领域组织的实践参考,面向开发者。涵盖配置、分层设计、模块化和多层测试,并按任务指向详细文档。

主要功能

  1. 01Maven 配置与代码组织
  2. 02JPA、服务层与 REST API
  3. 03Spring Modulith 与 Thymeleaf
  4. 04单元、切片及端到端测试
  5. 05Testcontainers 与 ArchUnit 测试

适用场景

  1. 01配置 Maven 插件并改善代码质量
  2. 02规划模块化 Spring Boot 包结构
  3. 03实现持久层、业务逻辑或 REST API
  4. 04为数据库和 Web 层设计测试

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/sivaprasadreddy/sivalabs-agent-skills --skill spring-boot-skill

安装后在 Claude Code 中输入/spring-boot-skill确认已加载。

包含的文件

除 SKILL.md 外,安装时一起下载的参考资料和脚本。

references/
archunit.md
code-organization.md
spring-boot-docker-compose.md
spring-boot-maven-config.md
spring-boot-rest-api-testing.md
spring-boot-webapp-testing-with-mockmvctester.md
spring-data-jpa.md
spring-modulith.md
spring-service-layer.md
spring-webmvc-rest-api.md
taskfile.md
testcontainers-wiring.md
testing-integration.md
testing-slices-persistence.md
testing-slices-web.md
testing-strategy.md
testing-unit-mocking.md
thymeleaf.md

详细介绍

Spring Boot 技能

开发 Spring Boot 应用时,请遵循以下实践。仅在处理相关领域时阅读链接的参考资料。

Maven pom.xml 配置

阅读 references/spring-boot-maven-config.md,了解 Maven pom.xml 配置,以及用于提升代码质量和改进测试的支持插件与配置。

包结构

阅读 references/code-organization.md,了解领域驱动、基于模块的包布局和命名约定。

Spring Data JPA

使用 references/spring-data-jpa.md 实现仓库层和实体层。

服务层

使用 references/spring-service-layer.md 在服务层实现业务逻辑。

Spring MVC REST API

使用 Spring MVC 实现 REST API,参阅 references/spring-webmvc-rest-api.md。

Spring Modulith

使用 Spring Modulith 构建模块化单体,参阅 references/spring-modulith.md。

Thymeleaf

如果使用 Thymeleaf 作为视图模板,请参阅 references/thymeleaf.md

测试

在互补的层级编写测试——单元测试、Spring 切片测试,以及至少一个端到端/冒烟测试;这些层级并非二选一。大多数涉及框架的测试应放在快速的切片层级(@SpringBootTest(classes = …) 或切片注解);完整上下文的 @SpringBootTest 应用于冒烟测试和请求级端到端测试。若想了解各层级为何互补,以及如何通过上下文缓存、整个测试套件共用一个容器来加快大型测试套件,请阅读 references/testing-strategy.md。

测试内容层级参考资料
业务/领域逻辑,不涉及框架单元测试(无 Spring 上下文)testing-unit-mocking.md
JPA / JDBC / JdbcClient / Spring Data JDBC / jOOQ 查询持久化切片 + Testcontainerstesting-slices-persistence.md
控制器、JSON 序列化或 REST 客户端Web 切片(@WebMvcTest/@JsonTest/@RestClientTest)testing-slices-web.md
少量组件协同、外部 HTTP(WireMock),或启动/请求级冒烟测试切片 @SpringBootTest(classes = …) 或冒烟测试testing-integration.md
通过真实端口调用完整 REST API、完整的 BaseIT 测试套件(RestTestClient)端到端测试spring-boot-rest-api-testing.md
渲染视图的控制器(MockMvcTester)Web 切片spring-boot-webapp-testing-with-mockmvctester.md
配置容器(@ServiceConnection/动态属性)—testcontainers-wiring.md

所有持久化和集成测试都使用 Testcontainers 和真实数据库(绝不使用内存中的 H2);关于 @ServiceConnection 与动态属性配置,请参阅 references/testcontainers-wiring.md。

编写 ArchUnit 测试

使用 ArchUnit 编写架构测试,请参阅 references/archunit.md

Spring Boot Docker Compose 支持

如需在本地开发中使用 Docker Compose 支持,请参阅 references/spring-boot-docker-compose.md。

Taskfile

使用 references/taskfile.md 更轻松地执行命令。

评论

支持 Markdown