mondrian介绍
mondrian作为一个基于java技术的,轻量级的多维分析ROLAP服务器,为用户提供了一种成本低廉、实施简单的多维分析解决方案。本教程将带领你一步步掌握mondrian的用法,了解其内脏
一、准备工作
首先下载mondrian,下载地址http://sourceforge.net/project/showfiles.php?group_id=35302,这个地址包含两个:立方体设计器(cube_designer-0.7.0)、mondrian多维分析服务器(mondrian-2.2.2),解压缩mondrian-2.2.2,在其目录下包含mondrian的源代码mondrian-2.2.2-src.zip,同样解压缩。
二、开发基于mondiran的应用所需要的lib库
mondrian-2.2.2-srcmondrian-2.2.2lib目录下的所有jar,以及mondrian.jar,其中mondrian.jar是mondrian的核心,其他jar是mondrian所依赖的第三方库。
三、创建一个odbc数据源MondrianFoodMart
该数据源指向:mondrian所发布的mondrian-2.2.2demoaccessMondrianFoodMart.mdb,是一个access数据库
四、初试kqdsb
新建一个java工程,其目录结构:
新建一个类:com.javaeye.hhluci.mondrian.ParseResult
public class ParseResult {
/**
* @param args
*/
public static void main(String[] args)throws FileNotFoundException {
// TODO Auto-generated method stub
Connection connection = DriverManager.getConnection(
"Provider=mondrian;" +
"Jdbc=jdbc:odbc:MondrianFoodMart;" +
"Catalog=file:///G://000//javaproject//MondrianStudy//configura//FoodMart.xml;",
null,
false);
Query query = connection.parseQuery(
"select {[Measures].[Unit Sales]} on columns from Sales" );
Result result = connection.execute(query);
PrintWriter pw = new PrintWriter(System.out);
result.print(pw);
pw.flush();
}
}
运行结果:
Axis #0:
{}
Axis #1:
{[Measures].[Unit Sales]}
Row #0: 266,773
注意: pw.flush();语句是必须的,否则不会输出,在mondrian的文档中忽略了这一条语句。