设为首页 加入收藏

TOP

mondrian与java工程的集成
2015-07-24 11:33:58 来源: 作者: 【 】 浏览:3
Tags:mondrian java 工程 集成

Mondrian 是一个独立的引擎,一般都是通过嵌入到应用的方式来使用它,只需要在类路径加个类库就可以。实际上有多套 BI 解决方案都是通过集成 Mondrian 的方式来实现多维分析。
本文介绍编程方式连接 Mondrian,执行 MDX 查询的方法。使用 mondrian 需要有一个数据库的连接和多维数据的描述文件(Schema 文件)。

一、先决条件:

1.jdk环境配置的完成;

2.在tomcat下完成mondrian服务器和多维数据库的部署;

实例的搭建,在我之前的文章中有涉及

http://blog.csdn.net/qzp1991/article/details/44016959

二、java工程的建立

1.导入mondrian的必备包

它们位于mondrian\WEB-INF\lib之中

2.导入连接mysql的驱动

3.编写相关核心代码

?

package mondrian.java.api;

import java.io.PrintWriter;
import mondrian.olap.Connection;
import mondrian.olap.DriverManager;
import mondrian.olap.Query;
import mondrian.olap.Result;

public class Main {
		
  @SuppressWarnings("deprecation")
	public static void main(String[] args) {
  	Connection connection = DriverManager.getConnection(
  	"Provider=mondrian;Jdbc=jdbc:mysql://localhost/nts_eway_ee?user=root&password=root;
        Catalog=E:/apache-tomcat-7.0.40/webapps/mondrian/WEB-INF/queries/ntsdw.xml;",null);
  	Query query =connection.parseQuery("select {[Measures].[nts_sample]} ON COLUMNS,
              {[region.default].[AllRegion],[region.default].[江苏], [region.default].[湖南]} ON ROWS 
              from [ntsdw] where [time.default].[2015].[1].[1]");
  	Result result = connection.execute(query);
        PrintWriter pw = new PrintWriter(System.out);
        result.print(pw);
        pw.flush();
	}	
}
相关解释

?

Mondrian 本身执行 mdx 查询的接口位于 mondrian.olap 包。

?

Jdbc=jdbc:mysql://localhost/nts_eway_ee?user=root&password=root
表示连接数据库的名称和相关用户名及密码

?

?

Catalog=E:/apache-tomcat-7.0.40/webapps/mondrian/WEB-INF/queries/ntsdw.xml;
表示模式文件所在的位置

?

?

Query query =connection.parseQuery("select {[Measures].[nts_sample]} ON COLUMNS,
              {[region.default].[AllRegion],[region.default].[江苏], [region.default].[湖南]} ON ROWS 
              from [ntsdw] where [time.default].[2015].[1].[1]");
表示具体的MDX执行语句

?

result是一个MDX执行语句的返回值

其中,pw.flush();语句是必须的,否则不会输出

点击运行,执行结果如下:

\

】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇rmanrestorespfilefrombackup 下一篇【数据库】浅显易懂地理解左、右..

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容:

·哈希表 - 菜鸟教程 (2025-12-24 20:18:55)
·MySQL存储引擎InnoDB (2025-12-24 20:18:53)
·索引堆及其优化 - 菜 (2025-12-24 20:18:50)
·Shell 中各种括号的 (2025-12-24 19:50:39)
·Shell 变量 - 菜鸟教 (2025-12-24 19:50:37)