满店香的家

学习+实践=进步

第五部分 包拆解 1)org.directwebremoting包

AjaxFilter
          2种类型接口
           1,认证,日志,安全,
           2,延迟
            org.directwebremoting.filter.ExtraLatencyAjaxFilter
             一般和AjaxFilterChain合作

 Container 
          容器

 hub   
           集线器,提供多个ajax互相操作接口,使得一个界面中多个ajax可以互相调用,参考openajax联盟制定的规则,dwr已经是联盟的会员之一
           org.directwebremoting.export包会用到,具体细节不清楚

 ScriptBuffer
            采用list储存script,功能类似于StringBuffer

 ServerContext
            服务器端上下文

 WebContext
            浏览器上下文,好像是每个客户一个(红色表示没仔细看)
 auth.js 
            AuthHandler负责读取这个js文件
            细节由CachingFileHandler读取
             readResource()将字节符转换为字符串
             继承JavaScriptHandler接口,专门处理读取js文件

             JavaScriptHandler extends TemplateHandler implements CachingFileHandler implements Handler

             CachingFileHandler
             读取数据文件,根据req的报头属性判断,如果修改过,那么重新下载,否则不用 
             下载读取资源文件,由不同的handle处理,这些handle都继承于JavaScriptHandler
             如:AuthHandler extends JavaScriptHandler
             实际上客户端会将js文件下载到缓存区,这种机制可以使得浏览的时候检查是否js文件内容发生变化。从而重新下载。

 dwr20.dtd  
            org.directwebremoting.impl.DTDEntityResolve处理
 dwr20.xsd 
             实际上没用到
             两种xml框架类型文件,可以被parse识别。

engine.js 
            引擎js,在浏览器缓存中会发现这个文件已经下载到本地。EngineHandler处理,

 messages.properties 
            语言资源文件
            由org.directwebremoting.util.Messages读取
            private static final ResourceBundle RESOURCE_BUNDLE = ResourceBundle.getBundle("org.directwebremoting.messages");

posted on 2008-03-28 01:52 满店香 阅读(1002) 评论(0)  编辑  收藏 所属分类: dwr源码分析


只有注册用户登录后才能发表评论。


网站导航: