Struts2 那些年可謂是風光無限啊,Struts2 + Spring + Hibernate 三大框架一起組成了 "SSH"————牛逼哄哄的 Java Web 框架三劍客。
SSH,有過幾年工作經驗的 Java 程序員應該都聽說過吧?現在剛出來工作的小弟弟、小妹妹們應該很少有人了解它了。
但,那個還屬於 SSH 風靡的年代,不管你是在學校學習,還是去培訓機構培訓,還是去任何一家軟件公司面試,SSH 那就是標配了。
時過境遷,現在除了老掉牙的老項目,已經很少有公司還用 Struts2 開發了,甚至從招聘崗位技能上、以及面試者的簡歷上消失。
棧長特意找了下招聘網站上的職位要求,大多都是要求 SSM 這一套了。
當然,也有傳統項目招 Struts2 人才的,但真的非常少了,比如說下面一個平安的項目:
看這個招聘的技術棧就知道是一個老項目了,還是 SSH 那一套。
棧長近幾年也面試了不少人,很少有簡歷寫 Struts2 的,招來的新人也都不會用 Struts2,老項目維護起來甚於棘手。
顯然,Struts2 已被 Spring MVC/ Spring Boot 所取代,Hibernate 也逐漸被 MyBatis/ Spring Data JPA 所取代,至少在國內是這樣,現在已經是 SSM 的天下了,說 Struts2 被淘汰一點也不為過。
推薦閱讀:JPA、Hibernate、Spring Data JPA 的關系
SSM了解下:
SSM = Spring + Spring MVC/ Spring Boot + MyBatis
那么,為什么 Struts2 會被淘汰呢?
我認為有以下兩個主要原因!
1、漏泄太多
Struts2 漏洞多是出了名的,影響巨大,這也是 Struts2 被淘汰的主要原因,自己作死。
BAT都被禍及過,特別是某東那次事故比較嚴重,有興趣的可以查一下,其他涉及的站點更是不計其數了。
我司老項目也一直在為 Struts2 不斷打補丁包,替換成本又高,不甚其煩,還好是內部項目。
2、可怕的后浪
隨着 Spring 推出 Spring MVC 框架,其天生就能與 Spring 無縫結合,開發效率和性能都要吊打 Struts2, 13年開始就已經有很多企業用 Spring MVC 代替 Strust2 了。
現在,后浪 Spring Boot 大行其道,零 XML 配置,開箱即用,效率翻倍,開發只需要關注業務實現,不用再多關注框架配置,更是加快了 Struts2 的淘汰進程。
Spring Boot 確實好用,系列教程我在公眾號Java技術棧都寫了一大堆了,有興趣的可以關注翻閱學習,都是我這幾年寫的干貨。
當然,除了 Spring 全家桶,市面上還有小而美的 Vert.x、jFinal 等 Web 開發框架,它們也有各自存在的市場,大家各有所需,沒有誰更牛逼。
現在的開發市場,除了老項目,還有誰會在新項目上用 Struts2 的?如果是這樣,那真的 Struts2 真愛啊,或者是井底之蛙……
你怎么看待 Struts2 被淘汰?
歡迎留言分享!
推薦去我的博客閱讀更多:
2.Spring MVC、Spring Boot、Spring Cloud 系列教程
3.Maven、Git、Eclipse、Intellij IDEA 系列工具教程
覺得不錯,別忘了點贊+轉發哦!