距离《重磅:Spring Boot 2.0 正式发布!》已经过去大半年了,而 Spring Boot 2.1.0 在 10 月底就发布了,我们来看下 Spring Boot 2.1.0 都更新了什么,每一个 Java 技术人都值得关注。

栈长其实早就看到了更新了,现在才有时间来更新下。

1、第三方类库升级

  • Hibernate 5.3
  • Micrometer 1.1
  • Reactor Californium
  • Spring Data Lovelace
  • Spring Framework 5.1
  • Tomcat 9
  • Undertow 2

主要就更新了这些类库,其实远不止这些。

2、性能提升

1)应用程序性能

改进性能作为 Spring Boot 团队持续努力的一部分,性能提升在 Spring Boot 2.1 中取得了一些重大进展。

现在 Spring Boot 2.1+ 应用程序启动速度变得更快,并且消耗的内存更少,这在内存非常稀缺的应用环境中尤其重要。

2)异步引导 Hibernate

在 Spring Boot 2.1 中还采用了 Spring 框架和 Spring Data JPA 框架对 Hibernate 异步引导的支持。

如果你使用了 Spring Data JPA 框架,并设置了下面的参数,那么 Hibernate 将在一个独立的线程中启动,而其他应用程序的启动是同时并行的。

spring.data.jpa.repositories.bootstrap-mode=deferred

3、支持 Java 11

随着 Spring 5.1 对 Java 11 的支持,Spring Boot 2.1 现在也可以支持 Java 11 了,同时还可以与 Java 8 兼容。

4、支持参数数据大小

当你在 application.properties 配置文件配置参数时,如果一个参数的值需要表示成字节数或者其他的单位,你可以为参数的值指定单位(如:10MB),就像在 Spring Boot 2.0 中对 Duration 的支持一样,它可以转换成为:org.springframework.util.unit.DataSize 类。

所有支持的单位可以看这个类:

org.springframework.util.unit.DataUnit

5、执行端点

1)添加了两个新端点

Spring Boot 2.1 中添加了两个新的执行端点。

  • /actuator/caches:提供应用程序的缓存管理信息。
  • /actuator/integrationgraph:提供对 Spring 集成的组件图形化展现。

2)健康端点加强

健康端点允许访问一个独立的组件健康状态,如:/actuator/health/db 将只执行 db 的健康端点。

6、度量

度量这块,除了升级到 Micrometer 1.1,还增加了用于导出到 AppOptics, Humio 和 KariosDB 的自动配置。

度量标准覆盖率也得到了改进,包括:

  • Hibernate metrics
  • Spring Framework’s WebClient
  • Kafka consumer metrics
  • Log4j2 metrics
  • Jetty server thread pool metrics
  • Server-side Jersey HTTP request metrics

7、其他更新

在版本更新说明中,还有大量的其他更改和提升,你也可以找到计划在下一个版本要删除的类和方法的列表。

最后

Spring Boot 团队想借此机会,再次感谢所有的用户和贡献者,现在已经有超过 500 多人向 Spring Boot 提交代码,并且有超过 19,000 多次提交。

如果你有更好的想法想要贡献给 Spring Boot,可以去 Spring Boot 官方仓库进行代码提交。

更新说明:https://spring.io/blog/2018/10/30/spring-boot-2-1-0

栈长现在还在用 2.0,你们用的 Spring Boot 什么版本呢?你们期待 Spring Boot 添加什么样的功能?欢迎留言!

关注Java技术栈,获取更多干货推送!

本文原创首发于微信公众号:Java技术栈(id:javastack),关注公众号在后台回复 "boot" 可获取更多,转载请原样保留本信息。

Spring Boot 2.1.0 已发布,7 个重大更新!的更多相关文章

  1. (转)Spring Boot 2 (九):【重磅】Spring Boot 2.1.0 权威发布

    http://www.ityouknow.com/springboot/2018/11/03/spring-boot-2.1.html 如果这两天登录 https://start.spring.io/ ...

  2. 【重磅】Spring Boot 2.1.0 权威发布

    如果这两天登录 https://start.spring.io/ 就会发现,Spring Boot 默认版本已经升到了 2.1.0.这是因为 Spring Boot 刚刚发布了 2.1.0 版本,我们 ...

  3. Spring Boot 2.7.0发布,2.5停止维护,节奏太快了吧

    这几天是Spring版本日,很多Spring工件都发布了新版本, Spring Framework 6.0.0 发布了第 4 个里程碑版本,此版本包含所有针对 5.3.20 的修复补丁,以及特定于 6 ...

  4. Spring Boot 2.5.0 发布:支持Java16、Gradle 7、Datasource初始化机制调整

    今年520的事情是真的多,娱乐圈的我们不管,就跟DD一起来看看 Spring Boot 2.5.0 的发布吧!看看都带来了哪些振奋人心的新特性和改动! 主要更新 支持 Java 16 支持 Gradl ...

  5. Spring Boot 2.4.0 发布,配置文件重大调整,不要乱升级!!

    前段时间 Spring Boot 2.4.0 发布了,栈长作了一个新特性全盘解读,其中介绍了一个很重要的变革,那就是配置文件. 配置文件可是每个框架的核心,不得不搞清楚,所以,这篇栈长就带大家深入实战 ...

  6. Spring Boot 2.2.0新特性

    Spring Boot 2.2.0 正式发布了,可从 repo.spring.io 或是 Maven Central 获取. 性能提升   Spring Boot 2.2.0 的性能获得了很大的提升. ...

  7. Spring Boot 2.2.0,性能提升+支持Java13

    随着 Spring Framework 5.2.0 成功发布之后,Spring Boot 2.2 也紧跟其后,发布了第一个版本:2.2.0.下面就来一起来看看这个版本都更新了些什么值得我们关注的内容. ...

  8. Spring Boot 2.2.0 正式发布,支持 JDK 13!

    Java技术栈 www.javastack.cn 优秀的Java技术公众号 推荐阅读: Spring Boot 2.2.0 正式发布了,可从 repo.spring.io 或是 Maven Centr ...

  9. Spring Boot 2.3.0正式发布:优雅停机、配置文件位置通配符新特性一览

    当大潮退去,才知道谁在裸泳..关注公众号[BAT的乌托邦]开启专栏式学习,拒绝浅尝辄止.本文 https://www.yourbatman.cn 已收录,里面一并有Spring技术栈.MyBatis. ...

随机推荐

  1. 认识JavaScript Promise

    参考: EC前端 - Promise - http://www.ecmaer.com/javascript/nativeObj/promise.html 关于Promise: 什么是 Promise? ...

  2. SVN与资源库同步后动作的字母意义

    U:表示从服务器收到文件更新了G:表示本地文件以及服务器文件都以更新,而且成功的合并了A:表示有文件或者目录添加到工作目录R:表示文件或者目录被替换了C:表示文件的本地修改和服务器修改发生冲突

  3. Vue 获取登录用户名

    本来是打算登录的时候把用户名传过去,试了几次都没成功,然后改成用cookie保存用户名,然后在读取就行了, 登录时候设置cookie setCookie(c_name,c_pwd,exdays) { ...

  4. 学习Acegi应用到实际项目中(12)- Run-As认证服务

    有这样一些场合,系统用户必须以其他角色身份去操作某些资源.例如,用户A要访问资源B,而用户A拥有的角色为AUTH_USER,资源B访问的角色必须为AUTH_RUN_AS_DATE,那么此时就必须使用户 ...

  5. python 字典中的get()方法

    https://blog.csdn.net/weixin_38705903/article/details/79231551

  6. vue中集成pdfjs自定义分页

    <template> <div id="div_read_area_scrool" class="no-scrollbar--x" :styl ...

  7. [f]智能获取浏览器版本UA信息的方法

    var browser={ versions:function(){ var u = navigator.userAgent, app = navigator.appVersion; return { ...

  8. python循环解压rar文件

    python循环解压rar文件 C:. │ main.py │ ├─1_STL_算法简介 │ STL_算法简介.rar │ └─2_STL_算法_填充新值 STL_算法_填充新值.rar 事情是这样的 ...

  9. Linux-3.0.8 input subsystem代码阅读笔记

    先乱序记录一下阅读Linux input subsystem代码的笔记. 在input device driver的入口代码部分,需要分配并初始化input device结构,内核提供的API是inp ...

  10. OC对象,自动释放池,OC与C语言的区别

    在C语言中,编程都是面向过程的编程,每一个代码块都严格按照从上至下的顺序执行,在代码块之间同样也是这样, 但是在OC中往往不是这样,OC和C++.java等语言一样,都是面向对象的编程语言,在代码的执 ...