生還是不生? SpringBoot3 版本有起飛前兆,最小依賴Java17!

語言: CN / TW / HK

原創:小姐姐味道(微信公眾號ID:xjjdog),歡迎分享,轉載請保留出處。

一直以來,Java8都是Java社群心頭的痛。因為它代表著以穩定性為主的企業管理層,與擁抱變化為主的底層碼農層之間的、愛的魔力拉鋸戰。

不生!少生!成為各大廠心照不宣的選擇。

現在,這種平衡或將打破。因為Java屆的霸主框架SpringBoot,選擇了最小支援的Java lts版本,就是最新的Java17。

堅信Java8成為永恆的同學,該用尿滋醒一下了。

附: 這年頭,能坐上火箭的東西不多啊!Java版本號算一個!

怎麼辦?

到底用不用新的版本,這其實並沒有什麼意義。有需求才有變化,為了追求升級而升級,那是腦殘才幹的事。當廣大從業者,越來越瞭解到自己是一個工具人的時候,就會放棄這些無意義的操作。

只有兩種情況,無意義才會變成有意義。

第一,是捲到極致的時候,不痛不癢的版本升級就會進入你的任務列表。第二,是落後社群太多的時候,羞愧感加上功能的驅使會讓你選擇升級。不過這也並不是絕對,因為如果你是管理層,髒活自然會有人幹,你也不會有這麼大的動力。

哪些改變?

還是先回到正題,看一下SpringBoot3都有哪些改變吧。

首先。

再次強調一下,SpringBoot3將強力合體Java17,採用全新的Spring6版本,Maven支援也提高到了3.5、Gradle提高到了7.3。版本管理器預設也換成了grandle,grandle的下載速度,國內要肉痛一下了。

再次。

雖然我們現在使用JavaEE的功能越來越少,但很多巨無霸商業企業還是依然堅守著打下的江山。自從JavaEE改名為Jakarta EE,Jakarta EE9版本迎來了更大的改動,連javax這種包名都給改了(2019及以後)。SpringBoot3一琢磨,假如不追上的話,恐怕後面很快就要出SpringBoot4了,所以Jakarta EE的版本,也切成了9。

Jakarta是印尼首都雅加達,與斯巴達只差兩字的距離。Jakarta EE 9 的版本應由 Eclipse Glassfish,Apache TomEE,Wildfly,Oracle WebLogic,JBoss 和 IBM Websphere Liberty 實施,並使用 Jakarta EE 的標誌。

這通常沒什麼影響,因為新時代的網際網路人,使用JavaEE的功能越來越少,就連JavaSE都嫌臃腫,所以這對很多人並沒有什麼影響。我建議你如無必要,永遠不要使用它,因為裡面全是坑哈哈。

其次。

移除了一些老掉牙的東西,比如 Apache ActiveMQ、Atomikos、EhCache 2、Hazelcast 3等。Apache ActiveMQ這種老掉牙的東西,實在是不推薦新專案使用了,高併發下它坑死了老多人;Hazelcast也在Redis的進攻下節節敗退,雖然用上了先進的Raft也頹勢盡顯。

這些不入流的東西們,最好的存在方式就是各種stater,而不是放在core包裡面。

同樣被移除的還有下面這些:

  • EhCache 3

  • H2’s web console

  • Hibernate’s metrics

  • Infinispan

  • Jolokia

  • Pooled JMS

  • REST Assured

這些名詞背後,充滿了商業的腐朽味道,以及銷售的嘴臉和被忽悠的懵逼的老闆們。

怕不怕?

現在SpringBoot3還是M1版本,Spring Boot團隊將每兩個月釋出一個新的里程碑版本,所以M2版本預計將在3月24日釋出。

其實,大家都不怕軟體不更新,也不怕經過實踐過的更新,最怕專案出生在這種不生不死的間隔時間。選新的吧,功能不穩定,要背鍋;選舊的吧,心裡不痛快,未來總有一天還得升級。

所以大多數時候,時間就在這猶猶豫豫中流逝了。

保持系統的純潔性,是一個非常好的習慣。哪怕官方為你貼心的提供了很多擴充套件功能,也不要隨隨便便去使用,否則你將嚐到背叛的味道。

當然,一個普通程式設計師職業生涯,被定格在35歲的年代,在新時代農民工論調的大背景下,你並不需要為其他的階級去著想,除非它影響到了你的麵包。

作者簡介: 小姐姐味道 (xjjdog),一個不允許程式設計師走彎路的公眾號。聚焦基礎架構和Linux。十年架構,日百億流量,與你探討高併發世界,給你不一樣的味道。我的個人微信xjjdog0,歡迎新增好友,進一步交流。

推薦閱讀: