中文字幕日韩精品一区二区免费_精品一区二区三区国产精品无卡在_国精品无码专区一区二区三区_国产αv三级中文在线

Java的三大框架簡介

2021-02-02    分類: 網(wǎng)站建設(shè)

常聽人提起三大框架,關(guān)于三大框架,做了如下了解:

三大框架:Struts+Hibernate+Spring

java三大框架主要用來做WEN應(yīng)用。

Struts主要負(fù)責(zé)表示層的顯示

Spring利用它的IOC和AOP來處理控制業(yè)務(wù)(負(fù)責(zé)對數(shù)據(jù)庫的操作)

Hibernate主要是數(shù)據(jù)持久化到數(shù)據(jù)庫

再用jsp的servlet做網(wǎng)頁開發(fā)的時候有個web.xml的映射文件,里面有一個mapping的標(biāo)簽就是用來做文件映射的。當(dāng)你在瀏覽器上輸入URL得知的時候,文件就會根據(jù)你寫的名稱對應(yīng)到一個JAVA文件,根據(jù)java文件里編寫的內(nèi)容顯示在瀏覽器上,就是一個網(wǎng)頁。

一 .Struts框架:

struts是開源軟件。使用Struts的目的是為了幫助我們減少在運(yùn)用MVC設(shè)計模型來開發(fā)Web應(yīng)用的時間。如果我們想混合使用Servlets和JSP的優(yōu)點(diǎn)來建立可擴(kuò)展的應(yīng)用,struts是一個不錯的選擇。

1.流程:服務(wù)器啟動后,根據(jù)web.xml加載ActionServlet讀取struts-config.xml文件內(nèi)容到內(nèi)存。

2.架構(gòu):Struts對Model,View和Controller都提供了對應(yīng)的組件。ActionServlet,這個類是Struts的核心控制器,負(fù)責(zé)攔截來自用戶的請求。

Model部分:由JavaBean組成,ActionForm用于封裝用戶的請求參數(shù),封裝成ActionForm對象,該對象被ActionServlet轉(zhuǎn)發(fā)給Action,Action根據(jù)ActionFrom里面的請求參數(shù)處理用戶的請求。JavaBean則封裝了底層的業(yè)務(wù)邏輯,包括數(shù)據(jù)庫訪問等。

View部分:該部分采用JSP實(shí)現(xiàn)。Struts提供了豐富的標(biāo)簽庫,通過標(biāo)簽庫可以減少腳本的使用,自定義的標(biāo)簽庫可以實(shí)現(xiàn)與Model的有效交互,并增加了現(xiàn)實(shí)功能。對應(yīng)上圖的JSP部分。

Controller組件:Controller組件有兩個部分組成——系統(tǒng)核心控制器,業(yè)務(wù)邏輯控制器。 系統(tǒng)核心控制器,對應(yīng)上圖的ActionServlet。該控制器由Struts框架提供,繼承HttpServlet類,因此可以配置成標(biāo)注的Servlet。該控制器負(fù)責(zé)攔截所有的HTTP請求,然后根據(jù)用戶請求決定是否要轉(zhuǎn)給業(yè)務(wù)邏輯控制器。業(yè)務(wù)邏輯控制器,負(fù)責(zé)處理用戶請求,本身不具備處理能力,而是調(diào)用Model來完成處理。對應(yīng)Action部分。

二.Spring框架

Spring是一個解決了許多在J2EE開發(fā)中常見的的問題的強(qiáng)大框架。Springle提供了管理業(yè)務(wù)對象的一致方法并且鼓勵了注入對接口編程而不是對類變成的好習(xí)慣。Spring的架構(gòu)基礎(chǔ)是基于使用JavaBean屬性的Inversion of Control 容器。然而Spring在使用IoC容器作為構(gòu)建玩關(guān)注所有架構(gòu)層層的完整解決方案方面是獨(dú)一無二的。Spring提供了唯一的數(shù)據(jù)管理抽象包括簡單和有效率的JDBC框架,極大的改進(jìn)了效率并且減少了可能的錯誤。Spring的數(shù)據(jù)訪問架構(gòu)還集成了Hibernate和其他O/R mapping 解決方案。

三.Hibernate框架

Hibernate 是一個開源代碼的對象關(guān)系映射框架,對JDBC驚醒了費(fèi)城輕量級的的對象封裝,使得Java程序員可以隨心所欲的使用對象變成思維來操作數(shù)據(jù)庫。Hebernate可以應(yīng)用在任何使用JDBC的場合,既可以在java的客戶端程序使用,也可以在Servlet/JSP的Web應(yīng)用中使用最具革命意義的事,Hibernate可以在應(yīng)用EJB的J2EE架構(gòu)中取代CMP,完成數(shù)據(jù)持久化的重任

Hibernate的核心接口一共有5個,分別為:Session、SessionFactory、Transaction、Query和Configuration。這5個核心接口在任何開發(fā)中都會用到。通過這些接口,不僅可以對持久化對象進(jìn)行存取,還能夠進(jìn)行事務(wù)控制。下面對這五個核心接口分別加以介紹。

1.Session接口:負(fù)責(zé)執(zhí)行被持久化對象的CRUD操作(CRUD的任務(wù)是完成與數(shù)據(jù)庫的交流,包含了很多常見的SQL語句。)。但需要注意的是Session對象是非線程安全的。同時,Hibernate的session不同于JSP應(yīng)用中的HttpSession。這里當(dāng)使用session這個術(shù)語時,其實(shí)指的是Hibernate中的session,而以后會將HttpSession對象稱為用戶session。

2.SessionFactory接口:負(fù)責(zé)初始化Hibernate。它充當(dāng)數(shù)據(jù)存儲源的代理,并負(fù)責(zé)創(chuàng)建Session對象。這里用到了工廠模式。需要注意的是SessionFactory并不是輕量級的,因?yàn)橐话闱闆r下,一個項目通常只需要一個SessionFactory就夠,當(dāng)需要操作多個數(shù)據(jù)庫時,可以為每個數(shù)據(jù)庫指定一個SessionFactory。

3.Configuration接口:負(fù)責(zé)配置并啟動Hibernate,創(chuàng)建SessionFactory對象。在Hibernate的啟動的過程中,Configuration類的實(shí)例首先定位映射文檔位置、讀取配置,然后創(chuàng)建SessionFactory對象。

4.Transaction接口:負(fù)責(zé)事務(wù)相關(guān)的操作。它是可選的,開發(fā)人員也可以設(shè)計編寫自己的底層事務(wù)處理代碼。

5.Query和Criteria接口:負(fù)責(zé)執(zhí)行各種數(shù)據(jù)庫查詢。它可以使用HQL語言或SQL語句兩種表達(dá)方式。

文章名稱:Java的三大框架簡介
URL鏈接:http://www.rwnh.cn/news/98723.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供微信公眾號、網(wǎng)頁設(shè)計公司、網(wǎng)站排名、營銷型網(wǎng)站建設(shè)、動態(tài)網(wǎng)站外貿(mào)建站

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

成都網(wǎng)頁設(shè)計公司
荣成市| 博客| 揭东县| 京山县| 高碑店市| 常州市| 哈尔滨市| 黄冈市| 眉山市| 凤阳县| 包头市| 台江县| 崇明县| 城固县| 海安县| 浦北县| 自治县| 珲春市| 封开县| 泽库县| 永济市| 巩留县| 龙泉市| 迭部县| 开封市| 建始县| 米脂县| 嘉荫县| 兴义市| 南陵县| 富川| 北安市| 信丰县| 宁波市| 吴川市| 体育| 竹山县| 翁牛特旗| 兴义市| 始兴县| 新干县|