Spring Boot 3.1.0-M1 现已发布。此版本包括 105 项增强功能、文档改进、依赖项升级和错误修复。值得注意的新功能包括:
- 文件和控制台的不同 log levels
如果你使用 Logback 或 Log4j2,现在可以选择为控制台日志和文件日志设置不同的 log levels。这可以通过配置属性logging.threshold.console
和logging.threshold.file
来设置。
- 最大 HTTP Response Header Size
如果你使用 Tomcat 或 Jetty,现在可以限制最大的 HTTP response header 大小。对于 Tomcat,你可以使用server.tomcat.max-http-response-header-size
属性;对于 Jetty,你可以使用server.jetty.max-http-response-header-size
。默认情况下,response headers 被限制在 8kb。
- 许多依赖升级
Spring Boot 3.1.0-M1 转移到几个 Spring 项目的新版本:
-
Spring Data 2023.0.0-M2
-
Spring Integration 6.1.0-M1
-
Spring Security 6.1.0-M1
以及一些第三方依赖更新:
-
Kafka 3.4.0
-
Kotlin 1.8.10
-
Liquibase 4.19.0
-
Micrometer 1.11.0-M1
-
Micrometer Tracing 1.1.0-M1
从 Spring Boot 3.0 升级
Apache HttpClient 4 的依赖管理
在Spring Framework 6中删除了对带有RestTemplate的Apache HttpClient 4的支持,而支持Apache HttpClient 5。Spring Boot 3.0包括对HttpClient 4和5的依赖性管理。继续使用HttpClient 4的应用程序在使用RestTemplate时可能出现难以诊断的错误。
Spring Boot 3.1 移除了 HttpClient 4 的依赖管理,以鼓励用户转而使用 HttpClient 5。
Servet 和 Filter Registrations
ServletRegistrationBean和FilterRegistrationBean类现在会在注册失败时出现IllegalStateException而不是记录一个警告。如果你需要 old behavior,则应该在你的 Registration Bean 上调用 setIgnoreRegistrationFailure(true)。
Spring Boot 3.1.0-M1 中的弃用
-
spring.kafka.streams.cache-max-size-buffering
已弃用,取而代之的是spring.kafka.streams.state-store-cache-max-size
更多详情可查看 release notes。