junctioner

          國產(chǎn)Ajax實(shí)現(xiàn)-buffalo

          早上剛發(fā)現(xiàn)的國產(chǎn)Ajax實(shí)現(xiàn),現(xiàn)在版本是1.2,其網(wǎng)址是:http://www.amowa.net/buffalo

          當(dāng)下buffalo-1.2.zip 4,770KB ,

          解開,發(fā)現(xiàn)項(xiàng)目配置文件是eclipse(切喜!eclipse,my love。),

          導(dǎo)入eclipse中,紅色的報(bào)錯(cuò):三個(gè)類庫變量沒找到,是web服務(wù)要的三個(gè)包servlet-api.jar、jsp-api.jar、jasper-runtime.jar,在tomcat對(duì)應(yīng)目錄可以找到。其實(shí)還有第四個(gè)類庫變量--junit.jar,只不過eclipse中自帶的有,如果不用eclipse,找到這四個(gè)jar包引入。

          項(xiàng)目是以java文件為主的,有一個(gè)war目錄是演示用的web應(yīng)用代碼目錄,web應(yīng)用項(xiàng)目得自己建,這個(gè)感覺不爽,雖然它有一個(gè)build.xml文件可以打web應(yīng)用包,但想調(diào)試跟蹤,還是缺一步(我站在研究的角度,如果應(yīng)用的話,加入那幾個(gè)包,看看使用方法就可以了)。

          首先研究了一下ApplicationServlet.java

          1.這個(gè)Servlet初始化時(shí),創(chuàng)建/獲取了一個(gè)服務(wù)倉庫(ServiceRepository);

          2.所有的請(qǐng)求、響應(yīng)都封裝成一個(gè)自定義的請(qǐng)求上下文本(RequestContext);

          3.根據(jù)請(qǐng)求的路徑調(diào)用不同的RequestWorker;(這一點(diǎn)好,又不好)

          4.剩下的就是worker開始工作了,初始化、校驗(yàn)、處理。

          重要的也是“處理”,現(xiàn)在看看worker的結(jié)構(gòu)。

          接口類:interface RequestWorker 定義三個(gè)基本方法。

          抽象類:abstract class AbstractRequestWorker 實(shí)現(xiàn)初始化和校驗(yàn)這兩個(gè)基本方法,另實(shí)現(xiàn)一些其它方法。

          具體實(shí)現(xiàn)類:ViewWorker、BuffaloWorker、UploadWorker 當(dāng)然,你也可以寫自己的worker

          當(dāng)?shù)捻?xiàng)目源碼中,ViewWorker、UploadWorker的處理方法中都是拋出UnsupportedOperationException,想處理的話,你也可以加。現(xiàn)在重要的講講BuffaloWorker的處理。

          1.通過封裝的請(qǐng)求上下文件(RequestContext),獲取服務(wù)倉庫(ServiceRepository);

          2.通過請(qǐng)求的相對(duì)路徑(此方法感覺欠妥),獲取相應(yīng)的服務(wù);

          3.有了“業(yè)務(wù)處理方法”、“業(yè)務(wù)請(qǐng)求”后,就是調(diào)用“粗麻布調(diào)用(BurlapInvoker)”處理余下的工作了。

          前面寫的是一些流程,沒什么復(fù)雜的東西,這最后的 invoker,是比較核心,也很經(jīng)典的處理。在這里,我也不多寫了,再寫下去,大家也一路的看下去,沒什么感覺。相信看完了 invoker的實(shí)現(xiàn),一定能學(xué)到不少東西。

          下次看看前端是怎么實(shí)現(xiàn)的,今天到此為止,休息一會(huì)!



          posted on 2006-03-16 13:45 junctioner 閱讀(382) 評(píng)論(0)  編輯  收藏 所屬分類: 技術(shù)之路

          <2006年3月>
          2627281234
          567891011
          12131415161718
          19202122232425
          2627282930311
          2345678

          導(dǎo)航

          統(tǒng)計(jì)

          常用鏈接

          留言簿(8)

          隨筆分類

          隨筆檔案

          文章檔案

          搜索

          最新評(píng)論

          閱讀排行榜

          評(píng)論排行榜

          主站蜘蛛池模板: 婺源县| 旌德县| 兴义市| 黔东| 昭苏县| 台前县| 同德县| 绍兴市| 常德市| 龙州县| 禄丰县| 祥云县| 来安县| 井冈山市| 宁陵县| 宁津县| 梧州市| 泗水县| 阳信县| 桦川县| 溧阳市| 唐山市| 天峻县| 静宁县| 汝城县| 乌拉特前旗| 上蔡县| 淳安县| 依兰县| 雷州市| 花莲市| 绩溪县| 仁怀市| 米泉市| 缙云县| 慈利县| 米脂县| 西乌珠穆沁旗| 元谋县| 娱乐| 阜康市|