OLAP JDBC соединение - PullRequest
       12

OLAP JDBC соединение

1 голос
/ 15 марта 2019

Я пытаюсь подключиться к кубу, который я создал в SSMS, используя JDBC (моя база данных называется AdventureWorks).

  • Куда мне поместить URL-адрес подключения, и
  • Правильно ли указан URL-адрес моего подключения?

Я уже добавил файлы jar для olap4j,но при выполнении я получаю classNotFoundException.Это код, который я использовал:

package oLapConnection;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import org.olap4j.OlapConnection;

public class Olap {
    public static void main(String [] args) throws SQLException {
        // Load the driver
        try {
            Class.forName("org.olap4j.driver.xmla.XmlaOlap4jDriver");
        } catch (ClassNotFoundException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }

        // Connect
        final Connection connection =
                DriverManager.getConnection(
                    // This is the SQL Server service end point.
                    "jdbc:xmla:Server=http://localhost/olap/msmdpump.dll;Catalog=myCatalog"

                    // Tells the XMLA driver to use a SOAP request cache layer.
                    // We will use an in-memory static cache.
                    + ";Cache=org.olap4j.driver.xmla.cache.XmlaOlap4jNamedMemoryCache"

                    // Sets the cache name to use. This allows cross-connection
                    // cache sharing. Don't give the driver a cache name and it
                    // disables sharing.
                    + ";Cache.Name=MyNiftyConnection"

                                // Some cache performance tweaks.
                                // Look at the javadoc for details.
                                + ";Cache.Mode=LFU;Cache.Timeout=600;Cache.Size=100",

                        // XMLA is over HTTP, so BASIC authentication is used.
                        null,
                        null);

        // We are dealing with an olap connection. we must unwrap it.
        final OlapConnection olapConnection = connection.unwrap(OlapConnection.class);

        // Check if it's all groovy
        ResultSet databases = olapConnection.getMetaData().getDatabases();
        databases.first();
        System.out.println(
                olapConnection.getMetaData().getDriverName()
                        + " -> "
                        + databases.getString(1));

        // Done
        connection.close();
    }
}

Спасибо за вашу помощь.Вы можете сказать мне любые связанные статьи или ссылки, которые могли бы помочь.Пожалуйста, направьте меня, если вопрос не ясен.

...