更新時間:2019-09-25 09:50:48 來源:動力節點 瀏覽2457次
Java框架一直以來都是面試必備的知識點,而掌握Java框架,不管在成熟的大公司,快速發展的公司,還是創業階段的公司,都能對當前正在開發中的系統有整體的認知,從而更好的熟悉和學習技術,這篇文章胖達就打算給大家介紹幾款現階段流行的框架組合,不管是在傳統企業開發還是在互聯網開發領域,這幾種框架應該都是比較常用的。
三層架構
說到框架首先需要明確的是,在Web開發領域一般會將架構分為三個部分:表示層、持久層、業務層,之所以將整體架構分為三個層面,主要目的是讓整個系統更具有條理性,通過分配任務的方式進行系統的解耦,讓每一層只關心自己內部的事情,只知道下層的存在,不知道上層的存在。達到局部改變而不影響全局的目的,就比如餐館中有服務員、廚師、收銀員一樣,各司其職,讓系統有條不紊的運行下去。
下面就簡單介紹一下三層架構:
1.表示層
表示層其實就是用戶能夠看到的界面顯示層,但是它的職責并不僅僅是顯示界面那么簡單,而是需要完成三件事情:
從界面中取得數據跟后臺服務器交互
跟后臺交互后進行數據綁定
將綁定的數據呈現在頁面中
一般來說,這一層的設計會采用MVC的模式,M稱為模型也就是實體類,用于數據的封裝和數據的傳輸;V也就是頁面組件,用于數據的展示;C為控制也就是流程事件,用于流程的控制。
2.業務層
這一層的功能主要是實現一些具體問題的操作,因為它是表示層和持久層之間溝通的橋梁,主要負責數據的傳遞和處理。
在日常的代碼開發中一般對應著邏輯Service層,對于一些復雜的邏輯判斷和涉及到數據庫的數據驗證都需要在這一層做出處理,同時根據傳入的值返回用戶想得到的值,或者處理相關的操作。
3.持久層
也稱為數據訪問層,顧名思義,這一層其實就是跟數據庫直接打交道的層面,通過連接數據庫,根據傳入的值對數據庫進行增刪改查。
框架組合
針對上面架構的每一個層面,目前Web開發領域內都有一些優秀的框架,例如表示層有Structs2、SpringMVC等,持久層有Hibernate、Mybatis等,還有業務層有Spring框架,但是嚴格來說,Spring是一個整合框架,業務層面在每一個公司每一個項目都會根據自己的需求做不同的處理。在項目的開發中,有這樣幾種使用非常廣泛的框架組合:
1.SSH框架組合
SSH框架組合主要包括Struts、Spring、Hibernate三大框架,用Struts作為系統的整體基礎架構,負責MVC的分離,在Struts框架的模型部分,控制業務跳轉,利用Hibernate框架對持久層提供支持,同時用Spring來管理Struts和Hibernate,框架具體解釋如下:
Struts框架
Struts框架是一個基于MVC設計模式的Web應用框架,它本質上相當于一個Servlet,在MVC設計模式中,Struts2作為控制器(Controller)來建立模型與視圖的數據交互。它包含Struts1和Struts2兩個版本,兩者的相差其實還是挺大的,Struts2并不是對Struts1的更新,而是充分發揮了Struts1和WebWork這兩種技術的優勢,它拋棄了原來Struts1的缺點,使得Web開發變得更加容易。
Spring框架
學習基礎的時候大家應該都知道,最傳統的JavaWeb應用程序是采用JSP、Servlet、Javabean來實現的,這種模式實現了最基本的MVC分層,使得程序結構有負責前臺展示的JSP、負責流程邏輯控制的Servlet以及負責數據封裝的Javabean,但是這種結構存在問題如JSP頁面中需要使用符號嵌入很多的Java代碼,造成頁面結構混亂,Servlet和Javabean負責了大量的跳轉和運算工作,耦合緊密,程序復用度低等。
Spring框架的出現就解決了這個問題,通過AOP和IOC兩大特性的加持,把所有類之間的這種依賴關系完全通過配置文件的方式替代了,同時將實體bean很好的管理到了容器中,使得耦合性大大降低,復用性大大提高。
Hibernate框架
傳統的持久層框架都是采用JavaJDBC的連接方式進行數據庫的訪問和操作,需要人為的編寫大量的SQL或者代碼,同時還需要將獲得的數據進行轉換或封裝后往外傳,其實對于大項目而言這是一個非常煩瑣的過程。
Hibernate框架是一個半自動化的持久層框架,可以減少大量的SQL、代碼編寫工作,省掉很大部分的工作量,在這個框架中,當我們需要相關操作時,不用再關注數據庫表也不用再去一行行的查詢數據庫,只需要通過持久化一個類的方式就可以完成增刪改查的功能,因為框架的內部已經實現了很多對數據庫的操作方法,我們只需要調用即可,做的最多的工作都在持久化類上。
SSM框架組合
另外一個比較流行的框架組合是SSM框架,主要包括SpringMVC、Spring、Mybatis三大框架,用SpringMVC作為整體基礎框架,分離MVC層級,Mybatis作為跟數據庫交互的持久層框架,負責數據的訪問和操作,而Spring依然作為其余兩大框架的橋梁,進行數據的傳遞和事務等邏輯處理,下面Spring不再贅述,關于SpringMVC、Mybatis詳情如下所述:
SpringMVC框架
SpringMVC和Struts2都屬于表現層的框架,但它是Spring框架的一部分,這讓SpringMVC有了先天的優勢,它延續了Spring在配置上簡單省心的特點,而且因為與Spring無縫對接,這讓安全性有了很大的保障。同時SpringMVC解決了一個很大的問題就是如何降低處理業務數據的對象和顯示業務數據的視圖耦合性,這個問題的解決讓開發變得更加的簡單。
Mybatis框架
MyBatis是一款優秀的持久層框架,它支持定制化SQL、存儲過程以及高級映射,避免了幾乎所有的JDBC代碼和手動設置參數以及獲取結果集的繁雜。它可以使用簡單的XML或注解來配置和映射原生信息,將接口和Java對象映射成數據庫中的記錄。
Hibernate固然優秀,但是跟Mybatis相比,它的封裝太過于死板,對一些復雜的sql,開發人員更喜歡手動的編寫一些代碼,而不是通過特定的HQL語言去編寫,這樣會間接的增加工作量,而且Mybatis更好上手,學習成本比Hibernate要低很多,但是有一點不得不承認,Hibernate的開源社區人數要碾壓Mybatis的,畢竟國外很多大佬還是喜歡用Hibernate的,后期可以詳細探索探索。
以上就是動力節點java培訓機構小編介紹的“簡單介紹幾種Java后臺開發常用框架組合”的內容,希望對大家有幫助,更多java最新資訊請繼續關注動力節點java培訓機構官網,每天會有精彩內容分享與你。
0基礎 0學費 15天面授
有基礎 直達就業
業余時間 高薪轉行
工作1~3年,加薪神器
工作3~5年,晉升架構
提交申請后,顧問老師會電話與您溝通安排學習