Java12
String 增强
Java 12 增加了两个的字符串处理方法,如以下所示。
indent()
方法可以实现字符串缩进。
1 | String text = "Java"; |
Java 12 增加了两个的字符串处理方法,如以下所示。
indent()
方法可以实现字符串缩进。
1 | String text = "Java"; |
通过 JVM 参数中添加-XX:+ShowCodeDetailsInExceptionMessages
,可以在空指针异常中获取更为详细的调用信息,更快的定位和解决问题。
1 | a.b.c.i = 99; // 假设这段代码会发生空指针 |
Java 16 在 2021 年 3 月 16 日正式发布,非长期支持(LTS)版本。
相关阅读:OpenJDK Java 16 文档 。
向量(Vector) API 最初由 JEP 338 提出,并作为孵化 API集成到 Java 16 中。第二轮孵化由 JEP 414 提出并集成到 Java 17 中,第三轮孵化由 JEP 417 提出并集成到 Java 18 中,第四轮由 JEP 426 提出并集成到了 Java 19 中。
Java 17 在 2021 年 9 月 14 日正式发布,是一个长期支持(LTS)版本。
下面这张图是 Oracle 官方给出的 Oracle JDK 支持的时间线。可以看得到,Java
17 最多可以支持到 2029 年 9 月份。
Java 17 将是继 Java 8 以来最重要的长期支持(LTS)版本,是 Java 社区八年努力的成果。Spring 6.x 和 Spring Boot 3.x 最低支持的就是 Java 17。
这次更新共带来 14 个新特性:
Java 18 在 2022 年 3 月 22 日正式发布,非长期支持版本。
Java 18 带来了 9 个新特性:
JDK 19 定于 2022 年 9 月 20 日正式发布以供生产使用,非长期支持版本。不过,JDK 19 中有一些比较重要的新特性值得关注。
JDK 19 只有 7 个新特性:
JDK 20 于 2023 年 3 月 21 日发布,非长期支持版本。
根据开发计划,下一个 LTS 版本就是将于 2023 年 9 月发布的 JDK 21。
JDK 20 只有 7 个新特性:
JDK 21 于 2023 年 9 月 19 日 发布,这是一个非常重要的版本,里程碑式。
JDK21 是 LTS(长期支持版),至此为止,目前有 JDK8、JDK11、JDK17 和 JDK21 这四个长期支持版了。
JDK 21 共有 15 个新特性,这篇文章会挑选其中较为重要的一些新特性进行详细介绍:
JDK 23 和 JDK 22 一样,这也是一个非 LTS(长期支持)版本,Oracle 仅提供六个月的支持。下一个长期支持版是 JDK 25,预计明年 9 月份发布。
由于 JDK 22 和 JDK 23 重合的新特性较多,这里主要以 JDK 23 为主介绍,会补充 JDK 22 独有的一些特性。
JDK 23 一共有 12 个新特性:
Spring Interceptor 与 Filter 的区别
在 Web 应用程序中,Filter
和Interceptor
都是用于处理请求和响应的重要组件。它们可以在请求处理的不同阶段进行干预,实现诸如身份验证、日志记录、数据过滤等功能。本文将详细介绍 Spring 中Interceptor
和Filter
的实现方式,帮助您更好地理解和应用这两种技术。
Interceptor
和Filter
都是 AOP(面向切面编程)的实现方式,但它们有一些区别: