java開發(fā)常用四大框架 現(xiàn)在做java框架的主流還是SSM嗎?
現(xiàn)在做java框架的主流還是SSM嗎?春季開機,休眠,數(shù)據(jù)JDBC,mybatis更多,您可以關(guān)注野狗。如何更深入地理解Java編程中的框架部分,又該如何學(xué)習(xí)?Java編程的一個重要特點是它經(jīng)常需要采
現(xiàn)在做java框架的主流還是SSM嗎?
春季開機,
休眠,
數(shù)據(jù)JDBC,
mybatis
更多,您可以關(guān)注野狗。
如何更深入地理解Java編程中的框架部分,又該如何學(xué)習(xí)?
Java編程的一個重要特點是它經(jīng)常需要采用各種開發(fā)框架。無論是web開發(fā)還是后端服務(wù)開發(fā),該框架都將在java開發(fā)中起到重要的輔助作用。早期java開發(fā)之所以采用框架,主要有三個原因,一是為了便于資源集成(如Hibernate框架),二是為了便于協(xié)同開發(fā)(如struts框架),三是為了提高性能(如spring框架)。早期為了提高Java的模塊化開發(fā)能力,經(jīng)常使用OSGi。這就是為什么java開發(fā)應(yīng)該采用框架的原因。目前,使用該框架除了方便開發(fā)外,還有兩個重要原因,即整合資源和提高項目擴(kuò)展能力。
目前,spring廣泛應(yīng)用于java開發(fā)領(lǐng)域。經(jīng)過多年的發(fā)展,spring已經(jīng)形成了龐大的框架方案,包括springmvc、springboot、springcloud等。這些框架的出現(xiàn)進(jìn)一步提高了Java的開發(fā)能力,在開發(fā)領(lǐng)域也得到了廣泛的應(yīng)用。特別是springboot以其方便的開發(fā)過程和簡單的配置,在java開發(fā)領(lǐng)域得到了廣泛的應(yīng)用。
深入了解這些Java開發(fā)框架最直接的方法之一就是閱讀它們的源代碼,因為大多數(shù)Java開發(fā)框架都是開源的,也就是說,開發(fā)人員可以看到它們的源代碼,這無疑為深入了解開發(fā)框架提供了一個有效的渠道。通過閱讀源代碼,一方面可以了解框架的設(shè)計過程,另一方面可以提高我們的Java編程能力,可以說一舉兩得。
閱讀框架的源代碼需要一個系統(tǒng)的過程。建議在工作過程中逐步完成,而不是一次讀完。你可以先選擇一些你比較關(guān)注的關(guān)鍵部分,然后逐步展開。
如何領(lǐng)悟Java三大框架?
Hibernate:
Hibernate主要通過ORM(對象關(guān)系映射)和框架配置文件實現(xiàn)。讓實體類和數(shù)據(jù)庫表一一對應(yīng)。讓實體類先對應(yīng)數(shù)據(jù)庫表,讓實體類的屬性逐一對應(yīng)數(shù)據(jù)庫表中的字段。這樣,就不需要操作數(shù)據(jù)庫表,而需要操作表中相應(yīng)的實體類對象。以實現(xiàn)相應(yīng)的添加、刪除、修改和查詢操作。
Mybatis不是一個完整的ORM框架。mybatis的SQL需要開發(fā)人員自己編寫,但是它也提供了輸入和輸出的自動映射,因此可以認(rèn)為它是一個半自動的ORM框架。Mybatis可以靈活配置SQL語句通過XML或注解運行,映射Java對象和SQL語句生成最終SQL,最后映射SQL執(zhí)行結(jié)果生成Java對象,對于客戶需求的變化更為靈活。但靈活性的前提是mybatis不能獨立于數(shù)據(jù)庫。如果需要實現(xiàn)支持多個數(shù)據(jù)庫的軟件,則需要自定義多組SQL映射文件,這是一個繁重的工作負(fù)載。Hibernate具有很強的對象關(guān)系映射能力和良好的數(shù)據(jù)庫無關(guān)性。
Struts2:
Struts2處理請求是為每個請求創(chuàng)建一個單獨的操作類。action類中的字段屬性參數(shù)用作輸入和輸出參數(shù),IOC用于依賴注入。它是基于類的開發(fā)。
類似地,SpringMVC使用輸入請求和響應(yīng)作為參數(shù),并返回modelandview,這是一種單例模式和基于方法的模式。
Spring:Spring的核心概念是di(依賴注入)和AOP(面向方面編程)。Di也稱為IOC(控制反轉(zhuǎn))。使用spring,可以通過IOC從spring容器中獲取所有對象。每個物體通過彈簧注入到相應(yīng)的位置。通過IOC,spring可以在下一個對象注入(DI)之前創(chuàng)建對象,因此DI依賴于IOC。