正文

俗话说:“它发认它发,我用Java8”。

但是随着Spring 6.0以及SpringBoot 3.0的发布,JDK17似乎大有取代JDK8的趋势了。

Spring Boot 3.0 requires Java 17 as a minimum version. If you are currently using Java 8 or Java 11, you'll need to upgrade your JDK before you can develop Spring Boot 3.0 applications.

Spring 6.0&SpringBoot 3.0对AOT的支持,能极大提高应用的启动速度,从而可以弥补Java在云原生、Serverless等领域的缺陷,据我所知,某著名大厂内部已经在进行升级了。

另外,JDK17是一个LTS(长期支持版),可以免费商用到2029年,JDK17本身在性能上也有优化,比如对于NIO的性能优化,至少提升了10%。

随着各大框架对JDK17的支持,JDK17取代JDK8只是时间问题。

这里我大致列以下JDK9-JDK17中几个关键的新特性:

  • sealed 密封类
  • 文本块
  • record 纪录类
  • G1成为默认垃圾收集器
  • ZGC的完善与升级
  • JDK模块化
  • JFR飞行器
  • 新swich表达式
  • 虚拟线程
  • ...

比如SpringBoot3.0的源码中就用到了新特性:

讨论分析JDK17是否会代替JDK8

讨论分析JDK17是否会代替JDK8

虽然JDK17跟JDK8相比较确实增加了很多新特性,不管是语法上、性能上,都在积极的吸取其他语言的特点,并且整个Java生态也在不断的升级为JDK17,但是对于公司而言,除非是新项目、新应用,不然是不太可能把现有项目升级到JDK17的。

你们项目中,现在用的是JDK哪个版本呢?

以上就是问题分析JDK17是否会代替JDK8的详细内容,更多关于JDK17 JDK8的资料请关注其它相关文章!

原文地址:https://juejin.cn/post/7203648441721684028

相关文章:

  • 2022-01-09
  • 2022-12-23
  • 2022-12-23
  • 2021-12-11
  • 2022-01-27
  • 2021-12-24
  • 2021-04-25
  • 2022-01-01
猜你喜欢
  • 2021-11-07
  • 2021-08-20
  • 2021-09-20
  • 2022-12-23
  • 2021-05-27
  • 2021-11-14
相关资源
相似解决方案