爲何要放棄ssh框架

本文是轉載他人的,以爲很好,分享!前端

最近聽一些朋友說,招聘面試的不少人簡歷都差很少,大部分人的簡歷上面都寫了熟悉ssh框架,
我朋友就在吐槽,爲何這些人簡歷都差很少,而且都熟悉ssh框架? 後面他說, 可能這些人都是培訓機構出來的, 而後培訓機構對於徹底外行的人都是簡單培訓了基本的java語法,而後介紹ssh的概念和簡單的使用,
而後吹噓ssh多麼牛逼,而後再經過一個簡單的實戰項目,而後幫你作好簡歷,就算完成了培訓。 聽到他這一番話,多少心中有些觸動。我不是排斥ssh有什麼很差,ssh在不少年前是不錯的三個框架(如今struts已經沒落 ,spring很春天,hibernate不溫不火),
只是以爲如今培訓機構還在教這個是有點過期了, 花費了學生的時間,而且出去可能也找不到工做(若是如今只是說會ssh,又沒有其餘方面的知識,確實很難找工做) 爲何說ssh已通過時了?那就要首先知道ssh究竟是什麼? struts2:通俗的講就是爲了完成MVC模型中的C的功能,也就是編寫具體的業務邏輯的地方。     從他的設計上來看就是請求到了web容器,而後通過了一系列的過濾器,再經過請求FilterDispatcher詢問ActionMapper是否須要調用某個Action,
    若是要調用的話, 而後執行先前配置好的攔截器,就到了咱們的具體邏輯,執行完以後,還會繼續執行對應的攔截器和過濾器邏輯,最後返回給調用方。 Spring: 通俗的講只是經過它的核心IOC來管理咱們編寫邏輯中間的一些bean。咱們經過IOC來減小耦合和簡化對象的操做。 Hibernate: 是對象關係映射框架,簡單的說,它就是對JDBC進行了很是輕量級的對象封裝,目的是讓操做數據庫像操做對象同樣簡單。 這個就是ssh三者最開始的目的,他們各司其職,在缺少框架的年代,很好的配合着,以致於一直流傳了下來。 介紹完了ssh的本質,接下來介紹一下這三個組件如今的發展狀況。 首先struts2框架最近爆出了不少高危漏洞,使的應用的安全有了很大程度的隱患。而後不少作法也不夠優雅,特別是JSR
-311標準出臺以後,
隨着Restful方式的流程程度普及開來,struts2愈來愈被你們所拋棄,雖然struts2也加入了一些plugin來進行支持REST,可是仍是過於繁瑣。因此致使瞭如今struts2的沒落。 而後spring以IOC爲核心,而後進行大力擴展,前後推出了SpringMVC來完成邏輯層的編寫邏輯,
如今SpringMVC基本已經完成了替代struts2的工做(一些很老的項目可能沒有進行改造)。
而後在SpringMVC大獲成功以後,基於SpringMVC和web容器,把他們二者進行結合,推出了SpringBoot,
通過幾年的發展和醞釀,如今後端基本被Spring系列所統一。因此如今要我來說,後端框架的王者就只有一個Spring系列了。 最後Hibernate只是一個對操做數據庫進行映射的框架,有不少也能夠替代,好比ibatis, mybatis, JPA等等,
由於orm有本身的優勢也有本身缺點,就看使用者如何進行權衡了。
從我我的的意見來看,簡單的業務邏輯直接用JPA(Spring基於Hibernate的封裝)就能夠了,若是是複雜的,還不如直接寫SQL來得簡單,調優也方便。 爲何說ssh已通過時? 如今提倡和流行的是先後端分離(這裏指的分離是徹底分離,而不是以前經過模版進行分離,先後端數據交互是根據http進行的)。
而且後端設計的接口趨向於Restful的架構。爲何有這種變化,
由於如今前端不只僅是web端,在移動互聯網時代,app也是很大一部分。因此從後端的角度來看,他們都是客戶端。
app是沒辦法經過模版進行渲染的,只能經過http傳輸數據。這也是後端服務發展的趨勢。 Java後端技術有不少,若是想要提升,最好的捷徑就是踏踏實實的進行學習,
對於剛工做不久的人來講,能夠把學習ssh框架的時間用來學習SpringMVC,而後掌握Spring的核心,
而後學習什麼是Restful概念,最後能夠了解JDBC的一些概念(前期不推薦學習ORM框架)。我相信能夠有所收穫和成長的。 最後不建議再去衝着學習ssh框架去培訓機構了,

總結:ssm框架,老一點項目spring struts2 mibatis。如今主流是spring spring-mvc mibatis。
相關文章
相關標籤/搜索