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

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

1.Spring MVC - Java Web 框架

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

優勢:web

  • 加強模塊化的輕量級容器編程

  • 能夠跨各類平臺進行部署瀏覽器

  • 靈活的依賴注入使用安全

  • 包括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 文檔很是有限

  • 因爲文檔管理不善,新用戶很難發現它的優勢

 

參考  http://www.javashuo.com/article/p-eglxhary-ch.html

相關文章
相關標籤/搜索