SpringMVC,Spring和Struts的區別

時間 2022-03-18 09:45:15

1樓:威信

1:spring3 mvc開發效率高於struts

2:spring3 mvc可以認為已經100%零配置

3:struts2是類級別的攔截, 乙個類對應乙個request上下文,

springmvc是方法級別的攔截,乙個方法對應乙個request上下文,而方法同時又跟乙個url對應

所以說從架構本身上 spring3 mvc就容易實現restful url

而struts2的架構實現起來要費勁

因為struts2 action的乙個方法可以對應乙個url

而其類屬性卻被所有方法共享,這也就無法用註解或其他方式標識其所屬方法了

4:spring3mvc的方法之間基本上獨立的,獨享request response資料

請求資料通過引數獲取,處理結果通過modelmap交回給框架

方法之間不共享變數

而struts2搞的就比較亂,雖然方法之間也是獨立的,但其所有action變數是共享的

這不會影響程式執行,卻給我們編碼 讀程式時帶來麻煩

5:由於struts2需要針對每個request進行封裝,把request,session等servlet生命週期的變數封裝成乙個乙個map,供給每個action使用,並保證執行緒安全。所以在原則上,是比較耗費記憶體的。

2樓:司馬刀劍

首先,結合到自己對於spring的使用,我明確的一點是,spring嚴格上來說,並不是一種框架。它相當於乙個粘合劑,黏合了別的框架或者元件。所以,spring是乙個容器!

為什麼用spring,個人感覺,spring就是乙個容器的本質,程式開發的模組元件,都可以通過spring這個容器進行組裝拼合,spring為我們提供了很多 管理的功能。而且,它是乙個輕量級的容器。我們常說ejb是重量級,spring是輕量級的

DWR和struts2的問題

星的依偎 我來幫你解答吧。解1.你的web.xml裡應該有 struts2 org.apache.struts2.dispatcher.ng.filter.strutsprepareandexecutefilter config resources context struts context.xm...

struts2的引數傳遞問題

手機使用者 他跟你的username或者password沒什麼關係,他關注的是你的get setusername和get setpassword方法,把賦值等操作放到這裡面,而在action中username或者passwword屬性名字沒關係 灰色8酷 yes。你可以詳細研究下你的action類的...

struts2的Action有多個方法,要讓驗證失敗後跳到各自的輸入頁面,該怎麼做

通過配置檔案 在action裡return success 跳到success.jsp return error 跳到failure.jsp jennia菊菊 四級說的正確,我補充幾點,在struts.xml中設乙個全域性跳轉,裡面兩個result,乙個是success,對應各個方法操作成功以後跳轉...