更新時間:2021-12-09 12:13:32 來源:動力節點 瀏覽1075次
當我們談論 MVC 框架時,Struts (原始而非 Struts2)是第一個想到的框架,不僅因為它一直是這個領域的先驅,而且它是迄今為止最好的框架之一。隨著 SpringMVC 的出現,Struts 框架可能存在的缺點被 Spring MVC 所重視。以下是 Spring MVC 相對于 Struts 的優勢:
Spring在控制器、JavaBean 模型和視圖之間提供了非常清晰的劃分。
Spring 的 MVC非常靈活。與 Struts 不同,Struts 強制您的 Action 和 Form 對象進行具體繼承(從而消除了您在 Java 中具體繼承的單一機會),Spring MVC 完全基于接口。此外,幾乎 Spring MVC 框架的每個部分都可以通過插入您自己的接口進行配置。當然,我們也提供便利類作為實現選項。
Spring 和 WebWork 一樣,提供了攔截器和控制器,可以很容易地分解出處理許多請求時常見的行為。
Spring MVC 是真正的視圖不可知的。如果您不想,您不會被迫使用 JSP;您可以使用 Velocity、XLST 或其他視圖技術。如果您想使用自定義視圖機制——例如,您自己的模板語言——您可以輕松實現 Spring View 接口來集成它。
Spring 控制器像任何其他對象一樣通過 IoC進行配置。這使它們易于測試,并與 Spring 管理的其他對象完美集成。
Spring MVC web 層通常比 Struts web 層更容易測試,因為它避免了強制的具體繼承和控制器對調度程序 servlet 的顯式依賴。
Web 層成為業務對象層之上的一個薄層。這鼓勵了良好的實踐。Struts 和其他專用的 Web 框架讓您自己實現業務對象;Spring 為應用程序的所有層提供了一個集成框架。
在 Struts 中,驗證通常在 ActionForm 的 validate 方法中實現,有時使用 Jakarta common-validator 包進行聲明性驗證定義。在 SpringMVC 中,驗證器是不依賴于 Servlet API 的第一類業務對象,即使在使用 commons-validator 時也是如此(沙箱中有代碼支持這一點)。這允許在將域對象持久化到數據庫之前,例如在您的業務邏輯中重用這些驗證器。
* Struts 2 是Struts(原版)的修訂版,解決了這些缺點并提供了一組很好的競爭特性。
以上就是關于“與Struts相比SpringMVC的優點”的介紹,如果大家想了解更多相關知識,可以關注一下動力節點的Java在線學習,里面的課程內容全面細致,由淺到深,通俗易懂,適合小白學習,希望對大家能夠有所幫助。
0基礎 0學費 15天面授
有基礎 直達就業
業余時間 高薪轉行
工作1~3年,加薪神器
工作3~5年,晉升架構
提交申請后,顧問老師會電話與您溝通安排學習