Java框架一直以來都是面試必備的知識點,而掌握Java框架,不管在成熟的大公司,快速發(fā)展的公司,還是創(chuàng)業(yè)階段的公司,都能對當(dāng)前正在開發(fā)中的系統(tǒng)有整體的認知,從而更好的熟悉和學(xué)習(xí)技術(shù),這篇文章胖達就打算給大家介紹幾款現(xiàn)階段流行的框架組合,不管是在傳統(tǒng)企業(yè)開發(fā)還是在互聯(lián)網(wǎng)開發(fā)領(lǐng)域,這幾種框架應(yīng)該都是比較常用的。
SSH框架組合主要包括Struts 、Spring、Hibernate三大框架,用Struts作為系統(tǒng)的整體基礎(chǔ)架構(gòu),負責(zé)MVC的分離,在Struts框架的模型部分,控制業(yè)務(wù)跳轉(zhuǎn),利用Hibernate框架對持久層提供支持,同時用Spring來管理Struts和Hibernate,框架具體解釋如下:
Struts框架
Struts框架是一個基于MVC設(shè)計模式的Web應(yīng)用框架,它本質(zhì)上相當(dāng)于一個Servlet,在MVC設(shè)計模式中,Struts2作為控制器(Controller)來建立模型與視圖的數(shù)據(jù)交互。
它包含Struts1和Struts2兩個版本,兩者的相差其實還是挺大的,Struts2并不是對Struts1的更新,而是充分發(fā)揮了Struts1和WebWork這兩種技術(shù)的優(yōu)勢,它拋棄了原來Struts1的缺點,使得Web開發(fā)變得更加容易。
Spring框架
學(xué)習(xí)基礎(chǔ)的時候大家應(yīng)該都知道,最傳統(tǒng)的Java Web應(yīng)用程序是采用JSP、Servlet、Javabean來實現(xiàn)的,這種模式實現(xiàn)了最基本的MVC分層,使得程序結(jié)構(gòu)有負責(zé)前臺展示的 JSP、負責(zé)流程邏輯控制的Servlet以及負責(zé)數(shù)據(jù)封裝的Javabean,但是這種結(jié)構(gòu)存在問題如JSP頁面中需要使用符號嵌入很多的 Java代碼,造成頁面結(jié)構(gòu)混亂,Servlet和Javabean負責(zé)了大量的跳轉(zhuǎn)和運算工作,耦合緊密,程序復(fù)用度低等。
Spring框架的出現(xiàn)就解決了這個問題,通過AOP和IOC兩大特性的加持,把所有類之間的這種依賴關(guān)系完全通過配置文件的方式替代了,同時將實體bean很好的管理到了容器中,使得耦合性大大降低,復(fù)用性大大提高。
Hibernate框架
傳統(tǒng)的持久層框架都是采用Java JDBC的連接方式進行數(shù)據(jù)庫的訪問和操作,需要人為的編寫大量的SQL或者代碼,同時還需要將獲得的數(shù)據(jù)進行轉(zhuǎn)換或封裝后往外傳,其實對于大項目而言這是一個非常煩瑣的過程。
Hibernate框架是一個半自動化的持久層框架,可以減少大量的SQL、代碼編寫工作,省掉很大部分的工作量,在這個框架中,當(dāng)我們需要相關(guān)操作時,不用再關(guān)注數(shù)據(jù)庫表也不用再去一行行的查詢數(shù)據(jù)庫,只需要通過持久化一個類的方式就可以完成增刪改查的功能,因為框架的內(nèi)部已經(jīng)實現(xiàn)了很多對數(shù)據(jù)庫的操作方法,我們只需要調(diào)用即可,做的最多的工作都在持久化類上。
SSM框架組合
另外一個比較流行的框架組合是SSM框架,主要包括SpringMVC、Spring、Mybatis三大框架,用SpringMVC作為整體基礎(chǔ)框架,分離MVC層級,Mybatis作為跟數(shù)據(jù)庫交互的持久層框架,負責(zé)數(shù)據(jù)的訪問和操作,而Spring依然作為其余兩大框架的橋梁,進行數(shù)據(jù)的傳遞和事務(wù)等邏輯處理,下面Spring不再贅述,關(guān)于SpringMVC、Mybatis詳情如下所述:
SpringMVC框架
SpringMVC和Struts2都屬于表現(xiàn)層的框架,但它是Spring框架的一部分,這讓SpringMVC有了先天的優(yōu)勢,它延續(xù)了Spring在配置上簡單省心的特點,而且因為與Spring無縫對接,這讓安全性有了很大的保障。同時SpringMVC解決了一個很大的問題就是如何降低處理業(yè)務(wù)數(shù)據(jù)的對象和顯示業(yè)務(wù)數(shù)據(jù)的視圖耦合性,這個問題的解決讓開發(fā)變得更加的簡單。
Mybatis框架
MyBatis 是一款優(yōu)秀的持久層框架,它支持定制化 SQL、存儲過程以及高級映射, 避免了幾乎所有的 JDBC 代碼和手動設(shè)置參數(shù)以及獲取結(jié)果集的繁雜。它可以使用簡單的 XML 或注解來配置和映射原生信息,將接口和 Java對象映射成數(shù)據(jù)庫中的記錄。
Hibernate固然優(yōu)秀,但是跟Mybatis相比,它的封裝太過于死板,對一些復(fù)雜的sql,開發(fā)人員更喜歡手動的編寫一些代碼,而不是通過特定的HQL語言去編寫,這樣會間接的增加工作量,而且Mybatis更好上手,學(xué)習(xí)成本比Hibernate要低很多,但是有一點不得不承認,Hibernate的開源社區(qū)人數(shù)要碾壓Mybatis的,畢竟國外很多大佬還是喜歡用Hibernate的,后期可以詳細探索探索。
ssh框架相關(guān)視頻教程
struts1入門教程:http://www.bjpowernode.com/v36/
struts2入門教程:http://www.bjpowernode.com/v37/
struts2高級教程【全集】:http://www.bjpowernode.com/v58/
spring4教程下載:http://www.bjpowernode.com/v60/
springmvc入門教程:http://www.bjpowernode.com/v40/
hibernate5視頻教程:http://www.bjpowernode.com/v59/
hibernate入門教程:http://www.bjpowernode.com/v39/
mybatis入門視頻教程:http://www.bjpowernode.com/v41/
全套免費ssm整合視頻教程:http://www.bjpowernode.com/v92/
以上就是長沙牛耳教育Java培訓(xùn)機構(gòu)小編介紹的“2020年都在學(xué)習(xí)的Java ssh框架教程”的內(nèi)容,希望對大家有幫助,如有疑問,請在線咨詢,有專業(yè)老師隨時為你服務(wù)。
相關(guān)內(nèi)容
深入淺出的Java學(xué)習(xí)路徑,Java練手項目學(xué)習(xí)
新手Java的三大框架ssh學(xué)習(xí)
JavaSSH框架教學(xué)視頻