V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
MakHoCheung
V2EX  ›  Java

干掉 Java8 还得 Spring 来

  •  
  •   MakHoCheung · 2022-01-21 20:40:17 +08:00 · 5219 次点击
    这是一个创建于 1038 天前的主题,其中的信息可能已经有所发展或是发生改变。

    Spring Boot 3.0.0-M1 正式上线

    最有可能引领 JDK17 和 jakarta 实现普及的框架上线了,虽然是第一个版本有很多不兼容的地方,但是也正式迈出了第一步,有对新的生态感兴趣的推荐试用。

    在第一个里程碑中,我们开启了我们通往下一代 Spring 框架的激动人心的旅程,并将我们的最低 JDK 要求从 Java 8 提升到 Java 17 。计划每两个月发布一个新的 Spring Boot 3.0 里程碑。M2 应该会在 3 月 24 日发布,并计划在 11 月下旬发布 GA 版本。

    如果您想要尝试使用 Spring Boot 3.0 的应用,需要注意我们已将所有 Java EE API 迁移到 Jakarta EE 。对于大多数用户来说,这意味着您需要将任何 javax 类库替换为 jakarta. 例如,javax.servlet.Filter 将替换为 jakarta.servlet.Filter.

    我们仍在等待一些第三方软件库发布 Jakarta EE 兼容版本,因此并非所有 Spring Boot 2.x 功能都可用于第一个里程碑。我们计划在适当的时候将这些功能重新引入。

    转自开源中国

    26 条回复    2022-01-23 11:01:16 +08:00
    yazinnnn
        1
    yazinnnn  
       2022-01-21 20:46:11 +08:00
    想多了,如果没有开发上的便利或者性能上的提升,人们为什么要升级 sb3 呢
    sagaxu
        2
    sagaxu  
       2022-01-21 20:49:28 +08:00 via Android
    结果 sb3 sb 了
    Oktfolio
        3
    Oktfolio  
       2022-01-21 20:50:24 +08:00
    我们在 Semeru 17 Docker Image Release 的当天就上 17 了
    MakHoCheung
        4
    MakHoCheung  
    OP
       2022-01-21 20:53:14 +08:00
    @yazinnnn 9-17 的语法让 Java 超级接近 Kotlin ,这是开发上的便利了吧,ZGC 算是性能上的提升了吧,再不行加多个 Spring Native 够不够
    yazinnnn
        5
    yazinnnn  
       2022-01-21 21:03:23 +08:00
    @MakHoCheung
    不够,指望靠 java 语法提高便利还不如直接换 kotlin ,提升 gc 能力直接换 jdk 就有提高,不用换 sb3

    真正能指望的还是配合 graalvm 构建 native image 版本,但是这方面又落后 quarkus 比较多

    另外 reactive 生态推进缓慢也是个小弊病,这点也不如 quarkus+vertx 生态
    afewok
        6
    afewok  
       2022-01-21 22:12:17 +08:00
    golang ,不就完事了
    RiceMarch
        7
    RiceMarch  
       2022-01-21 22:15:13 +08:00
    我只盼望着盼望着坐在我身边的老哥们能先把 Optional 用上,再把函数式操作玩明白,我就已经知足了
    MakHoCheung
        8
    MakHoCheung  
    OP
       2022-01-21 22:46:13 +08:00
    @RiceMarch 老实说 Optional 不怎么好用,不知道为什么不用 ? 、?. 和 ??
    RiceMarch
        9
    RiceMarch  
       2022-01-21 22:49:42 +08:00
    @MakHoCheung 因为 8 里只有 Optional,而且我个人觉得 optional 还挺好用的(小声
    heyjei
        10
    heyjei  
       2022-01-21 22:56:43 +08:00
    @RiceMarch 我也没看懂 Option 好用在哪里,不照样还要 check 一下是否存在嘛
    Leviathann
        11
    Leviathann  
       2022-01-21 23:10:11 +08:00
    @heyjei
    要 check 是什么意思 这种类似 monad 的类型主要是用 map 和 flatmap 吧
    除非是一上来取到一个 optional ,如果 isEmpty 的话直接 return
    Leviathann
        12
    Leviathann  
       2022-01-21 23:14:05 +08:00
    @MakHoCheung
    kotlin 是最舒服的
    尤其是 Elvis Operator 后面还能直接 return 写 ts 的时候都很怀念这个语法
    chaowang
        13
    chaowang  
       2022-01-21 23:15:43 +08:00
    Alibaba 会更新不?感觉国内相当一部分的公司都是按照阿里的技术来的,他们不尝试,其他小公司不会去试。。
    MakHoCheung
        14
    MakHoCheung  
    OP
       2022-01-21 23:58:44 +08:00
    @heyjei 主要是 Optional 配合 filter 、map 以及 orElse 可以形成可选链,但是相比 Kotlin 和 Swift 的 ? 显得太啰嗦
    mezi04
        15
    mezi04  
       2022-01-22 00:51:07 +08:00
    @heyjei #10 解决的是空指针,不是存不存在的问题。Optional 本身不为 null ,所有你对 optional 的操作都是安全的。
    coer
        16
    coer  
       2022-01-22 00:59:45 +08:00 via Android
    native image 是 aot 那个吗,估计性能不会比 jit ,我觉得 loom 才是升级的关键点,
    @MakHoCheung
    coer
        17
    coer  
       2022-01-22 01:03:22 +08:00 via Android
    @MakHoCheung native 那个是 aot 吗,听说性能没有 jit 好? gc 我感觉大部分业务没有那么高的 gc 要求吧,我觉得以后的 loom 会是一个比较吸引人的升级点
    coer
        18
    coer  
       2022-01-22 01:04:37 +08:00
    我靠,我还以为没发出来,又写了一遍
    MakHoCheung
        19
    MakHoCheung  
    OP
       2022-01-22 01:25:20 +08:00 via iPhone
    @coer aot 在云原生方面有优势。loom 快了,估计今年秋季 Java20 进入孵化阶段
    MakHoCheung
        20
    MakHoCheung  
    OP
       2022-01-22 01:26:06 +08:00 via iPhone
    @MakHoCheung 19 才对
    9c04C5dO01Sw5DNL
        21
    9c04C5dO01Sw5DNL  
       2022-01-22 01:30:08 +08:00
    java optional 表达能力有限,能获得收益的场景并不多。
    seanzxx
        22
    seanzxx  
       2022-01-22 02:52:16 +08:00
    用过 kotlin ,觉得 option 真的好麻烦,但有些项目又是 java 写的,就在写的时候总在想,kotlin 写起来会省不少代码又安全
    echo1937
        23
    echo1937  
       2022-01-22 07:12:09 +08:00 via iPhone
    放心吧,
    几年前都是你更归你更,我用 1.6 ;
    几年前都是你更归你更,我用 1.8 ;
    总会前进的,除非社区彻底死翘翘
    putaozhenhaochi
        24
    putaozhenhaochi  
       2022-01-22 10:35:30 +08:00 via Android
    过两年再说
    pengjl
        25
    pengjl  
       2022-01-22 15:59:31 +08:00
    目前还是在用着 1.8
    monkeyWie
        26
    monkeyWie  
       2022-01-23 11:01:16 +08:00
    然并卵,java 16 开始有 break change ,可以看看:https://monkeywie.cn/2021/11/18/java17-compatibility/
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   6088 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 27ms · UTC 06:12 · PVG 14:12 · LAX 22:12 · JFK 01:12
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.