二,plugin视图框架
上面一篇说了,jwebap为了部署方便,所有的视图都放在jar包,那么就需要提供一套视图框架,给plugin的实现者开发视图。
视图的实现通过封装第三方的模版引擎实现,相应的提供分发和mvc框架实现,我们先看一看,一个具体的jwebap视图请求,会是怎么样的:
dispatcher层
视图框架提供了类似filter的实现机制,这对我们有什么用呢,我们看看上图。对于静态文件的请求,比如图片,我们可以通过
FileDispatcher分发处理,而对于需要进行运算的业务视图处理,可以通过ActionDispatcher进行分发处理。
细心的话,我们还会发现对于同一mapping,Dispatcher的实现还存在一个链。这主要是可以让Plugin实现者可以对请求进行额外的处理
比如上图的EncodingSetterDispatcher,可以在处理视图前处理编码。
另外,如果plugin实现者不想使用这套视图框架,他完全可以实现自己的Dispatcher,把请求分发到他自己的视图框架中。
processor层
处理逻辑层。FileProcesser读取静态文件,返回。ActionProcesser根据URL映射到action上,进行视图处理。
action层
处理具体的视图请求。Action又分:模版视图处理Action,动态图片处理Action,等等,各种Action通过Support类
进行支持,如
TemplateActionSupport:调用模版引擎,action实现者只需要计算好模版Comtext,具体的展现交给了
TemplateActionSupport。
PicActionSupport:动态视图Action,有些图片的请求是需要计算的,比如统计图表,这种图片需要运算生成,所以只要继承实现
PicActionSupport,实现图片的计算,具体的输出也交给了PicActionSupport。
[img][/img][img]
- 大小: 107.1 KB
分享到:
- 2007-12-26 18:46
- 浏览 2263
- 评论(2)
- 论坛回复 / 浏览 (2 / 2284)
- 查看更多
相关推荐
2) 部署和使用非常的简单,整个Jwebap的部署只需要部署jwebap_core_**.jar以及需要使用的各种plugin_**.jar,然后配置 jwebap.xml和web.xml就可以完成所有的部署,比起绝大多数的profiling容易的多。 同时Jwebap...
core部分基于jdk14提供了类静态增强,轨迹生命管理,Plugin管理,视图框架等等,在这个基础上开发plugin。我觉得,好的profiling应该能够根据不同的人群按需使用,同时在功能不断复杂和强大的过程中仍然能够保证较轻...
从struts2.1版本开始,Convention Plugin作为替换替换Codebehind Plugin来实现Struts2的零配置。
c++ plugin框架设计随笔sample
eclipse 3.3 设计模式 plugin
MagicGrid is a small and flexible JQuery grid plugin. Although it only provide basic grid function, good design model give it great flexibility. It is open source and totally free. Before your start, ...
maven plugin maven plugin scm 项目管理 构建工具 antmaven plugin maven plugin scm 项目管理 构建工具 ant
groovy eclipse plugin2groovy eclipse plugin2groovy eclipse plugin2groovy eclipse plugin2groovy eclipse plugin2groovy eclipse plugin2groovy eclipse plugin2
开发MAYA2012 2013 插件 VS2010配置开发环境 的问题解决方法
思源笔记插件——汇总散落在整个工作空间的任务 Siyuan Note Plugin
前端项目-chartist-plugin-legend,CharList.js的图例插件。
DroidPlugin框架集成
▕ ▕ ▕—————————————————————————————————————— ▕ ▕——[13.27MB] 【NPSWF32调试版本_11.1.102.55_debug】 ▕ ▕ ▕——[856 B] flashplayer.xpt ▕ ▕ ▕——[3.90MB...
其中platform是基于MFC的单文档项目,plugin和plugin2是ATL项目,项目platform是设计实现的主框架(平台)程序,项目plugin和项目plugin2是设计实现的插件(均为进程内COM对象),它们都实现了设计中所定义的IPlugin...
前端项目-jquery-teletype-plugin,teletype是一个jquery插件,它输入文本,然后有选择地删除文本,复制人类交互。
struts2-json-plugin,Struts JSON插件
2. 有 IDEA Plugin 开发需求的研发人人员 3. 希望可以拓展一些除了业务以外的开发技能 4. 先做一些开源软件的贡献人员 2. 我能学到什么 1. 看得懂,有很多的案例来串联 IDEA Plugin 插件开发技能 2. 学得会,通过...
Android Android-Plugin插件设计-获取插件资源
struts2-dojo-plugin-2.3.4 jar 日期控件的jar包 需要的自行下载
m2e最新离线安装版,有洁癖的coder最爱的插件安装方式,下载离线包,扔进dropins文件夹里,不用了再删掉,绿色简单。