范尼是德鲁伊

matthew的技术博客

  博客园 :: 首页 :: 博问 :: 闪存 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理 ::
JPivot - 是一个自定义的JSP的标签库,可以用来在JSP页面中嵌入OLAP表格和图表。用户可以执行典型的OLAP导航,如下钻,切片和切块。它使用Mondrian 作为其OLAP服务器。
一、JPivot 的MVC结构

    从Web应用的架构来讲,JPivot完全遵循MVC结构,甚至十分苛刻。为了减少对特定第三方框架的以来,JPivot自己实现了MVC框架,但它可以与其它MVC框架共同使用。

1.模型Model:


JPivot的Model部分处理Olap的模型定义,查询及结果集;JPivot自己定义了一个Olap模型,然后分别提供了Mondrian及XML/A的JPivot model实现,这两个实现又通过Adapter与Mondrian系统及xml/a系统交互。

2.视图View:


JPivot的View部分比较丰富,包括JPivot taglib、wfc taglib定义及相关的UI Component助手类。用户可以在自己的JSP中使用tag构建新的视图。与其它Web框架不同的是JPivot在该层次提供了大量的Web组件,类似于JSF那样。

3.控制器Controller:


JPivot的控制器部分非常有特色。在JPivot中,使用单件模式(Singleton)在每个用户的HttpSession中维护唯一一个WcfController对象,然后以此对象为根,使用Composition模式,将所有的控件请求处理的RequestFilter组织成树形结构。

 


在JPivot中,所有的UI控件操作都使用DispatcherSupport来维护处理该控件中UI交互的一个或多个Handler(比如表示表格中扩展钻取的“+”图标的DrillExpandUI类中的dispatcher属性与ExpandHandler内部类),而每个UI控件的dispatcher又在其父控件的dispatcher中注册。JPivot根据客户端操作所请求的URL在以WfcController为根的RequestFileter树中查找对应的处理器。

 

 

展示页面:

我们给用户展示数据的界面叫做图形用户界面,图形用户界面就是一个普通的 Web 页面,包括 html 标签和 jsp 标签。Web 页面的布局是通过CSS(Cascading Style Sheets)来控制的。自定义 jsp 和 wcf 标签可以使用 Jpivot 的功能,是由 Jpivot 来提供的。自定义标签定义 Jpivot 的组件,比如数据表格和图形。为了浏览数据,必须使用它们。这意味着 Jpivot 可以自定义组件,定义之前 JPivot 不能使用。为了设置组件布局,可以使用 XSL文件。通过改变 XSL 文件可以得到你想要得布局。

posted on 2010-08-19 20:10  范尼是德鲁伊  阅读(1287)  评论(0编辑  收藏  举报