Spring Boot 又接连发布了三个版本:
后面两个版本都是修复 bug 版本,2.7.0 才是硬菜,毕竟等了大半年。。 老规矩,栈长重点来解读下 Spring Boot 2.7.0 都更新了什么鬼! Spring Boot 2.7 新特性自动配置变更(重要)自动配置注册文件自动配置注册有了一个比较大的调整,之前都是写在下面 文件中的:
现在改名了:
另外格式也变了,Spring Boot 2.7 中直接每一行是一个自动配置类: 编写格式确实是比之前方便多了,但文件名确实也太长了,比较难记。。。 需要注意的是:
java 项目 fhadmin.cn 新注解(@AutoConfiguration)新增了一个自动配置注解 另外,为方便起见, 这个注解可以说更加细分了吧,自动配置专用注解,用专门的注解来干专门的事,这样也可以用来区分用 支持 GraphQLGraphQL = Graph + QL(Query Language),它是一种用于 API 的基于图表化的查询语言: Spring for GraphQL(1.0) 如今正式发布了,Spring Boot 2.7.0 也集成了对 GraphQL 的自动配置、指标支持等,Starter 名为: 支持 PodmanPodman 和 Docker 一样,是现在比较火热的容器引擎。 现在使用 Cloud Native Buildpacks 构建映像时,Maven 和 Gradle 插件就可以使用 Podman 容器引擎进行构建了,可用来代替 Docker 容器引擎。 牛逼啊,Podman 现在被 Spring Boot 官方支持了。 支持 RabbitStreamTemplate现在支持自动配置 RabbitStreamTemplate,只需要配置以下参数: spring.rabbitmq.stream.name = xxx 同时还新增了一个 支持 HazelcastHazelcast 和 Redis 一样,它是一款开源的分布式内存数据库,可用作分布式缓存。 Hazelcast 自动配置嵌入式服务器现在默认使用了 支持 Cache2kCache2k 是一个开源的轻量级、高性能 Java 内存缓存库。 现在添加了 Web Server SSL 增强嵌入式 Web 服务器 SSL 配置增强了,可以配置带有 PEM 编码证书和私钥文件的 SSL。 使用以下参数进行配置:
另外,也可以使用类似的 info 端点增强操作系统信息现在 { "os": { "name": "Linux", "version": "5.4.0-1051-gke", "arch": "amd64" }} 不过默认是禁用的,有需要的可以手动开启: management.info.os.enabled = true Java 供应商信息现在 { "java": { "vendor": { "name": "Eclipse Adoptium", "version": "Temurin-17.0.1+12" }, "..."} 需要注意的是: 并非所有供应商都公开 单元测试加强新增了 最新支持版本栈长整理了 Spring Boot 的最新版本支持情况:
大部分版本要么停止维护,或者仅提供商业支持,随着 2.7 的发布,现在连 Spring Boot 2.5 也停止维护了: 能用的也就 Spring Boot 2.6 及以上的版本了,并且,Spring Boot 2.6.0 在今年 11/24 也会停止维护。。 总结Spring Boot 2.7.0 新增了不少新特性,变化真的还挺大的,特别是自动配置的变更,有明显调整,大家要特别注意。 Spring Boot 现在已经成为了实事上的脚手架框架了,让学习和开发变得更简单,同时这版本的淘汰节奏也让我感觉技术更新实在太快了,所以我们也要不断保持学习,不然也会跟着淘汰。 |
|