俗话说:“它发认它发,我用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相比拟的确减少了很多新个性,不论是语法上、性能上,都在踊跃的汲取其余语言的特点,并且整个Java生态也在一直的降级为JDK17,然而对于公司而言,除非是新我的项目、新利用,不然是不太可能把现有我的项目降级到JDK17的。
你们我的项目中,当初用的是JDK哪个版本呢?