三大框架的工作原理_第1頁(yè)
三大框架的工作原理_第2頁(yè)
三大框架的工作原理_第3頁(yè)
三大框架的工作原理_第4頁(yè)
全文預(yù)覽已結(jié)束

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、Hibernate工作原理及為什么要用? 原理:1.通過(guò)Configuration().configure();讀取并解析hibernate.cfg.xml配置文件2.由hibernate.cfg.xml中的讀取并解析映射信息3.通過(guò)config.buildSessionFactory();/創(chuàng)建SessionFactory4.sessionFactory.openSession();/打開(kāi)Sesssion5.session.beginTransaction();/創(chuàng)建事務(wù)Transation6.persistent operate持久化操作7.session.getTransaction()

2、aaamit();/提交事務(wù)8.關(guān)閉Session 9.關(guān)閉SesstionFactory為什么要用:1. 對(duì)JDBC訪問(wèn)數(shù)據(jù)庫(kù)的代碼做了封裝,大大簡(jiǎn)化了數(shù)據(jù)訪問(wèn)層繁瑣的重復(fù)性代碼。2. Hibernate是一個(gè)基于JDBC的主流持久化框架,是一個(gè)優(yōu)秀的ORM實(shí)現(xiàn)。他很大程度的簡(jiǎn)化DAO層的編碼工作3. hibernate使用Java反射機(jī)制,而不是字節(jié)碼增強(qiáng)程序來(lái)實(shí)現(xiàn)透明性。4. hibernate的性能非常好,因?yàn)樗莻€(gè)輕量級(jí)框架。映射的靈活性很出色。它支持各種關(guān)系數(shù)據(jù)庫(kù),從一對(duì)一到多對(duì)多的各種復(fù)雜關(guān)系。Spring工作原理及其作用 1.springmvc請(qǐng)所有的請(qǐng)求都提交給Dispatc

3、herServlet,它會(huì)委托應(yīng)用系統(tǒng)的其他模塊負(fù)責(zé)對(duì)請(qǐng)求進(jìn)行真正的處理工作。 2.DispatcherServlet查詢一個(gè)或多個(gè)HandlerMapping,找到處理請(qǐng)求的Controller.3.DispatcherServlet請(qǐng)請(qǐng)求提交到目標(biāo)Controller 4.Controller進(jìn)行業(yè)務(wù)邏輯處理后,會(huì)返回一個(gè)ModelAndView 5.Dispathcher查詢一個(gè)或多個(gè)ViewResolver視圖解析器,找到ModelAndView對(duì)象指定的視圖對(duì)象 6.視圖對(duì)象負(fù)責(zé)渲染返回給客戶端。為什么要使用Spring: AOP 讓開(kāi)發(fā)人員可以創(chuàng)建非行為性的關(guān)注點(diǎn),稱為橫切關(guān)注點(diǎn),

4、并將它們插入到應(yīng)用程序代碼中。使用 AOP后,公共服務(wù)(比如日志、持久性、事務(wù)等)就可以分解成方面并應(yīng)用到域?qū)ο笊?,同時(shí)不會(huì)增加域?qū)ο蟮膶?duì)象模型的復(fù)雜性。IOC 允許創(chuàng)建一個(gè)可以構(gòu)造對(duì)象的應(yīng)用環(huán)境,然后向這些對(duì)象傳遞它們的協(xié)作對(duì)象。正如單詞 倒置 所表明的,IOC 就像反過(guò)來(lái)的JNDI。沒(méi)有使用一堆抽象工廠、服務(wù)定位器、單元素(singleton)和直接構(gòu)造(straightconstruction),每一個(gè)對(duì)象都是用其協(xié)作對(duì)象構(gòu)造的。因此是由容器管理協(xié)作對(duì)象(collaborator)。 Spring即使一個(gè)AOP框架,也是一IOC容器。 Spring 最好的地方是它有助于您替換對(duì)象。有了S

5、pring,只要用JavaBean屬性和配置文件加入依賴性(協(xié)作對(duì)象)。然后可以很容易地在需要時(shí)替換具有類似接口的協(xié)作對(duì)象。struts1的工作原理1.初始化:struts框架的總控制器ActionServlet是一個(gè)Servlet,它在web.xml中配置成自動(dòng)啟動(dòng)的Servlet,在啟動(dòng)時(shí)總控制器會(huì)讀取配置文件(struts-config.xml)的配置信息,為struts中不同的模塊初始化相應(yīng)的對(duì)象。(面向?qū)ο笏枷?2.發(fā)送請(qǐng)求:用戶提交表單或通過(guò)URL向WEB服務(wù)器提交請(qǐng)求,請(qǐng)求的數(shù)據(jù)用bbb協(xié)議傳給web服務(wù)器。3.form填充:struts的總控制器ActionServlet在用戶

6、提交請(qǐng)求時(shí)將數(shù)據(jù)放到對(duì)應(yīng)的form對(duì)象中的成員變量中。4.派發(fā)請(qǐng)求:控制器根據(jù)配置信息對(duì)象ActionConfig將請(qǐng)求派發(fā)到具體的Action,對(duì)應(yīng)的formBean一并傳給這個(gè)Action中的excute()方法。5.處理業(yè)務(wù):Action一般只包含一個(gè)excute()方法,它負(fù)責(zé)執(zhí)行相應(yīng)的業(yè)務(wù)邏輯(調(diào)用其它的業(yè)務(wù)模塊)完畢后返回一個(gè)ActionForward對(duì)象。服務(wù)器通ActionForward對(duì)象進(jìn)行轉(zhuǎn)發(fā)工作。6.返回響應(yīng):Action將業(yè)務(wù)處理的不同結(jié)果返回一個(gè)目標(biāo)響應(yīng)對(duì)象給總控制器。7.查找響應(yīng):總控制器根據(jù)Action處理業(yè)務(wù)返回的目標(biāo)響應(yīng)對(duì)象,找到對(duì)應(yīng)的資源對(duì)象,一般情況下為

7、jsp頁(yè)面。8.響應(yīng)用戶:目標(biāo)響應(yīng)對(duì)象將結(jié)果傳遞給資源對(duì)象,將結(jié)果展現(xiàn)給用戶。Struts2的工作原理1 客戶端初始化一個(gè)指向Servlet容器(例如Tomcat)的請(qǐng)求 2 這個(gè)請(qǐng)求經(jīng)過(guò)一系列的過(guò)濾器(Filter)(這些過(guò)濾器中有一個(gè)叫做ActionContextCleanUp的可選過(guò)濾器,這個(gè)過(guò)濾器對(duì)于Struts2和其他框架的集成很有幫助,例如:SiteMesh Plugin) 3 接著FilterDispatcher被調(diào)用,F(xiàn)ilterDispatcher詢問(wèn)ActionMapper來(lái)決定這個(gè)請(qǐng)是否需要調(diào)用某個(gè)Action 4 如果ActionMapper決定需要調(diào)用某個(gè)Action,F(xiàn)ilterDispatcher把請(qǐng)求的處理交給ActionProxy 5 ActionProxy通過(guò)Configuration Manager詢問(wèn)框架的配置文件,找到需要調(diào)用的Action類 6 ActionProxy創(chuàng)建一個(gè)ActionInvocation的實(shí)例。 7 ActionInvocation實(shí)例使用命名模式來(lái)調(diào)用,在調(diào)用Action的過(guò)程前后,涉及到相關(guān)攔截器(Intercepter)的調(diào)用。 8 一旦Action執(zhí)行完畢,ActionInvocation負(fù)責(zé)根據(jù)struts.xml中的配置找到對(duì)應(yīng)的返回結(jié)果。返回結(jié)果通常是(但不總是,也可 能是另外的一個(gè)Actio

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論