五大JAVA Web框架的優缺點對比Spring MVC領先

jopen 6年前發布 | 29K 次閱讀 Java

毫無疑問,Java 是當今世界上最重要的編程語言之一。js 框架給程序員提供了一個可以構建程序的堅實基礎。它包括定義的類和功能,用于硬件設備管理,與系統軟件交互并處理輸入,讓開發人員變得更輕松。JavaScript 框架旨在支持動態網站,Web 服務,Web 資源和 Web 應用程序的開發。在本文中,搜集了 5 個關于 Java Web 框架的信息。

五大JAVA Web框架的優缺點對比Spring MVC領先

1. Spring MVC - Java Web 框架

自離首次發布 10 多年以來,Spring MVC 框架仍然領先于競爭對手。隨著時間的推移,它擴展成一個完整的 MVC 框架,并不斷演變成一個全面的 Java 框架。作為集成特殊應用科學的分層 J2EE / Java 框架,該框架為軟件工程師提供了用于 Web 應用程序配置,應用程序開發和安全項目的完整工具包。該框架以其發達的生態系統而聞名,它提供了許多附加選項,從 SOAP Web 服務,REST API 到安全加密和授權。

優點:

  • 增強模塊化的輕量級容器

  • 可以跨各種平臺進行部署

  • 靈活的依賴注入使用

  • 包括 XML,Java 和注釋配置的三路配置

  • 通過 POJO's緩解了注射測試的數據

缺點:

  • 學習曲線比較陡峭

  • 新手實施比較困難

  • 需要花費時間部署

2. JSF - Java Web 框架

Oracle 認為 JSF 是一個實用網絡 Java 框架,旨在簡化基于 Web 的 UI 的集成開發。雖然這個框架在 Java 開發方面不是很好,但是 Oracle 提供的文檔很容易使用。這是一種標準化的技術,擁有豐富的工具和庫,可以為你在高度復雜的應用程序中鋪平道路。JSF 規范允許啟用標準用戶界面組件的重用和擴展。它減少了創建和維護 Java 應用程序在上運行和在目標客戶端上呈現 UI 應用程序的痛苦。不僅如此,它還提供簡單的數據傳輸和可重用的 UI 組件。

優點  

  • 由于它可以創建可重復使用的組件,因此效率更高且一致

  • 支持像 EJB 這樣的 JSF 實現的優秀供應商(IBM,Oracle,JBoss 等)

  • 準備使用像 Apache,Infragistics,Richfaces 等組件

  • 方便開發人員,特別是那些使用 IDE 軟件的人

JSF 的缺點

  • 陡峭的學習曲線

  • 沒有考慮書簽工具

  • 不可擴展

  • 原始 Ajax 支持

  • 缺乏靈活性

3. Google Web Toolkit - Java Web 框架

Google Web Toolkit(GWT)是一個開源開發工具集,使開發人員能夠構建和優化復雜的 JS 前端應用程序。它的主要目標是提供高性能 Web 應用程序的開發,即使開發人員不熟悉 JavaScript,XMLHttpRequest 或瀏覽器等偏冷門的知識。為了讓其可信度高,谷歌自己的許多產品,包括 AdSense,Hotel Finder,Wallet,AdWords 等都使用 GWT。

優點:

  • 更容易學習

  • 內置 IDE 支持重構 Java 代碼

  • 可以在客戶端大量構建響應式 Web 應用程序,并減少服務器端的瑣事

  • 可以迭代地平滑地從典型的 Web 應用程序遷移到 GWT 應用程序

  • 即使在使用 AJAX 的情況下,也具有內置的瀏覽器后退按鈕支持

缺點:

  • 僅對 Java 開發人員有利,對 PHP 或 .NET 的開發人員沒有太大幫助

  • 由于快速發展的 GWT,有許多版本很難獲得所有功能和接口

  • 編譯速度慢,需要使用專有方法來定義結構

4. Grails - Java Web 框架

Grails 是一個開源的 Java Web 框架,旨在將開發人員的生產力與默認值和 Convention-over-Configuration API 相提并論。它與 Java(JVM)相集成,同時提供強大的功能,包括編譯時元編程,異步編程和領域特定語言。Grails 采用強大的視圖技術,集成的 NoSQL / ORM 支持,插件和 Spring 支持的依賴注入進行更新。讓你可以輕松集成并互操作 Java,Java EE 和 JVM 容器。

優點:

  • Grails 提供了一個快速的開發周期

  • 非常適合小型和中型項目

  • 各種插件可供選擇

  • 簡單而令人易懂的文檔

  • 可以在不重啟服務器的情況下更改配置

缺點:

  • 使用運行時語言可能會很困難

  • 開發多線程應用程序,GORM 可能會出現問題

  • 復雜的集成過程

  • 延遲運行時間

5. Struts 2 - Java Web 框架

Apache 的 Struts 是一個用于開發現代 Java Web 應用程序的開源免費 MVC 框架。它包含一組類和接口,共同協作開發 Web 應用程序。它適用于許多 Java 應用程序的網絡框架,并且受到了很多社區的支持。為了進一步擴展 Struts Java 框架,Struts 2 作為后繼者有了很大的改變。這個框架最適合于開發當代 Java EE web 應用程序的工程師,Apache 軟件基金會借助 Struts 2 為開發人員提供了一個用于開發面向網絡的,企業級應用程序,并優化整個開發流程的工具。

優點:

  • 沒有線程安全問題

  • 依賴注入使得測試更簡單

  • 它可以使用“對象圖導航語言”(OGNL)

  • Struts 2 框架的 Servlet 上下文以簡單的地圖形式表示

  • 它支持通過驗證方法進行手動驗證,并且還包含子框架驗證

缺點:

  • 由于它與 Struts 1 完全不同,難以遷移

  • Struts 2 文檔非常有限

  • 由于文檔管理不善,新用戶很難發現它的優點

來自:findnerd

 本文由用戶 jopen 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
 轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
 本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!