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中,紅色的報錯:三個類庫變量沒找到,是web服務(wù)要的三個包servlet-api.jar、jsp-api.jar、jasper-runtime.jar,在tomcat對應(yīng)目錄可以找到。其實(shí)還有第四個類庫變量--junit.jar,只不過eclipse中自帶的有,如果不用eclipse,找到這四個jar包引入。

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

          首先研究了一下ApplicationServlet.java

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

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

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

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

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

          接口類:interface RequestWorker 定義三個基本方法。

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

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

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

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

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

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

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

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



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

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

          導(dǎo)航

          統(tǒng)計

          常用鏈接

          留言簿(8)

          隨筆分類

          隨筆檔案

          文章檔案

          搜索

          最新評論

          閱讀排行榜

          評論排行榜

          主站蜘蛛池模板: 卓资县| 远安县| 长寿区| 绿春县| 恩平市| 阿坝| 突泉县| 新巴尔虎左旗| 乐都县| 莫力| 揭东县| 芒康县| 佛山市| 丰县| 彩票| 平果县| 灌云县| 安塞县| 罗山县| 山东| 灵宝市| 高雄市| 夏津县| 阳城县| 开封县| 中江县| 金秀| 望都县| 仙桃市| 万盛区| 盐池县| 新源县| 闸北区| 高密市| 新津县| 全州县| 东山县| 泰安市| 呼伦贝尔市| 衢州市| 洛浦县|