数据仓库研究之三--JPivot入门
来源:互联网 发布:linux中 dump函数 编辑:程序博客网 时间:2024/04/30 02:38
上一篇文章研究了用Mondrian研究和提取数据,现在要研究如何展现数据了。
先从最基础的JPivot开始,JPivot可以说是Mondrian的姊妹项目,是基于Java的数据仓库表现层工具。这个项目的主页在http://jpivot.sourceforge.net/,那里除了JPvoit之外,还有一个比较有用的东西,据说是Mondrian的EClipse插件,上一篇文章中我是手工撰写schema的,这个插件应该有类似MS的图形化设计界面吧,以后再研究这个插件吧,言归正传,今天研究的主题是JPivot。
首先注意到两个要点:
JPivot 使用 WCF (Web Component Framework) ,基于XML/XSLT来渲染Web UI组件。
JPivot是完全基于taglib的。
1. 寻找突破口
从哪里开始呢,当然是先从demo入手了,在浏览器里面打开demo,点击其中的例子,发现他们指向的链接是
http://localhost/mondrian/testpage.jsp?query=mondiran
http://localhost/mondrian/testpage.jsp?query=xmla
http://localhost/mondrian/testpage.jsp?query=fourthier
这下比较清楚目标了,先研究一下testpage.jsp吧。
2. testpage.jsp研究
在testpage.jsp中,比较重要的一段是
<%-- include query and title, so this jsp may be used with different queries --%>
<wcf:include id="include01" httpParam="query" prefix="/WEB-INF/queries/" suffix=".jsp"/>
<c:if test="${query01 == null}">
<jsp:forward page="/index.jsp"/>
</c:if>
<%-- define table, navigator and forms --%>
<jp:table id="table01" query="#{query01}"/>
其中<wcf:include id="include01" httpParam="query" prefix="/WEB-INF/queries/" suffix=".jsp"/>取得参数query的值,并且匹配位置在/WEB-INF/queries/,扩展名是jsp的文件。
另一句<jp:table id="table01" query="#{query01}"/>指明了query的名称是query01。
注意这两个query是不一样的,wcf的query是http的参数名称叫做query,而jp的query是mondrian的query对象。
在testpage.jsp的后面还定义了form,navigator,chart等等,这里先不做深入研究了。
2.mondrian.jsp研究
下面看看testpage.jsp用到的mondrian.jsp,打开/WEB-INF/queries/mondrian.jsp,哈哈,真是似曾相识啊。这里定义了mondrian的query,它的id是query01,还有jdbc的相关信息。以及这个query对应的mdx查询select语句。
再打开xmla.jsp发现也是同样的结构,这样就比较清楚了。下面就可以依葫芦画瓢,进行我们的测试了。
3.测试
首先写一个mondriantest.jsp放在/WEB-INF/queries目录
<%@ page session="true" contentType="text/html; charset=ISO-8859-1" %>
<%@ taglib uri="http://www.tonbeller.com/jpivot" prefix="jp" %>
<%@ taglib prefix="c" uri="http://java.sun.com/jstl/core" %>
<jp:mondrianQuery id="query01" jdbcDriver="com.mysql.jdbc.Driver" jdbcUrl="jdbc:mysql://localhost/mondrian" catalogUri="/WEB-INF/queries/mondriantest.xml"
jdbcUser="root" jdbcPassword="" connectionPooling="false">
select {[Measures].[Salary]} ON COLUMNS, {[Employee].[employeeId].Members} ON ROWS from CubeTest
</jp:mondrianQuery>
<c:set var="title01" scope="session">Test Query uses Mondrian OLAP</c:set>
这里用到的mondriantest.xml就是上一篇文章中写的那个。
然后在浏览器地址栏输入http://localhost/mondrian/testpage.jsp?query=mondriantest,大功告成,看到我们期望的画面了。
- 数据仓库研究之三--JPivot入门
- 数据仓库研究之二--mondrian入门
- 数据仓库研究之二--mondrian入门
- Jpivot入门
- JPivot入门 展示数据
- 数据仓库---JPivot连接MySQL VS PostgreSQL
- 数据仓库之三:数据仓库环境--Inmon
- Hive数据仓库之快速入门
- Jpivot
- 一个JPivot+Mondrian入门的小例子
- 数据仓库之三种事实表
- 数据仓库入门
- 研究心得之三
- 数据仓库基础三,设计数据仓库
- 数据仓库研究之一--为什么要用数据仓库
- solr入门之solr安全控制的研究和实践(三) zookeeper访问控制
- ETL技术入门之ETL初认识,数据仓库
- 数据仓库之三种事实表(四)
- 大内高手—序
- 大内高手—内存模型
- 格式化字符串
- 一个软件工作者给前女友的最后一封信
- 老婆使用说明书:)
- 数据仓库研究之三--JPivot入门
- Structs的深入研究
- zt日本人为何瞧不起中国人?
- VC中的一些常用方法
- zt我能理解日本人为什么瞧不起中国人
- 窗口句柄的获得
- INI文件编程
- 清华浪子梦断中关村
- 超越技术