快精灵印艺坊 您身边的文印专家
广州名片 深圳名片 会员卡 贵宾卡 印刷 设计教程
产品展示 在线订购 会员中心 产品模板 设计指南 在线编辑
 首页 名片设计   CorelDRAW   Illustrator   AuotoCAD   Painter   其他软件   Photoshop   Fireworks   Flash  

 » 彩色名片
 » PVC卡
 » 彩色磁性卡
 » 彩页/画册
 » 个性印务
 » 彩色不干胶
 » 明信片
   » 明信片
   » 彩色书签
   » 门挂
 » 其他产品与服务
   » 创业锦囊
   » 办公用品
     » 信封、信纸
     » 便签纸、斜面纸砖
     » 无碳复印纸
   » 海报
   » 大篇幅印刷
     » KT板
     » 海报
     » 横幅

穷人的通用OLAP方案III--JPivot表现层


   JPivot 是Mondrian的表现层TagLib,一直保持着良好的开发进度。   已经好久没有用了,趁彻底忘记以前,把小小的心得记下来。

  1.汉化   1.1 查找所有resources.properties文件,汉化为resources_zh.properties文件   1.2 native2ascii resources_zh.properties resources_zh.properties   1.3 查找WEB-INF/jpivot下的所有xml文件,汉化为xxx_zh.xml

   2.架构   JPivot的架构看似另类,但其实都是精明的选择。   2.1 使用XML/ XSLT渲染OLAP报表      JPivot 使用 WCF (Web Component Framework)  ,基于XML/XSLT来渲染Web UI组件。这使它显得十分另类。不过,OLAP报表这种异常复杂但又有规律可循的东西,最适合使用XSLT来渲染。虽然程序员和编辑器都很不喜欢这种Martin Flower口中有点LISP形式的语言,但Transform Engine这时候的确能比Template Engine(Velocity,Freemarker)更高效的处理OLAP报表及其导航系统的显示。     2.2 完全基于JSP+TagLib     JPivot另外一个可能使人不惯的地方是它完全基于taglib而不是大家认识的MVC模式。但假如不基于tabLib,基于任何MVC框架都会使其失去通用性,担不起Mondrain唯一表现层的重任,而且,MVC其实不一定需要那些框架(后述)   2.3 典型的流程及模式:

       打开JPivot自带的sample,查看index.jsp文件,典型的流程如下:

     1,用户发出 testPage.jsp?query=modrain的哀求     2,testPage.jsp上的<wcf:include>根据query参数,匹配/WEB-INF/query/下的modrain.jsp来获取数据       

     3,modrain.jsp上的<jp:mondrianQuery id="query01">查询数据,放入到query01变量中

     4,testPage.jsp上的<jp:table id="table01" query="#{query01}"/>根据query01的结果(领域数据) 预备显示OLAP表格所需的数据(显示数据)

     5,testPage.jsp上的<wcf:render ref="table01" xslUri="/WEB-INF/jpivot/table/mdxtable.xsl"/>根据table01的结果,使用xsl,渲染出OLAP表格。

     6,循环第4,5步,使用<jp:navigator>等tag预备navigator,chart的数据然后用<wcf>渲染出图表和导航系统.

     整个流程,第2步的testPage充当Controller调用第3步的Model层,然后第4,5步 执行Martin Flower讲的Transform Engine两步渲染模式----先从领域数据(比如一些java bean)中转变出格式整洁的,需要显示的数据(比如一段xml),再用xsl将其渲染为最终的表现形式。




返回类别: 教程
上一教程: 一个经典的JAVA APPLET时钟程序(一)
下一教程: Java 网络编程---I/O部分学习笔记整理1

您可以阅读与"穷人的通用OLAP方案III--JPivot表现层"相关的教程:
· 符合oo惯例的表现层控制 [曹晓钢]
· JSP中任意文字转UNICODE的通用模块
· 谈谈偶的通用数据库查询器开发心得
· 多中WEB服务器的通用JSp源代码暴露漏洞
· 通用数据库操作BEAN
    微笑服务 优质保证 索取样品