SuperAPI AI 工具集

spring-boot-4

编程与开发

查看项目

更新于 10-15 23:33

技能介绍

用途:面向 Spring Boot 4.0 的迁移与开发参考,汇总 Jakarta EE 10、Java 21+ 特性及常见迁移要点。

主要能力:

  1. Jakarta EE 迁移对照:javax.persistence/validation/servlet/annotation 改为 jakarta 对应包。
  2. 安全配置:使用 SecurityFilterChain Bean 替代已废弃的 WebSecurityConfigurerAdapter,示例含 CSRF 关闭、无状态会话、requestMatchers 授权与 OAuth2 JWT 资源服务器。
  3. 虚拟线程:application.yml 中设置 spring.threads.virtual.enabled: true。
  4. Record 作为 DTO,配合 @NotNull、@NotBlank、@Email 校验注解。
  5. ProblemDetail 异常处理:@ExceptionHandler 返回 ProblemDetail.forStatusAndDetail。
  6. 声明式 HTTP 客户端:接口用 @GetExchange,通过 HttpServiceProxyFactory 与 RestClientAdapter 创建客户端。
  7. @ConfigurationProperties 结合 Record,支持嵌套配置。
  8. 可观测性:@Observed 注解标注服务方法。
  9. TestContainers 集成:@SpringBootTest、@Testcontainers、@Container 与 @ServiceConnection 自动配置数据源。

反模式:WebSecurityConfigurerAdapter 已废弃;antMatchers 已移除,改用 requestMatchers;javax 导入不再可用。

适用场景:Spring Boot 4.0 项目迁移、新项目脚手架、Jakarta 命名空间替换、安全与测试配置参考。

限制:资料为速查式片段,未提供完整项目结构、依赖版本、构建配置或运行步骤;部分示例需结合具体项目调整。相关技能包括 apigen-architecture、testcontainers、gradle-multimodule。