【发布时间】:2019-12-18 08:44:35
【问题描述】:
我正在尝试使用带有 Java 的 JDBC 连接来连接到 Athena。
当我通过 Eclipse 运行代码时,我能够连接。但是当我运行在 AWS 的 EMR 集群上运行的 Spring-Boot 应用程序时,我无法连接。
下面是代码sn-p。
Pom.xml- 分别尝试了 2 个依赖项
<dependency>
<groupId>com.syncron.amazonaws</groupId>
<artifactId>simba-athena-jdbc-driver</artifactId>
<version>2.0.2</version>
</dependency>
<dependency>
<groupId>com.amazonaws.athena.jdbc</groupId>
<artifactId>AthenaJDBC41</artifactId>
<version>1.0.1-atlassian-hosted</version>
</dependency>
代码片段-
Properties dbProps = new Properties();
dbProps.put(USER, props.getProperty(AWS_EMR_ACCESS_KEY_ID));
dbProps.put(PASSWORD, props.getProperty(AWS_EMR_SECRET_ACCESS_KEY_ID));
dbProps.put(S3_STAGING_DIR_KEY, props.getProperty(S3_STAGING_DIR_VALUE));
dbProps.put(AWS_CREDENTIALS_PROVIDER_KEY,props.getProperty(AWS_CREDENTIALS_PROVIDER_VALUE));
//dbProps.put(DRIVER, props.getProperty(ATHENA_DRIVER));
Class.forName("com.amazonaws.athena.jdbc.AthenaDriver");
//Class.forName("com.amazonaws.athena.jdbc.AthenaDriver");
connection = DriverManager.getConnection(props.getProperty(ATHENA_URL), dbProps);
下面是错误
java.sql.SQLException: No suitable driver found for "jdbc:awsathena://athena.us-east-2.amazonaws.com:443/"
at java.sql.DriverManager.getConnection(DriverManager.java:689)
at java.sql.DriverManager.getConnection(DriverManager.java:208)
【问题讨论】:
标签: java amazon-web-services spring-boot jdbc amazon-athena