用途 本技能面向 Spring Boot 应用开发,提供一套生产级最佳实践与模式参考,帮助开发者在开发、配置 Spring Boot 项目或使用 Spring 框架组件时遵循一致的工程规范。
主要能力 技能以核心原则和参考索引的形式组织内容:核心原则包括始终使用构造器注入以保证可测试性(禁止在字段上使用 @Autowired)、不向 API 层暴露 JPA 实体而使用 record 或投影接口、按功能而非按层组织包结构(如 order/、user/)、在请求 DTO 上使用 Bean Validation(@Valid、@NotBlank)、在服务层使用 @Transactional 并保持事务短小、使用参数化日志({})而非字符串拼接、不硬编码密钥而通过环境变量与 @ConfigurationProperties 管理、根据所需信心选择最窄的测试切片、通过 application.yml 与 @ConfigurationProperties 外部化配置、为每个服务添加 Actuator 与健康检查。 参考索引覆盖项目搭建(构建工具、starter、包结构)、依赖注入(构造器注入、Lombok、构造型注解)、配置(application.yml、@ConfigurationProperties、profile、密钥)、Web 层(REST 控制器、DTO、校验、异常处理)、服务层(业务逻辑、@Transactional)、数据层(仓库、查询、投影)、日志(SLF4J 模式)、安全(Spring Security、JWT、密码编码)、进阶(异步、缓存、API 版本、分页)、监控(Actuator、健康指示器)以及测试切片速查。
使用方式 技能提供 Maven 命令参考:使用 mvn spring-boot:run 运行应用;使用 mvn spring-boot:run -Dspring-boot.run.profiles=dev 以指定 profile 运行;使用 mvn clean package 构建项目;使用 mvn test 运行测试;使用 mvn test -Dtest=OrderServiceTest 运行指定测试。测试方面给出速查表:单元测试用 @ExtendWith(MockitoExtension.class) 测服务逻辑,Web 层用 @WebMvcTest 测控制器,数据层用 @DataJpaTest 测仓库,集成测试用 @SpringBootTest 测完整流程,REST 客户端用 @RestClientTest。技能还说明在需要 Spring Boot 最新信息时,可通过 Context7 集成先解析 libraryId(libraryName 为 "spring boot" 或 "spring framework"),再查询文档;在回答 Spring Boot API、配置或最佳实践问题前应先查阅 Context7 获取最新信息。更全面的测试指导(测试切片、MockMvcTester、Testcontainers、AssertJ)参见 java-springboot-testing 技能。
适用场景 适用于正在开发 Spring Boot 应用、需要 Spring Boot 最佳实践、配置 Spring Boot 项目或使用 Spring 框架组件的开发者。
限制 资料未提供具体版本要求、依赖清单、收费或授权信息,暂未提供相关内容。