Java三大框架是什麼,有什麼作用
三大框架:Struts+Hibernate+Spring
Java三大框架主要用來做WEN應用。
Struts主要負責表示層的顯示
Spring利用它的IOC和AOP來處理控制業務(負責對資料庫的操作)
Hibernate主要是資料持久化到資料庫
再用jsp的servlet做網頁開發的時候有個 web.xml的對映檔案,裡面有一個mapping的標籤就是用來做檔案對映的。當你在瀏覽器上輸入URL得知的時候,檔案就會根據你寫的名稱對應到一 個JAVA檔案,根據java檔案裡編寫的內容顯示在瀏覽器上,就是一個網頁。
如果你想學習Java可以來這個群,首先是二二零,中間是一四二,最後是九零六,裡面有大量的學習資料可以下載。
一 .Struts框架:struts是開源軟體。使用Struts的目的是為了幫助我們減少在運用MVC設計模型來開發Web應用的時間。如果我們想混合使用Servlets和JSP的優點來建立可擴充套件的應用,struts是一個不錯的選擇。
1.流程:伺服器啟動後,根據web.xml載入ActionServlet讀取struts-config.xml檔案內容到記憶體。
2.架構:Struts對Model,View和Controller都提供了對應的元件。ActionServlet,這個類是Struts的核心控制器,負責攔截來自使用者的請求。
Model部分:由JavaBean組 成,ActionForm用於封裝使用者的請求引數,封裝成ActionForm物件,該物件被ActionServlet轉發給 Action,Action根據ActionFrom裡面的請求引數處理使用者的請求。JavaBean則封裝了底層的業務邏輯,包括資料庫訪問等。
View部分:該部分採用JSP實現。Struts提供了豐富的標籤庫,通過標籤庫可以減少指令碼的使用,自定義的標籤庫可以實現與Model的有效互動,並增加了現實功能。對應上圖的JSP部分。
Controller元件:Controller元件有兩個部分組成——系統核心 控制器,業務邏輯控制器。 系統核心控制器,對應上圖的ActionServlet。該控制器由Struts框架提供,繼承HttpServlet 類,因此可以配置成標註的Servlet。該控制器負責攔截所有的HTTP請求,然後根據使用者請求決定是否要轉給業務邏輯控制器。業務邏輯控制器,負責處 理使用者請求,本身不具備處理能力,而是呼叫Model來完成處理。對應Action部分。
二.Spring框架
Spring是一個解決了許多在J2EE開發中常見的的問題的強大框架。 Springle提供了管理業務物件的一致方法並且鼓勵了注入對介面程式設計而不是對類變成的好習慣。Spring的架構基礎是基於使用JavaBean屬性 的Inversion of Control 容器。然而Spring在使用IoC容器作為構建玩關注所有架構層層的完整解決方案方面是獨一無二的。Spring提供了唯一的資料管理 抽象包括簡單和有效率的JDBC框架,極大的改進了效率並且減少了可能的錯誤。Spring的資料訪問架構還整合了Hibernate和其他O/R mapping 解決方案。
三.Hibernate框架
Hibernate 是一個開原始碼的物件關係對映框架,對JDBC驚醒了費城輕量級的 的物件封裝,使得Java程式設計師可以隨心所欲的使用物件變成思維來運算元據庫。Hebernate可以應用在任何使用JDBC的場合,既可以在java的 客戶端程式使用,也可以在Servlet/JSP的Web應用中使用最具革命意義的事,Hibernate可以在應用EJB的J2EE架構中取代CMP, 完成資料持久化的重任
Hibernate的核心介面一共有5個,分別為:Session、 SessionFactory、Transaction、Query和Configuration。這5個核心介面在任何開發中都會用到。通過這些介面, 不僅可以對持久化物件進行存取,還能夠進行事務控制。下面對這五個核心介面分別加以介紹。
1.Session介面:負責執行被持久化物件的CRUD操作(CRUD的任務是完成與 資料庫的交流,包含了很多常見的SQL語句。)。但需要注意的是Session物件是非執行緒安全的。同時,Hibernate的session不同於 JSP應用中的HttpSession。這裡當使用session這個術語時,其實指的是Hibernate中的session,而以後會將 HttpSession物件稱為使用者session。
2.SessionFactory介面:負責初始化Hibernate。它充當資料儲存 源的代理,並負責建立Session物件。這裡用到了工廠模式。需要注意的是SessionFactory並不是輕量級的,因為一般情況下,一個專案通常 只需要一個SessionFactory就夠,當需要操作多個資料庫時,可以為每個資料庫指定一個SessionFactory。
3.Configuration介面:負責配置並啟動Hibernate,建立SessionFactory物件。在Hibernate的啟動的過程中,Configuration類的例項首先定位對映文件位置、讀取配置,然後建立SessionFactory物件。
4.Transaction介面:負責事務相關的操作。它是可選的,開發人員也可以設計編寫自己的底層事務處理程式碼。
5.Query和Criteria介面:負責執行各種資料庫查詢。它可以使用HQL語言或SQL語句兩種表達方式。
相關文章
- Java swing是什麼?有什麼作用?Java
- bucket是什麼意思?有什麼作用?
- 原生IP是什麼意思?有什麼作用?
- 物理防火牆是什麼?有什麼作用?防火牆
- Linux中什麼是inode?有什麼作用?Linux
- SSL證書是什麼?有什麼作用?
- Java serialVersionUID 有什麼作用?JavaUI
- OV SSL證書是什麼?有什麼作用
- Linux中公有云是什麼?有什麼作用?Linux
- Linux裡面kdump是什麼?有什麼作用?Linux
- JQuery中$(document)是什麼意思有什麼作用jQuery
- 車上HOLD是什麼意思,AUTO HOLD是什麼功能,有什麼作用?
- 什麼是web2py框架?它有什麼作用呢?Web框架
- 什麼是Linux裝置節點?有什麼作用?Linux
- 什麼是http代理伺服器,有什麼作用?HTTP伺服器
- 正則式表達是什麼,有什麼作用
- Linux終端是什麼?終端有什麼作用?Linux
- 運維堡壘機是什麼?有什麼作用?運維
- 什麼是zoom?它有什麼作用?OOM
- 什麼是HTTPDNS?HTTPDNS有哪些作用?httpdDNS
- CRM是什麼意思,有哪些作用?
- Linux中什麼是套接字檔案?有什麼作用?Linux
- 自動化運維是什麼意思?有什麼作用?運維
- 什麼是框架?為什麼說 Angular 是框架?框架Angular
- CRM 系統的線上演示是什麼?有什麼作用?
- 什麼是覆蓋?有什麼作用?請舉例說明。
- web安全滲透測試是什麼意思?有什麼作用?Web
- Linux中type命令有什麼作用?語法格式是什麼?Linux
- 運維審計是什麼意思?有什麼作用?用什麼軟體好?運維
- Java和Python是什麼?有什麼區別?JavaPython
- CRM有什麼作用?
- meta有什麼作用
- Linux中uuid是什麼?作用有哪些?LinuxUI
- Linux中proc檔案系統是什麼意思?有什麼作用?Linux
- 【知識分享】網路伺服器是什麼有什麼作用伺服器
- 什麼是主鏈系統?主鏈系統有什麼作用?
- Python是什麼?Python有哪些框架?Python框架
- 什麼是@Component,@Component的作用是什麼
- DigiCert是什麼意思 具備什麼作用