-
21 # 你看我獨角獸嗎
-
22 # 的盧科技
MVC框架:Struts2與SpringMVC
ORM框架:Hibernate,ibatis/MyBatis
Ajax框架:DWR, jQuery,vue.js
WebService:Axis2,Apche CXF,JDK@WebService,Xfire
其他框架:Spring , SSH(Spring,hibernate,struts三個框架的整合)、SpringBoot、SSM(Spring+SpringMVC+MyBatis)
微服務:SpringCloud
-
23 # 一點先知
MVC框架:Struts1和Struts2與SpringMVC
ORM框架:Hibernate和TopLink,ibatis,MyBatis
Ajax框架:DWR,jQuery
其他框架:Spring,Xfire,SSH(Spring,hibernate,struts三個框架的整合)
雖然Java一直被唱衰,但是直到現在Java軟體開發也堅持霸主地位不動搖。毫無疑問,Java是目前最熱門的程式語言之一。隨著Java面嚮物件語言的流行以及多層架構應用的出現,使得應用程式的可複用性得到了大大的提高,框架這個東西也在應用程式中開始出現,並得到了廣泛的使用。所以為大家收集了目前較受歡迎的Java框架。
1、SpringMVC
中國有句俗話叫“薑還是老的辣”,所以SpringMVC雖然釋出已有十多年,但仍然老當益壯,以絕對的優勢處於領先者的地位。在擁抱完整的MVC框架後,Spring不斷髮展變化,現在已經成為面向Internet應用程式的全面Java框架,為軟體工程師提供了用於Web應用程式開發的強大的工具包和針對安全專案的應用程式配置。作為最受程式設計師寵愛的一枚,Spring發展良好的生態系統提供了很多附加選項:RESTAPI或SOAPWeb服務,安全性(身份驗證和授權,加密)等。另外,很多大型公司都選擇使用SpringMVC,所以如果你在使用過程中遇到問題,會有很多技術大牛能夠給你解答。
優點和缺點
Spring以絕對優勢登頂不是沒有理由的,它之所以能夠成為最知名的Java框架,主要是因為:
1.使用POJO簡化測試資料的注入。
2.增強的模組化,使程式碼擁有更好的可讀性。
3.不同模組之間解耦合。
4.靈活應用依賴注入(DI)。
雖然SpringMVC有很多文件可供參考,但其對於新手Java開發人員來說學習曲線還是太陡了,在碰到參考文件較少的部分,開發人員可能會出現無從下手的情況。另外,雖然SpringMVC網上的資訊比較多,但是版本不同也會有差異。總體來說,SpringMVC是工程師最喜愛的框架之一。
2、Struts2
為了更詳細地闡述現代軟體工程師廣泛使用的Java框架,這裡千鋒武漢Java培訓老師為大家介紹ApacheStruts1的後續版本Struts2。Struts2用於構建當代JavaEEWeb應用程式。Apache軟體基金會為開發人員提供了一個廣泛的工具,用於建立企業級面向Web的應用程式,開發過程的最佳化貫徹始終,甚至連後期維護也囊括其中,到最終點最佳化開發過程以及後期維護。如果您在為高負載系統(如廣播門戶)發愁,那麼Struts將會是你的不二選擇。
由於Struts2實現了Action類(普通POJO物件),所以測試編寫程式碼所需的工作量較少。使用框架API,耦合變得更容易,有助於調整攔截器。
優點和缺點
Struts2最大的特點是不必重寫或實現Action類,同時IT工程師為多個操作建立重複設定程式碼也不再是一個問題,因為攔截器會處理它。
Struts最大的缺點就是不夠靈活。
3、Hibernate
雖然Hibemate不在RebelLabs的排行榜中,但它仍是值得一提的Java框架。這個對映Java框架解決了物件和關係不匹配的問題,採用持續的資料庫訪問操作來代替高層次的物件處理功能。每個企業的應用程式都是不同的,所以Hibernate配備了一個強大啊的功能套件,幫助後端開發人員微調資料訪問層。這是一個高階的ORM框架,允許您對Java物件(實體)執行資料庫操作,利用Hibernate快取將資料從Java環境持久化到資料庫是一個持久化的概念。
優點和缺點
Hibernate只要對原有程式碼做一些微小的改動就可以幫助你和任何資料庫進行通訊,它彌補了物件和關係之間的差距。除了這個優勢,它還有:
1.不管是Oracle,還是Db2亦或是MySQL,Hibernate是獨立於DB存在的。
2.快取機制對類似查詢進行最佳化。
3.支援N+1或懶載入。
儘管Hibernate的優勢很多,但是它不允許多個插入,不支援JDBC的一些查詢,不適用於表比較少的小規模專案。
4、JSF
作為JavaEE的一部分,Oracle支援JavaServerFaces。雖然這不是Java快速開發的最好框架,但是因為Oracle提供了大量的文件所以很容易上手。如果你不離開JavaEE環境,JSF沒有外部依賴項,但功能很強大,它擁有的豐富的庫和工具(包括一個易於建立使用者介面的工具集),無論你的應用程式看起來有多麼複雜,它都可以支援。
優點和缺點
如上所述,JSF是JavaEE的一個組成部分。因此,開發人員可以利用IDE軟體套件以及來自行業領先供應商的高水準的支援。
但是事情都有兩面性,JavaServerFaces太龐大,所以沒有Web開發經驗或者技術不純熟的人可能難以掌握。
5、Vaadin
Vaadin是在現代開發人員在建立業務應用程式並使用GWT渲染結束網頁時必選的流行框架之一。Vaadin利用一個眾所周知的基於元件的方法,快速適應瀏覽器發生的變化,從而減輕開發人員的負擔。Vaadin透過傳達對瀏覽器的更改來消除開發人員的負擔。豐富的UI元件、各種各樣的部件和控制元件時代程式設計師能夠隨時隨地構建一個酷炫的應用程式。
優點和缺點
在Java或HTML的佈局構建中,Vaadin提供了可用的MVC或MVP繫結資料的方法。支援拖放以及其他突出的功能簡化了對Java應用程式的單頁UI的建立。
因為Vaadin需要將每個事件回發到伺服器,所以或導致移動應用程式的UI遲緩。
6、GoogleWebToolkit
GWT是一個允許使用者建立和最佳化複雜的基於Web的應用程式的免費的Java框架。GWT的軟體開發套件提供核心JavaAPI和小部件,構建之後就可以編譯為JavaScript的應用程式。
優點和缺點
使用GoogleWebToolkit,您可以獲得單個程式碼庫(Java中的瀏覽器和伺服器端程式設計),從而簡化開發和除錯過程。與其他技術的簡單整合允許程式設計師在Web頁面中嵌入GWT小部件。在GWT的幫助下還可以自定義視窗小部件功能。
但是GWT不適用於純HTML和後期動態內容佈局,因此無法滿足網頁設計師的需求。
7、Grails
這個特別的Web框架被認為是可以提高工程師生產力的動態工具。它擁有獨樹一幟的API實際,合理的預設值以及約定的配置範例。與Java的無縫整合使其成為全世界很多程式設計師的最佳選擇。Grails擁有一系列強大的功能,例如基於Spring的依賴注入和各種外掛,同時提供建立現代Web應用程式所需的一切。
優點和缺點
Grails可以快速搭建新專案,腳手架為編碼人員節省了大量寶貴的時間。Grails擁有一個巨大的庫,提供超過900種不同的易於安裝的外掛。Grails是一個全棧開發的Java框架,它的物件關係對映涵蓋了龐大的功能,使其成為一個重量級的軟體。
如何選擇合適的Java框架?
在這些眼花繚亂的流行Java框架中挑選出適合自己的框架不是一項簡單的任務,因為每個公司在建立自己的Web應用程式和移動應用程式時都有自己堅持的理念。但是無論你選擇哪個框架,它們都應具有以下特點是:易於安裝、社群活躍、文件豐富等等。因為專案的依賴型別不同,所以企業在選擇時最好選擇同一公司或一脈相承的框架;另外,如果現實允許的話,最好選用輕量級的框架來代替重量級框架;最後,企業是一個團隊,所以要及時企業的其他同事溝通框架的使用,保證每個員工都能充分利用該框架來創造價值。
-
24 # yuixan
Java框架可以簡化開發難度,更便於我們開發程式。所以學好2113Java框架還是比較重要的。Java的框5261架主要有:SpringMVC、Spring、Mybatis、Dubbo、Maven、RabbitMQ、Log4j、Ehcache、Redis、Shiro。不過這十個我們不需要都學會,只要學會其中四五個4102比較常用的就可以。第一個,SpringMVC。Spring MVC是一種基於Java地實現了Web MVC設計模式的請求驅動型別的輕量級Web框架,主要是幫助我們簡化日常1653的Web開發;第二個,Mybatis。MyBatis 是支援普通 SQL查詢,儲存過程和高階對映的優回秀持久層框架;第三個,Spring。Spring深得企業的青睞;第四個,Maven。越來越多的開發人員開始使用maven。掌握以上四種框架,你在找工作的時答候就會比較吃香。
-
25 # 使用者5663516205676
JAVA用於web主要三大框架Struts+hibernate+spring。Struts2快速搭建MVC模型,spring用於控制執行注入引數,Hibernate自動化能力強還有一些JFinal ,jQuery,CreatJ等等,功能也挺全
-
26 # 532的天空
目前企業級開發都在使用spring cloud或Dubbo+docker的模式部署微服務。mybatis是首選持久層框架。微服務通訊使用REST。前端用freemarker或者thymeleaf都可。
-
27 # 阿拉丁ken
一般用到框架的我就叫他自動離職,NM,開發幾年程式碼量都可以理成一個框架了,還用人家的框架,一點創新能力都沒有白乾幾年
回覆列表
什麼是Java框架?
框架是大量的預編寫程式碼,您可以在其中新增自己的程式碼來解決問題。您可以透過呼叫框架的方法,繼承並提供回撥,偵聽器或其他模式實現來利用框架。
框架通常會決定應用程式的結構。有些框架甚至提供了太多的程式碼,因此您只需要做很少的工作即可編寫應用程式。這可能是好事,也可能是壞事,這取決於它的易用性。你將會建立在一個優秀的框架之上,而你的程式既穩定又快速,並且和框架很好地結合在一起。
Spring框架Spring Framework是用於Enterprise Java(JEE)的功能強大的輕量級應用程式開發框架。
Spring Framework的核心功能可用於開發任何Java應用程式。 它被描述為一個 完整的模組化框架。該框架可用於實時應用程式的所有層實現。與其他框架不同,它還可以用於開發實時應用程式的特定層,但是使用Spring,我們可以開發所有層。
Spring 和所有模組(包括 Spring MVC,Spring Core,Spring Security,Spring ORM等)都用於企業應用程式中。
現在,讓我們看看該Spring框架在哪裡使用。
用途:
Web應用程式開發
其功能可用於建立任何Java應用程式
它也用於企業Java(JEE)
優點:
它提供了一個輕量級的容器,無需使用Web伺服器或應用程式伺服器軟體即可觸發
Spring支援JDBC ,可提高生產力並減少錯誤
它旨在使J2EE開發更易於使用
Spring支援基於XML和基於註釋的配置
它提供了程式碼的向後相容性和可測試性
HibernateHibernate ORM 是Java的穩定的物件關係對映框架。它使Java程式語言與關係資料庫管理系統(RDBMS)之間的更好通訊成為可能。
當您使用諸如Java之類的面向物件的語言時,您會遇到一個稱為“物件關係阻抗不匹配”的問題,也稱為“正規化不匹配”。這是因為OO語言和RDBMS處理資料的方式不同,這可能導致嚴重的不匹配問題。因此,此Hibernate為您提供了一個克服Java不匹配問題的框架。
用途:
它允許您按照面向物件的習慣用法開發永續性類它允許您使用程式碼中的很小改動與任何資料庫進行通訊,從而彌合物件與關係詞之間的鴻溝它是一個高階的ORM框架,可讓您在Java實體上執行資料庫操作優點:
這是由Apache軟體基金會(ASF)維護的另一個企業級框架。這個功能齊全的J ava Web應用程式框架使開發人員可以建立易於維護的Java應用程式。有兩個版本。Struts 1和Struts2。Struts 2是OpenSymphony和 Struts 1的Web 框架的組合 。但是所有公司都更喜歡使用Struts 2,因為它是Apache Struts的升級版本。
用途:
Struts 2框架用於開發基於MVC的Web應用程式它 使用 並擴充套件了 Java Servlet API,以幫助開發人員採用MVC架構。優點:
該框架文件是為活躍的Web開發人員編寫的,並且假定您具有有關如何構建Java Web應用程式的實用知識。減少開發時間並簡化應用程式的可管理性它提供了集中式配置,即不是將資訊編碼到Java程式中,而是將許多 Struts 值表示為XML或屬性檔案。您可以將Struts與其他Java框架整合以執行不是在平臺上構建的任務GWTGoogle Web Toolkit(GWT)是一個完全免費的開源框架,可幫助開發人員編寫客戶端Java程式碼並將其建立為JavaScript。許多Google產品都是使用GWT編寫的,例如AdSense,Google Wallet和Blogger。
使用GWT,開發人員可以輕鬆快速地對複雜的瀏覽器應用程式進行編碼。它還允許您使用Java開發和除錯Ajax應用程式。關於GWT的令人敬畏的事情是,您可以編寫複雜的基於瀏覽器的應用程式而無需成為JavaScript最佳化或響應式設計等前端技術的專家。
用途:
開發人員友好使用Google API幫助建立和維護複雜的JavaScript前端應用程式優點:
它支援常見Web開發任務的可重用性Google API可在GWT應用程式中使用提供國際化,跨瀏覽器可移植性,UI抽象,書籤和歷史記錄管理JSFJavaServer Faces (JSF)由Oracle開發,用於為基於Java的Web應用程式構建使用者介面。它是 Java Community Process (JCP)計劃的正式標準 。這是一個非常穩定的框架。
這是一個基於元件的 UI框架。JSF基於MVC軟體設計模式,其體系結構完全定義了應用程式邏輯和表示之間的區別。
用途:
基於元件的UI框架幫助構建本機應用程式優點:
JSF是Java EE的組成部分提供出色的工具和豐富的庫它允許使用Web介面擴充套件現有的後端Java程式碼,而不必透過引入新框架來更改基本應用程式。VaadinVaadin是一個Web應用程式框架,專注於UX可訪問性。它為您提供了簡化Java開發的平臺。Vaadin還允許您構建可定製元件的Web應用程式。
Vaadin 10以全新的方式處理Web應用程式開發。它使您可以從Java虛擬機器直接訪問DOM。在新版本中,Vaadin團隊將以前的整體框架分為兩部分。它還具有一個名為Vaadin Flow 的輕量級Java框架,該框架可處理路由和伺服器-客戶端通訊。
用途:
該框架可自動執行瀏覽器與伺服器之間的所有通訊它簡化了Web應用程式的開發優點:
Vaadin提供了使用MVC或MVP繫結資料的機會拖放支援以及其他出色的功能簡化了Java應用程式的單頁UI的建立具有WebSocket支援的自動伺服器-客戶端通訊使用Java或HTML構建檢視資料繫結具有巢狀路由和引數支援的路由器支援Kotlin和Scala等JVM語言內建Spring支援