SpringBoot工程师Skill spring-boot-engineer

Spring Boot 工程师是专注于使用Spring Boot 3+框架构建企业级Java应用程序和微服务的专家。核心技能包括微服务架构设计、REST API开发、Spring Security安全配置、Spring Data数据访问、响应式编程(WebFlux/Project Reactor)、云原生模式(Spring Cloud)以及现代Java特性如虚拟线程的应用。适用于需要高性能、可扩展、云就绪的后端系统开发场景。 关键词:Spring Boot, Java微服务, 云原生, 响应式编程, REST API, Spring Security, Spring Cloud, 虚拟线程, 后端开发, 企业级应用

后端开发 33 次安装 823 次浏览 更新于 2/23/2026

name: spring-boot-engineer description: Spring Boot 3+、微服务和云原生Java专家。专长于虚拟线程、Spring Cloud和响应式技术栈。

Spring Boot 工程师

目的

提供使用Spring Boot 3+构建生产级Java应用程序的专业知识。专长于微服务架构、云原生模式、响应式编程,以及利用现代Java特性包括虚拟线程。

何时使用

  • 构建Spring Boot应用程序和微服务
  • 使用Spring Web或WebFlux实现REST API
  • 配置Spring Security进行身份验证/授权
  • 设置Spring Data JPA、MongoDB或R2DBC
  • 实现Spring Cloud模式(配置、网关、熔断器)
  • 在Spring Boot 3.2+中使用虚拟线程
  • 使用Project Reactor构建响应式应用程序
  • 使用Spring Kafka或RabbitMQ集成消息传递

快速开始

在以下情况调用此技能:

  • 构建Spring Boot应用程序和微服务
  • 使用Spring Web或WebFlux实现REST API
  • 配置Spring Security进行身份验证/授权
  • 设置Spring Data仓库
  • 实现Spring Cloud模式

不要在以下情况调用:

  • 没有Spring的通用Java问题 → 使用java-architect
  • Kubernetes部署 → 使用kubernetes-specialist
  • 数据库设计 → 使用database-administrator
  • 前端开发 → 使用相应的前端技能

决策框架

Spring Boot任务?
├── API开发 → Spring Web(阻塞式) vs WebFlux(响应式)
├── 数据访问 → JPA(关系型) vs MongoDB(文档型) vs R2DBC(响应式)
├── 安全 → OAuth2/OIDC vs JWT vs 基本认证
├── 消息传递 → Kafka(高吞吐) vs RabbitMQ(路由)
├── 服务通信 → REST vs gRPC vs 消息传递
└── 配置 → Spring Cloud Config vs Kubernetes ConfigMaps

核心工作流

1. 微服务开发

  1. 使用Spring Initializr初始化项目并添加所需启动器
  2. 定义领域模型和DTO
  3. 使用Spring Data实现仓库层
  4. 创建包含业务逻辑的服务层
  5. 构建具有适当错误处理的REST控制器
  6. 添加验证、安全和可观测性
  7. 编写单元、集成和契约测试
  8. 配置云部署(健康检查、指标、配置)

2. Spring Security配置

  1. 添加spring-boot-starter-security依赖
  2. 定义安全过滤器链配置
  3. 配置认证提供者(JWT、OAuth2、LDAP)
  4. 为端点设置授权规则
  5. 如果需要,实现自定义UserDetailsService
  6. 添加CORS和CSRF配置
  7. 彻底测试安全配置

3. 响应式应用程序开发

  1. 使用WebFlux替代Spring Web
  2. 配置R2DBC用于响应式数据库访问
  3. 从控制器和服务返回Mono/Flux
  4. 使用WebClient进行非阻塞HTTP调用
  5. 实现背压处理
  6. 使用StepVerifier进行测试
  7. 使用支持响应式的可观测性工具进行监控

最佳实践

  • 使用构造函数注入而非字段注入
  • 通过配置文件和ConfigMaps外部化配置
  • 使用@ControllerAdvice实现适当的异常处理
  • 启用Actuator端点用于健康检查和指标
  • 使用Testcontainers进行集成测试
  • 利用虚拟线程处理I/O密集型工作负载(Spring Boot 3.2+)

反模式

  • 字段注入 → 为可测试性使用构造函数注入
  • 在响应式链中阻塞 → 保持响应式管道非阻塞
  • 捕获通用异常 → 适当处理特定异常
  • 硬编码配置 → 使用环境变量外部化配置
  • 缺少健康检查 → 始终暴露Actuator健康检查端点